Tienda Wifi

Tienda Wifi
CiudadWireless es la tienda Wifi recomendada por elhacker.NET

Buscador

Entradas Mensuales

Suscripción

¿Quieres recibir las últimas novedades del blog en tu correo?

¡Suscríbete al feed!

Foro de elhacker.net - Noticias

elhacker.NET en Facebook

Entradas populares

PostHeaderIcon De Windows XP a Windows 10 vulnerables cambiando un sólo bit




El investigador israelí Udi Yavo ( ‎Co-Founder & CTO de la empresa enSilo), explicó cómo mediante la modificación de un sólo bit, existía una vulnerabilidad de escalada de privilegios local (CVE-2015-0057) que permitia conceder a los atacantes control total de la máquina desde un Windows XP hasta Windows 10 Preview. La vulnerabilidad fué arreglada por Microsoft este martes, el día en que Microsoft saca los parches de actualización, el segundo martes de cada mes.




CVE: CVE-2015-0057
Remote: No
Local: Yes 

Udi Yavi, experto en ingeniería inversa, tiene más de 15 años de experiencia en seguridad cibernética con un historial probado en la dirección de proyectos de I + D.Udi encabezó la dirección de la unidad de seguridad cibernética en el Centro Nacional de Investigación y simulación de Guerra Electrónica del Sistema de Defensa Rafael y fue su director de tecnología.



Por ejemplo, estos son sólo algunos de los mecanismos de protección del núcleo que están presentes en Windows 8.1: Kernel DEP - De este modo se asegura que la mayoría de las regiones de datos del núcleo no se puedan ejecutar:


Divulgación responsable: Aunque la entrada del adivsory del blog es técnica, no se ha revelado ningún código, o los detalles completos, para evitar cualquiera pudiera reproducir el exploit.

Esta vulnerabilidad de escalada de privilegios (CVE-2015-0057) está presente en el módulo Win32k.sys, que es el componente GUI de Microsoft Windows Kernel. Entre otras cosas, el módulo se encarga de las barras de desplazamiento tanto horizontales como verticales (scrollbars) de Windows.

El fallo (bug) reside realmente en la función xxxEnableWndSBArrows que podría alterar el estado de ambas barras de desplazamiento a través de una llamada.


  • wnd - Un puntero a la ventana correspondiente 
  • wSBflags - El tipo de barra de desplazamiento (por ejemplo, horizontales o verticales) 
  • wArrows - Especifica si las flechas de la barra de desplazamiento están activados o desactivados e indica que las flechas están activados o desactivados.
Nuestro examen mostró que el puntero tagSBINFO se utiliza sin ninguna verificación después de la devolución de llamada. En última instancia, esto podría conducir a un uso - Use-After-Free (UAF) vulnerabilidad ya que la función puede seguir trabajando con la información de la barra de desplazamiento liberada:



Después de la devolución de llamada, los xxxEnableWndSBArrows función continúa y cambia el estado de la barra de desplazamiento vertical.

En esta etapa, la función intenta activar o desactivar las banderas. Sin embargo, dado que la estructura ya está liberado, podemos usar esto para cualquiera OR bit a bit el primer DWORD del búfer liberado con 0xC (si desactivamos las flechas) o borrar el bit 3 y 4 (si tenemos habilitadas las flechas) 



Para simplificar, nos muestran cómo manipular 2 bits con el fin de "gobernarlos a todos". Sin embargo, la manipulación de sólo uno de ellos sería suficiente.

La manipulación poco al principio no parecía suficiente para dar lugar a algo significativo, pero decidieron seguir intentándolo. Las cosas más obvias para tratar de aumentar el tamaño del buffer (usando el operador OR) o disminuir algunos contador de referencia (con el operador AND).

Después de una breve búsqueda encontraron un objeto que se reunió con el primer requisito. Este objeto es la lista de propiedades de una ventana. 

Los investigadores de la empresa de seguridad lograron crear un exploit para todas las versiones de Windows y encontraron que las versiones de escritorio de Windows 10 preview se ven también afectadas por la vulnerabilidad.

En el advisory Udi Yavo proporciona un análisis técnico detalle de la vulnerabilidad y demostró que incluso un pequeño error puede ser utilizado por un atacante remoto para obtener el control completo sobre cualquier sistema operativo Windows.

Después de un duro trabajo consiguieron rear un exploit confiable para todos las versiones de Windows -  partir de Windows XP hasta Windows 10  (Con SMEP y protecciones activadas).

Se ha demostrado que incluso un pequeño error puede ser utilizado para obtener el control completo sobre cualquier sistema operativo Windows.

Sin embargo, creen que los esfuerzos de Microsoft para hacer que el sistema operativo más seguro ha elevado el listón significativamente y ha hecho que escribir exploits  funcionales sea mucho más difícil que antes.

Por desgracia, estas medidas no van a mantener a raya a los atacantes.

Win32k Elevation of Privilege Vulnerability - CVE-2015-0057


An elevation of privilege vulnerability exists in the Windows kernel-mode driver (Win32k.sys) that is caused when it improperly handles objects in memory. An attacker who successfully exploited this vulnerability could gain elevated privileges and read arbitrary amounts of kernel memory. An attacker could then install programs; view, change, or delete data; or create new accounts with full administrative rights.
To exploit the vulnerability, an attacker would first have to log on to the system. An attacker could then run a specially crafted application designed to elevate privileges. The update addresses the vulnerability by correcting how the kernel-mode driver handles objects in memory.
Microsoft received information about this vulnerability through coordinated vulnerability disclosure. When this security bulletin was originally issued Microsoft had not received any information to indicate that this vulnerability had been publicly used to attack customers. 

Curisoidad divertida


Udi Yavo también encontró una antigua pieza de código en las llamadas dentro del componente barra de desplazamiento horizontal de la función xxxEnableWndSBArrows a la función xxxWindowEvent, y lo "divertido" de todo fue que que se trata de un código muerto.

Este código dijo había existido "por cerca de 15 años sin hacer absolutamente nada".

Dead-code


Mirando el código, hay dos llamadas condicionales a la función, xxxWindowEvent. Estas llamadas se ejecutan sólo si las viejas flags de la barra de desplazamiento de información difieren de las de las nuevas flags.

Sin embargo, por el momento en que aparecen estas condiciones, los valores de las viejas flags y las nuevas flags son siempre iguales.

Por lo tanto, la condición para llamar xxxWindowEvent nunca se cumple. Esto significa prácticamente que este código muerto estaba allí por cerca de 15 años sin hacer absolutamente nada. 

La vulnerabilidad ya ha sido parcheada por Microsoft el martes.




Fuente:
http://breakingmalware.com/vulnerabilities/one-bit-rule-bypassing-windows-10-protections-using-single-bit/

Video Demostración 



Udi Yavo ha incluido un vídeo de prueba de concepto (PoC,.  proof-of-concept:), que en realidad no revela ningún código sensible, pero muestra la explotación escalada de privilegios en una máquina con Windows de 64 bits 10 Technical Preview.

Puedes ver el vídeo a continuación:



0 comentarios :

Publicar un comentario

Los comentarios pueden ser revisados en cualquier momento por los moderadores.

Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.

Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.