Una solución rápida contra la inundación de correos que sufre el servidor como consecuencia del ataque del último virus W32/Mydoom.A@mm, puede pasar por este sencillo script escrito en Perl, que comprueba aquellos correos que incluyen un archivo adjunto de los siguientes tipos:
- zip
- src
- pif
- exe
- cmd
o bien contiene las frases:
- Returned mail
- Failed to deliver
- unknown host
También se podría examinar el asunto del correo. Eliminándolo en caso de que fuera alguno de estos:
- test
- hi
- hello
- Mail Delivery System
- Mail Transaction Failed
- Server Report
- Status
- Error
Hay que estar seguro de que ninguna de las personas de las que normalmente recibimos correos, nos envíe archivos adjuntos con una extensión ‘zip’, ya que en este caso será borrado.
El script sería el siguiente:
#!/usr/bin/perl use Mail::POP3Client; $pop = new Mail::POP3Client( USER => '', PASSWORD => '', HOST => '', PORT => 110, DEBUG => 0 ); for( $i = $pop->Count(); $i > 0; $i-- ) { $j = 0; foreach( $pop->Body( $i ) ) { if ($j eq $i) {last;} if ($_ =~ m/name="[^\.]*.zip"| Returned mail:| Failed to deliver| unknown host| name="[^\.]*.pif"| name="[^\.]*.scr"| name="[^\.]*.bat"| name="[^\.]*.exe"| name="[^\.]*.cmd"/i) { @cabecera = $pop->Head( $i ); @cabecera[0] =~ m/^(From):\s+/i; print @cabecera[0] . ' --> '; print 'Posible Correo infectado ' . $i . " -- Borrado
\n"; $pop->Delete( $i ); $j = $i; } } } $pop->Close();
En cualquier caso, la mejor solución pasa por la instalación de un antivirus en propio servidor además de un programa antispam como por ejemplo, SpamAssassin.