Investigadores de seguridad de Vectra Threat Labs han descubierto recientemente una vulnerabilidad crítica que afecta a todas las versiones de Microsoft Windows, desde Windows 95. La vulnerabilidad permite a un atacante ejecutar código a nivel de sistema, ya sea a través de una red local o de Internet. La vulnerabilidad permite a un atacante ejecutar código a nivel de sistema a través de una red local o de Internet. Como resultado, los atacantes podrían utilizar esta vulnerabilidad tanto para infectar a un usuario final desde Internet como para propagarse a través de la red interna.

Vectra y Microsoft colaboraron durante la investigación de este problema, y Microsoft ha proporcionado una solución como parte del Boletín de seguridad MS16-087, que está disponible aquí.
Las vulnerabilidades, CVE-2016-3238 (MS16-087), yCVE-2016-3239, tienen su origen en la forma en que los usuarios se conectan a las impresoras en la oficina y a través de Internet. Esta vulnerabilidad podría permitir a un atacante relativamente poco sofisticado incorporar dispositivos IoT como parte de un ataque e infiltrarse y propagarse rápidamente por una red sin ser detectado. Aunque este blog ofrece una visión general de la vulnerabilidad, puede leer el análisis técnico en profundidad aquí. Además, hay disponible un vídeo resumen de la vulnerabilidad aquí.
La vulnerabilidad en cuestión se centra en la forma en que los usuarios de red encuentran y utilizan las impresoras en una red. Huelga decir que las organizaciones modernas suelen tener muchos usuarios y, del mismo modo, muchas marcas y modelos diferentes de impresoras. Los usuarios esperan conectarse y utilizar la impresora que les resulte más cómoda y, del mismo modo, los usuarios móviles esperan poder acudir a la oficina e imprimir.
Para atender a estos usuarios, las organizaciones necesitan una forma de entregar los controladores de impresora necesarios a los usuarios que los necesitan. En lugar de distribuir todos los controladores posibles a todos los usuarios, muchas redes utilizan el método Microsoft Web Point-and-Print (MS-WPRN), que permite al usuario conectarse a cualquier impresora de la red y hacer que la impresora o el servidor de impresión proporcione el controlador adecuado cuando se solicite. Para que esto sea lo más fácil y fluido posible, estos controladores suelen entregarse sin advertencias ni activación de los controles de cuentas de usuario (UAC).
El problema es que estos controladores son controladores a nivel de sistema y están alojados en impresoras, que a su vez no suelen estar bien protegidas. Así que si lo juntamos todo, tenemos un dispositivo poco seguro que habla con casi todos los dispositivos de usuario final de Windows, y en el que se confía para entregar un controlador a nivel de sistema sin comprobaciones ni advertencias. Si el vello de tu nuca no está empezando a erizarse, debería.
Un atacante local en la red podría sustituir fácilmente el controlador válido por un archivo malicioso. Cuando un nuevo usuario intenta conectarse a la impresora, el archivo malicioso se entrega y se ejecuta con permisos a nivel de sistema, entregando efectivamente el control de la máquina al atacante. Este proceso podría repetirse indefinidamente, infectando a cada nuevo usuario que visite el abrevadero de la impresora.
Entonces, ¿cómo conseguiría un atacante introducir el archivo malicioso en cuestión en la impresora? Pues tendría múltiples opciones. Las impresoras suelen tener muchos servicios habilitados y no suelen estar parcheadas meticulosamente, por lo que encontrar una vulnerabilidad que explotar es razonablemente fácil para un atacante hábil. Sin embargo, un enfoque aún más fácil sería simplemente probar con credenciales de inicio de sesión predeterminadas como admin/admin, lo que podría permitir al atacante iniciar sesión en la impresora directamente. Alternativamente, un atacante podría crear una impresora falsa para anunciarla en la red.
Hasta ahora, puede que te sientas relativamente seguro porque todo esto supone que el atacante ya está en tu red. Sin embargo, el mismo mecanismo funciona a través de Internet utilizando el Protocolo de Impresión de Internet de Microsoft y web PointNPrint. Esto abre la puerta a que las infecciones se transmitan por Internet a través de vectores web normales, como sitios web o anuncios comprometidos. Un fragmento de javascript en un anuncio podría desencadenar fácilmente una solicitud a una "impresora" remota que entregaría el controlador malicioso a la víctima. Utilizando estos dos métodos, un atacante podría infectar a un usuario desde el exterior y luego utilizar su recién adquirida posición interna para propagarse lateralmente dentro de la red.
Desde el 12 de julio de 2016, Microsoft ha proporcionado un parche para esta vulnerabilidad como parte del Boletín de Seguridad MS16-087 y es muy recomendable que las organizaciones apliquen el parche lo antes posible. También es un ejemplo del importante papel que desempeñan los dispositivos IoT en la postura de seguridad de la red. Estos dispositivos pueden ser difíciles de parchear, difíciles de supervisar y pueden convertirse rápidamente en un punto ciego persistente para las operaciones de seguridad. Esta es una buena razón para supervisar todo el tráfico interno, independientemente del tipo de dispositivo.