Microsoft dió a conocer a través de un aviso de seguridad que hay una nueva vulnerabilidad en Windows llamada “precarga de DLL” o “siembra binaria” (binary planting), la cual impacta a cientos (literalmente) de aplicaciones tanto de terceros como las mismas aplicaciones de Microsoft. ¿Porqué es noticia esto? bueno, primero que nada porque es una vulnerabilidad que pudiera llegar a ser bastante seria; en segunda, es importante porque por la naturaleza misma de la vulnerabilidad Microsoft no puede ofrecer un parche. Es por eso que debes de entender como funciona. El funcionamiento de la “siembra binaria” es en concepto sencillo; cuando una aplicación carga una DLL sin especificar una trayectoria completa, Windows intenta cargar esa librería buscando en un conjunto definido de directorios, uno de ellos uno que se conoce como “directorio actual de la aplicación“; si esta carpeta está en control de un atacante, entonces la aplicación ejecutará el código de dicho atacante.

Otra cosa que debes de saber es que esta vulnerabilidad ya se está explotando con éxito (desgraciadamente), pues ya se conocen exploits para FireFox, uTorrent y Microsoft PowerPoint, y aunque todavía no hay datos exactos y aclaro, no se trata de ser alarmistas, hay distintas versiones respecto a la severidad del problema; los analistas parecen coincidir con que Microsoft está haciendo menos el problema, pero por otro lado una empresa de seguridad dijo que podían establecer con seguridad que todos los usuarios de Windows podían ser atacados mediante esta vulnerabilidad.

¿Qué se puede hacer al respecto?

Como mencioné antes, Microsoft no puede reparar el problema completamente, porque al parecer nadie quiere decir que este problema viene ligado a malas prácticas de los autores del software, es decir, es parte culpa de los fabricantes de las aplicaciones. Sin embargo, Microsoft desarrolló una herramienta que le puede ayudar a los administradores de TI a controla el comportamiento de Windows para con la carga de las librerías y mitigar (recalco, mitigar) el problema; esta herramienta permite controlar dos valores que permiten modificar el comportamiento de la carga de librerías a través de todo el sistema o bien por aplicación. No es una solución perfecta, pero es lo poco que hay por ahora para tratar de mitigar el problema. Otras dos cosas que puedes hacer al respecto es deshabilitar el servicio Cliente Web desde el administrador de servicios, y limitar el protocolo SMB al perímetro de la red.

Pero…

Este comportamiento viene desde hace muchos años atrás, y según tengo entendido se ha mantenido por no romper la compatibilidad hacia atrás con aplicaciones de legado. Mientras esto se mantenga, y los desarrolladores no corrijan sus aplicaciones, el problema será una espina en el costado para Microsoft; y la misma Microsoft ha dicho que está dispuesta a romper dicha compatibilidad hacia atrás si el problema es demasiado grave. Tristemente, esto se corrige con una sola línea de código, pero la realidad es que la gran mayoría de los programadores son un atado de flojos y desidiosos.

Fuentes: Ars Technica, Network World