Airstrike Attack: Bypass de BitLocker y escalamiento de privilegios local (CVE-2021-28316)
De forma predeterminada, las estaciones de trabajo Windows unidas al dominio permiten el acceso a cambiar la red WiFidesde la pantalla de bloqueo. La investigación de Matthew Johnson (@breakfix) de The Missing Link Security describe la vulnerabilidad Airstrike Attack, identificada como CVE-2021-28316, que permite a atacantes con acceso físico a Windows 10 forzar autenticaciones WiFi contra un punto de acceso y capturar los hashes de respuestas MSCHAPv2 para la cuenta de dominio.
Un atacante con acceso físico a un dispositivo bloqueado y con capacidades WiFi puede abusar de esta funcionalidad para obligar a la computadora portátil a autenticarse contra un punto de acceso no autorizado y capturar un hash de respuesta de desafío MSCHAPv2. Este hash se puede enviar a crack.sh para recuperar el hash NTLM de la cuenta de la computadora en menos de 24 horas.
Una vez recuperado, este hash NTLM combinado con el SID del dominio se puede
utilizar para falsificar
Kerberos Silver Tickets
para hacerse pasar por un usuario privilegiado y comprometer al host. Un
ejemplo de esto es crear un ticket para el servicio CIFS de la computadora
portátil con el fin de autenticarse a través de SMB como usuario del SYSTEM y
obtener acceso sin restricciones al disco duro.
Como el ataque se
puede realizar desde un dispositivo bloqueado, se puede utilizar para omitir
el cifrado de disco completo de BitLocker y obtener acceso al sistema de
archivos del dispositivo (Full Disk Encryption - FDE).
Además, como se pueden falsificar tickets plateados para usuarios privilegiados y se puede aprovechar para elevar los privilegios a los del administrador local en el dispositivo.
La vulnerabilidad se confirmó que está presente en hosts de Windows 10 unidos al dominio pero versiones anteriores de Windows también pueden verse afectadas, aunque no se han probado.
Background Técnico
Quienes estén familiarizados con las redes inalámbricas empresariales probablemente estarán familiarizados con el Protocolo de autenticación extensible protegido (PEAP). PEAP es un protocolo de autenticación de túnel, lo que significa que primero se establece un túnel SSL con el servidor RADIUS (conocido como Fase 1) para proteger las credenciales enviadas durante la autenticación (Fase 2).
Uno de los métodos de autenticación interna más comunes utilizados en entornos Windows es MSCHAPv2. El protocolo MSCHAPv2 ha existido durante mucho tiempo y tiene algunas fallas criptográficas graves, como lo demostraron Moxie Marlinspike y David Hulton en una charla DEFCON.
En entornos Windows, cuando un usuario de dominio se autentica en un punto de acceso inalámbrico usando PEAP con MSCHAPv2, el hash de respuesta al desafío resultante se deriva del hash NTLM de la contraseña del usuario del dominio. La culminación de esta investigación es el uso servicio crack.sh, que garantiza la recuperación de un hash NTLM para cualquier hash de respuesta de desafío MSCHAPv2 dado (independientemente de la complejidad de la contraseña).
Además de la autenticación de usuario de dominio, Windows también ofrece la opción de utilizar la autenticación de máquina / computadora. Esto se utiliza para permitir que el dispositivo se autentique en la red inalámbrica antes de que el usuario del dominio inicie sesión.
La autenticación por computadora es necesaria para resolver la situación del "huevo y la gallina" que surge cuando un dispositivo necesita autenticarse en la red antes de poder acceder a Active Directory y autenticar al usuario del dominio. Para crear una experiencia perfecta para el usuario, esta autenticación se realiza desde la pantalla de bloqueo antes de que el usuario inicie sesión en el dispositivo.
La autenticación de la computadora puede usar certificados de cliente o MSCHAPv2 para su mecanismo de autenticación interno. En el caso de los certificados de cliente, se utiliza un certificado emitido para la cuenta del equipo del dominio para autenticarse. Pero, ¿qué sucede si se usa la autenticación de computadora con PEAP y MSCHAPv2? En este caso, el hash NTLM de la cuenta del equipo del dominio se utiliza para la autenticación.
Las contraseñas de las cuentas de computadora son complejas, largas y se generan aleatoriamente. No hay forma de que podamos recuperar la contraseña de texto sin formato para esta cuenta, entonces, ¿por qué importa esto? Bueno, no podemos recuperar la contraseña de texto sin formato, pero gracias a crack.sh podemos recuperar el hash NTLM.
Los hashes NTLM de cuentas de equipo tienen un significado especial en el contexto de los entornos de dominio de Windows, ya que se relacionan con los tickets plateados de Kerberos. Los tickets de servicio Kerberos para los servicios alojados por la computadora (por ejemplo, el servicio CIFS) se firman y cifran utilizando el hash NTLM de la cuenta de la computadora.
Para falsificar tickets de servicio necesitamos la siguiente información: Hash NTLM de la cuenta de la computadora, Nombre del servicio al que queremos tener acceso y SID de dominio. Una vez que hayamos recuperado el hash NTLM de la cuenta de computadora desde crack.sh, todo lo que necesitamos es el SID de dominio y podemos falsificar nuestros propios tickets. El SID del dominio no es información secreta y cualquier usuario normal del dominio puede recuperarlo.
Este ataque también se puede weaponize y el autor del artículo explica cómo llevar adelante el ataque completo. Microsoft ha publicado el parche en la última actualización de seguridad de abril de 2021.
Fuente: Shenanigans Labs
Muy Interesante se sabe si la solucion ya fue aplicada por MS? gracias por la info
ResponderBorrarLee hasta el final ;)
Borrar