Nota: los detalles técnicos sobre este problema de seguridad están en este segundo post.
El sistema operativo de Microsoft no goza de una buena fama en lo que a seguridad se refiere. Ha sufrido decenas de problemas de seguridad muy graves que han provocado en el pasado y actualmente, perdidas millonarias a empresas y organizaciones.
Hoy en día, cualquier usuario de internet, sabe que Windows, es inseguro. Sin embargo, esto a veces es mas cierto, y otras veces menos, dependiendo de los descubrimientos que se hacen, y de las jugadas por parte de Microsoft para paliar estos problemas.
Sin embargo, el mes de agosto está siendo un mes negro para la seguridad en Windows, aunque mucha gente no lo sabe. Todo empezó realmente hace 10 años, cuando el célebre Georgi Guninsky descubrió un agujero de seguridad en Windows NT, XP, 2000, 95 y 98:
http://www.securityfocus.com/bid/1699/discuss
Este agujero de seguridad, consistía en que cuando se accede a un fichero de datos (por ejemplo, un .doc) que está en un directorio cualquier del sistema, Windows intenta cargar los ficheros dll que necesita para ejecutar esa aplicación desde la ubicación en la que está el fichero, antes de intentarlos cargas desde los directorios normales del sistema.
Esto significa que si ponías un fichero .doc al lado de un fichero .dll concreto, al abrir el .doc con Office, el sistema cargaba y ejecutaba el fichero dll, como consecuencia.
De esta forma, era posible ejecutar código solo con que el usuario abriese un .doc, un jpeg, un png, un gif o prácticamente cualquier cosa.
Sin embargo, por aquel entonces, aun no estaba claro el alcance de este agujero, y pasó como una entrada mas en la lista de seguridad bugtraq.
Y no fue hasta el 18 de agosto de este año, que la firma de seguridad Acros, envió un aviso a la lista de seguridad bugtraq diciendo que había encontrado un agujero de seguridad en iTunes, que realmente, consistía en hacer lo exactamente descrito por Guninsky (mas o menos) 10 años atrás.
Como consecuencia de este aviso, HD Moore, el 23 de agosto pública una entrada en Rapid7 en la que explica que el ya conocía este problema, que había intentado que se solucionase rápidamente, y que estaba en contacto con Microsoft, donde le habían dicho que ellos también conocían el problema.
Prácticamente el mismo día HD Moore escribe en el blog de metasploit framework, una explicación de como funciona este bug, y además proporciona lo que el llama DllHijackAuditKit, un conjunto de scripts diseñado para testear automáticamente si una aplicación de windows es vulnerable a este error.
Como consecuencia de esto, aparecen en securityfocus los próximos días (incluido hoy), una inmensa cantidad de avisos de software vulnerable a este problema, entre los que se encuentran Photoshop, Office, Firefox, y un largo etc.
La forma de explotarlo es sencilla: un pen drive, una unidad remota, etc. Cualquier directorio en el que podamos poner una dll oculta y un fichero, que sea abierto por un programa vulnerable al hacer doble click en el, es vulnerable.
Sin duda, es increíble que 10 años después, esto siga funcionando (con variaciones técnicas) y que provoque una oleada inmensa de problemas de seguridad en decenas de software usados por millones de personas, provocando una situación de inseguridad, muy elevada.
siempre lo he dicho, Windows nunca ha sido seguro, Microsoft es una exlecente casa comercial de venta, pero no de calidad de software
Esto me recuerda a cierto bug en linux que te permitía cambiando el path, ejecutar un archivo .so que quisieramos. Ningun sistema operativo es seguro por si mismo.