22 febrero 2008

Uso de antivirus como vector de entrada

Las casas de antivirus prometen con sus productos la panacea a los riesgos para la seguridad de nuestros sistemas. Sin embargo, los antivirus, al igual que cualquier obra humana, pueden padecer de errores que sirvan de vectores de ataque para alguien con los suficientes conocimientos para ello.

Sirva de ejemplo el siguiente correo, enviado a la lista de incidentes de security-focus el pasado 13 de Febrero. El correo, traducido al español es el siguiente:

El 4 de Febrero mandé un correo preguntando una serie de cosas acerca de una posible intrusión en un servidor de correo. Recibí algunas muy buenas aportaciones y bastante ayuda, algunas de esas aportaciones llevaron finalmente al descubrimiento de lo que había pasado realmente.
(...)
Aquí viene lo que descubrimos tras correlar los distintos logs, eventos, capturas y flujos de datos. Los datos que salían del servidor eran correos pero no eran el tipo de correo usual de dicho servidor. Se trataban de gigabytes de mensajes. No hemos podido revisarlos todos, pero podemos suponer que la mayor parte de los que capturamos eran fraudulentos. ¿Cómo puede haber pasado esto usando QMail como MX y Exchange como servidor de correo corporativo?.

Durante el análisis del log de eventos vimos muchas entradas que indicaban que el escáner del antivirus se había reiniciado multitud de veces a lo largo de las horas previas a la inundación de correos salientes desde nuestro servidor. Aunque puedan decir que esto no es anormal, que ocurre de vez en cuando, lo cierto es que nos condujo a la idea de pasarle el antivirus a los buzones con el resultado de que al hacerlo volvía a producirse la inundación de salida. ¿Qué era lo que iniciaba el proceso?. El escáner del antivirus. De hecho repetimos el escaneo varias veces y siempre comenzaba a hacer cosas raras al analizar un fichero concreto. Lo que habíamos descubierto era un exploit contra el escáner del antivirus que se ejecuta cuando el escáner intenta analizar el adjunto de un correo en particular... desde luego no esperábamos algo así.
(...)
Lo que también me preocupa es que en su momento permitimos que el antivirus pudiera tener acceso a Internet para actualizarse, abriendo así una vía de salida para los datos. De todos modos tampoco estoy seguro de que un servidor interno de actualizaciones hubiera mejorado la seguridad al respecto ya que al fin y al cabo los servidores de correo deben tener permitida la salida para el intercambio de correos... como mucho el uso de un servidor de actualizaciones habría permitido dificultar un poco la salida a Internet del atacante.
(...)
Lógicamente, este tipo de incidentes se ven omitidos por la publicidad de las casas desarrolladoras de antivirus pero resulta imprescindible tenerlos presentes a la hora de realizar una correcta valoración de riesgos. En general, ningún producto antivírico está exento de fallos, aunque unos sufren más que otros:

Para los que quieran profundizar en este tema aquí van un enlace con documentación relacionada: