Han públicado un nuevo 0 day en Windows que permite a un usuario local obtener privilegios de SYSTEM eludiendo cualquier control de usuario.
Los detalles técnicos se hicieron públicos, así como el código fuente y el programa necesarios para aprovechar la falla. El exploit se aprovecha de la forma en la que el controlador win32k.sys procesa algunos valores del registro. En concreto, el exploit manipula el valor SystemDefaultUEDCFont del registro y activa el soporte para EUDC (End-User-Defined-Characters) a través de la función EnableEUDC.
Esto significa que el atacante debe crear una clave en el registro donde un usuario que no es administrador tiene privilegios para hacerlo. Luego intenta leerla, provoca la falla en el driver y obtiene los privilegios. La prueba de concepto utiliza esta clave:
HKEY_USERS\[SID DEL USUARIO]\EUDC
La prueba de concepto funciona perfectamente en Windows Vista, 7 y 2008 totalmente parcheados. Tanto si el usuario pertenece al grupo de usuarios como al de administradores se pondrán privilegios sin ningún tipo de advertencia por parte de Windows y por supuesto, sin necesidad de conocer la contraseña.
En XP la prueba de concepto no funciona pero es posible que la vulnerabilidad también le afecte. La prueba de concepto no es detectada por ningún motor en estos momentos:
http://www.virustotal.com/file-scan/report.html?id=59260532fe33547420613b0aa7b001aed3f565201e50f91558a16cf7465775f6-1290672402
Para que esta falla sea aprovechada por un atacante o malware, primero se debe acceder al sistema por cualquier otro medio y encontrarse con que no puede realizar los cambios que desea a causa de los permisos. Realmente, este no suele ser un impedimento para el malware masivo. Sí que es posible que esta falla sea usada en ataques dirigidos, donde los usuarios de escritorio suelen tener privilegios limitados en el dominio.
Ya son dos problemas de elevación de privilegios que Microsoft debe arreglar. La falla anterior fue descubierta en el cuerpo del famoso troyano Stuxnet. A través del programador de tareas, el malware era capaz de elevar privilegios en el equipo infectado. Hace algunos días los detalles de esta vulnerabilidad también se hicieron públicos.
El equipo de seguridad de Microsoft ha declarado en su twitter que está investigando el asunto. Un método para prevenir el problema hasta que exista parche oficial es limitar los permisos del usuario en la rama
HKEY_USERS\[SID DEL USUARIO]\EUDC
En el registro se debe negar el permiso de escritura a los usuarios que no son administradores. Gráficamente, es sencillo localizar el SID del usuario, botón derecho sobre la rama del registro y denegar.
Para automatizar el proceso, se aconseja (aunque puede tener efectos secundarios, hágalo bajo su responsabilidad) utilizar subinacl.exe, una herramienta oficial de Microsoft descargable desde:
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=e8ba3e56-d8fe-4a91-93cf-ed6985e3927b
Una vez instalada, localizar el SID del usuario que normalmente termina en 1000 y el nombre de máquina y usuario con el comando:
whoami /user:
INFORMACIÓN DE USUARIO
----------------------
Nombre de usuario SID
==============================================
ordenador\usuario S-1-5-21-123456789-12345677889-123445678990-1000
y ejecutar:
subinacl.exe /subkeyreg "HKEY_USERS\
S-1-5-21-123456789-12345677889-123445678990-1000\EUDC /deny=
ordenador\usuario=w
Esto evitará que el usuario pueda escribir en esa rama y por tanto la prueba de concepto no funcionará.
Si quieren más información pueden visitar: http://www.hispasec.com/unaaldia/4415
No hay comentarios:
Publicar un comentario