viernes, 15 de febrero de 2008

Nueva vulnerabilidad en el kernel de Linux

13/02/2008 Elevación de privilegios en el kernel vs. ejecución de código en Adobe Reader: Reacción de los Antivirus

Durante el fin de semana se ha dado a conocer una nueva vulnerabilidad en el kernel de Linux que permite a los usuarios conseguir privilegios de root. El problema es que también se ha hecho público, al mismo tiempo, un exploit que permite aprovechar la vulnerabilidad de forma sencilla. Lo mismo ha ocurrido con un fallo en Adobe Reader, pues durante el fin de semana se ha detectado que una vulnerabilidad estaba siendo aprovechada de forma masiva. Como simple experimento curioso, hemos comparado la reacción de los AV ante estas dos nuevas amenazas.

¿Cómo han reaccionado las casas antivirus ante este par de vulnerabilidades?
Pertenecen a mundos distintos, una permite elevación de privilegios en el kernel (a través de una llamada a vmsplice) y otra ejecución de código en Windows con los privilegios del usuario que ejecute Adobe Reader. Una la sufren los kernel de Linux y otra los usuarios de Adobe en Windows, y los antivirus han reflejado esta disparidad en su capacidad y velocidad de reacción.
Durante el fin de semana, nada más ser descubierta, ningún antivirus detectaba los archivos PDF que intentasen aprovechar la vulnerabilidad en Adobe para ejecutar código. No fue hasta el lunes a primera hora que apenas seis casas antivirus comenzaron a detectar la muestra analizada. Hoy son ya 14 los antivirus que reconocen el archivo PDF como una amenaza. Y es cuestión de tiempo que todos lo reconozcan por igual, pues el impacto mediático del problema está siendo importante.
www.virustotal.com/analisis/85630b830a06246ba16d19d342c4bb0c

El impacto mediático de la elevación de privilegios en el kernel también está siendo notable. Son decenas de distribuciones afectadas y al existir exploit disponible público, conseguir privilegios de root en un kernel vulnerable se convierte en un juego de niños. Hemos compilado el exploit y enviado el ejecutable ELF a VirusTotal para comprobar que (como esperábamos) ni un solo motor lo detecta. Ni durante el fin de semana ni días después de que la noticia saltara en todos los medios.

Se puede considerar normal que los antivirus tomen una amenaza para Linux como un "mal menor" teniendo en cuenta que no todos poseen soluciones adaptadas a escritorio para a este sistema operativo. Pero dadas ciertas circunstancias, sí que tendría sentido que los motores detectaran una amenaza así, incluyendo la firma en su base de datos. Por ejemplo en soluciones perimetrales, o para análisis en frío de discos duros con alguna distribución instalada... son situaciones donde podría resultar útil la detección (aparte de las puramente marketoides).

Por otro lado, para conocer comportamientos anteriores ante amenazas específicas para Linux, hemos enviado a VirusTotal una muestra compilada de un exploit que igualmente permitía elevar privilegios, pero en este caso mucho más antiguo. En concreto, conocido y público desde julio de 2006. El resultado es que nada menos que 12 casas antivirus lo detectan, que no es poco (incluso es un ratio mayor que algunas muestras actuales de malware para Windows).
www.virustotal.com/analisis/0802cf8b3e30d7ea7efc69cf44752b2c

Cabe pensar que tarde o temprano, al igual que ha ocurrido con este exploit de hace casi dos años, detectarán el nuevo exploit para el kernel, pero desde luego la reacción es mucho mas pausada comparada con la de cualquier amenaza para Windows. Quizás dentro de meses sea reconocida, pero ni de lejos es prioridad. Por supuesto, y dadas las circunstancias de saturación de muestras, la prioridad para las casas antivirus es proteger a los usuarios Windows... y no es poco trabajo.

¿Qué se está vendiendo como antivirus para Linux?
Los antivirus para Linux comparten en general la misma base de datos de firmas que sus versiones Windows. Es decir, detectan el mismo tipo de malware. Y los laboratorios antivirus están especializados en la detección de malware para Windows, que es donde se libra la gran batalla y donde, lógicamente, está el negocio.
La utilidad de un antivirus para Linux es muy cuestionable bajo esas premisas, a no ser que la máquina forme parte de un esquema de red o proporcione servicios a sistemas Windows. Por ejemplo, un servidor de correo, de archivos, etc. En estos casos el antivirus para Linux se convierte en una especie de filtro perimetral de las máquinas Windows que se conectan a él, al poder evitar que el código malicioso pase a través del servidor, pero no en una solución para esta plataforma en sí.

La realidad es que como antivirus para la propia plataforma Linux, las versiones actuales no están optimizadas. No tanto por el motor, sino porque las empresas antivirus no invierten en recursos especializados en identificar las amenazas para esta plataforma. Si bien no tienen nada que ver con la acaparadora e inmensa problemática del malware en Windows, también existen sus códigos maliciosos como cualquier otra.


No hay comentarios: