¿Puede un intruso seguir teniendo éxito con pass-the-hash o pass-the-ticket en redes Windows 10 / Server 2016 donde Credential Guard está habilitado?

10

En resumen: ¿Credential Guard hace que los ataques pass-the-hash y pass-the-ticket no estén disponibles en las redes de las máquinas Windows 10 / Windows Server 2016? Si no es así, ¿cómo sigue adquiriendo hashes o tickets para aprobar?

Por lo que he aprendido acerca de las pruebas de la pluma y los métodos malintencionados de los atacantes durante los dos años que los he estado estudiando en serio, uno de los descubrimientos más felices que un actor ofensivo puede hacer que suceda al penetrar en la red de Windows de un objetivo. encontrando que no está correctamente configurado & administrado para resistir pass-the-hash y / o pass-the-ticket . En tales situaciones, a menudo se vuelve inquietantemente fácil para el intruso (mediante una herramienta como mimikatz) volcar los hashes de contraseña NTLM y las credenciales Kerberos que están contenidas en la memoria o están en el disco de la máquina de base que originalmente se vio comprometida y las usa para Mueve con éxito lateralmente y rompe otros cuadros en la red. En el mejor de los casos, es posible que tarde o temprano consigas las llaves del reino: un hash NTLM o un ticket Kerberos para un administrador de dominio o administrador de empresa. Y si eso sucede ... el objetivo está en un mundo de problemas.

Desafortunadamente para la ofensiva, en Windows 8.1, Windows Server 2012 R2, Windows 10 y Windows Server 2016, Microsoft ha implementado una serie de medidas para tratar de hacer que los ataques de pases y pases sean más difíciles de tirar. apagado. El más ambicioso de estos se llama Credential Guard , y llegó a Windows 10 Enterprise en el cliente y Windows Server 2016. El los detalles de cómo Credential Guard parece funcionar técnicamente son un poco complicados. Pero a un nivel alto, las cosas son más sencillas: Windows aprovecha las capacidades de virtualización presentes en los procesadores Intel y AMD más recientes para encerrar el almacén de credenciales que existe en la memoria en una máquina Windows en un especial tipo de máquina virtual. Una máquina virtual que (en teoría) incluso un programa que logra obtener privilegios de administrador / SISTEMA en el sistema operativo no puede penetrar. Por lo tanto, a medida que avanza el tono incluso si logras llevar tu malware a una PC, e incluso logre elevar sus privilegios en esa PC hasta el SISTEMA, si esa PC tiene habilitada la Protección de credenciales y trata de usar una herramienta como mimikatz para volcar el almacén de credenciales, no obtendrá nada utilizable para pasar el hash o pasando el boleto.

En teoría.

Digamos que usted es un evaluador de bolígrafos que enfrenta un dominio de Windows que consta exclusivamente de estaciones de trabajo Windows 10 Enterprise, servidores de Windows Server 2016 y un controlador de dominio de Windows Server 2016. Todos corriendo con Credential Guard habilitado. Si desea utilizar pass-the-hash o pass-the-ticket para el movimiento lateral, ¿está jodido? Aparte de ser capaz de volcar los hashes & tickets en el almacén de credenciales, ¿qué otros métodos podría usar un atacante para obtener hashes o tickets que se pueden pasar? ¿Se puede omitir o deshabilitar Credential Guard? ¿O te enfrentas simplemente a renunciar a pasar hashes / tickets por completo e intentar otras formas de hacer movimientos laterales?

Editar : Para su información, resulta que en la "Actualización de aniversario" de julio de Windows 10, Microsoft introdujo muy silenciosamente Remote Credential Guard , que aparentemente está diseñado para evitar que sus credenciales se envíen al buzón remoto cuando inicias una conexión de Escritorio remoto. (La misma idea general que Modo de administración restringida para RDP, supongo, excepto que mejorado.) Un diagrama" útil "de MS:

    
pregunta mostlyinformed 03.11.2016 - 10:13
fuente

4 respuestas

1

Contra los adversarios normales (no APT; por ejemplo, ciberdelincuentes) será bastante efectivo. Pero me centraré en la cuestión de cómo evitar la Guardia de credenciales para que pueda tener una idea de la sofisticación necesaria.

En el enlace que proporcionó, Microsoft tiene un visual que describe los diversos anillos de seguridad de un sistema.

Comolamayoríadelaspersonas,Microsoftcolocaelhipervisor(anillo-1)directamentesobreelhardware.

Porsupuesto,socavaríasupuntoyplantearíadudassihubieraunacapaentresumecanismodeseguridadyelhardware.

  

Perosibuscoengoogle-2,noobtengoningúngráficoelegantequedescribaalgomásprivilegiado...

No.PeroobtendráunamencióndeSMMaquíyallá.Porlogeneral,estonoesalgoconloquepuedasexperimentar,porloquenohaymuchosrecursosenél.

Sinembargo, este video y esta cubierta de diapositivas describe las vulnerabilidades de los" anillos "que son más bajos que el hipervisor y puede sortear el mecanismo que menciona: .

  

... hemos encontrado sistemas en la naturaleza donde el SMRAM está bloqueado por una falta de integridad   mide el BIOS, evitando así que se genere una intercepción SMI cuando la CPU está en modo invitado. En otra   palabras, un controlador SMM (como resultado de un SMI) puede ejecutarse en modo SMM sin que el hipervisor tenga ningún control   encima de eso. Esto deja un hipervisor en dicho hardware potencialmente vulnerable al código malicioso del controlador SMM.

La NSA ha desarrollado múltiples rootkits para este modo de operación. De la wikipedia en SMM :

  

Por diseño, el sistema operativo no puede anular o deshabilitar el SMI. Debido a este hecho, es un objetivo para los rootkits maliciosos que residen en [12] [13] [14] incluidos los "implantes" de NSA [15] que tienen nombres de códigos individuales para hardware específico, como SOUFFLETROUGH para los cortafuegos de Juniper Networks, [ 16] SCHOOLMONTANA para enrutadores de la serie J de la misma compañía, [17] DEITYBOUNCE para DELL, [18] o IRONCHEF para servidores HP Proliant. [19]

    
respondido por el J.A.K. 07.11.2016 - 10:26
fuente
0

Credential Guard es muy efectivo contra el ataque de transferencia de hash, ya que eliminó el soporte para todos los protocolos / API que usan hash NTLM.

Parece que evita el pase de entrada ocultando TGT en la máquina virtual. Esto solo es válido si la LSA en la máquina virtual (LSA) también puede examinar solicitudes de tickets de manera efectiva, no estoy muy seguro de cómo se obtiene la información suficiente para hacerlo.

Las vulnerabilidades que comprometieron el host también pueden aplicarse a la VM. El enfoque de VM solo reduce la superficie de ataque y no la elimina. Los ataques más triviales como los keyloggers todavía no se evitan.

La eliminación del soporte de hash NTLM (especialmente CredSSP) obligará a muchas aplicaciones / servicios que no utilizan Kerberos para solicitar credenciales, posiblemente a través de diálogos y formularios web sencillos que carecen de la protección del escritorio seguro y permitirían la no privilegiada malware para interceptar las credenciales. Estas aplicaciones pueden usar HTTP Basic sin HTTPS, lo que expone la contraseña en texto sin formato a la red. (HTTPS no fue necesario para que HTTP Negotiate / SPNEGO funcione de manera segura (sin la capacidad del servidor para pasar el hash).) Para evitar solicitar credenciales en cada solicitud, las aplicaciones probablemente las almacenarán en su propia memoria, que está menos protegida que LSASS. Los usos también pueden elegir una contraseña más corta debido a la pérdida del SSO.

En cierto modo, la implementación de Credential Guard en un entorno que se basa en el SSO basado en NTLM no mejora necesariamente la seguridad.

    
respondido por el billc.cn 09.11.2016 - 19:56
fuente
0

Fondo

Credential Guard usa una instancia personalizada de Hyper-V para almacenar las credenciales de los usuarios. Todavía hay una instancia local de la Autoridad de seguridad local, pero se comunica con la instancia virtualizada a través de un canal seguro especial. La naturaleza exacta de este canal no está documentada públicamente, pero solo el LSASS puede usarlo.

Vectores de ataque

Durante décadas, ha habido intentos de "romper" las máquinas virtuales y comprometer al hipervisor. Estos ataques generalmente se llaman ataques de escape de máquinas virtuales .

Se han demostrado diversos niveles de éxito contra diferentes hipervisores, que van desde la divulgación de información hasta la ejecución de código arbitrario. La mayoría de los hipervisores principales han tenido algunas vulnerabilidades descubiertas.

Vulnerabilidades de Microsoft

Ha habido escapes de código arbitrario contra Hyper-V. Estos ataques afectaron a todas las versiones desde Server 2008 a Server 2016, incluidas las variantes de escritorio.

No está claro si los atacantes pudieron haber extraído las credenciales de un invitado de Credential Guard después de escapar de un invitado de Windows 10, pero "código arbitrario" significa que podrían haber intentado casi cualquier cosa para hacerlo.

Ambas vulnerabilidades de Hyper-V fueron anunciadas y parcheadas en MS17-008 .

Análisis

Si bien no hay casos divulgados de ataques de Credential Guard en la naturaleza, tales ataques siempre han sido teóricamente posibles. Además, el anterior ataque de código arbitrario contra Hyper-V demuestra que dichos ataques son totalmente plausibles.

Credential Guard detiene efectivamente la forma más común de movimiento lateral dentro de una red de Windows. Es la barrera técnica más fuerte que Microsoft ha implementado en los años posteriores a los primeros ataques de PtH. Es una defensa muy fuerte, pero sería absurdo suponer que es completamente eficaz e inmune al compromiso.

Conclusión

Al igual que con cualquier medida de seguridad sólida, debe implementarlo y asumir que puede fallar. Esto concuerda con el principio de defensa en profundidad , que busca lanzar tantos obstáculos significativos a un atacante como sea posible.

Debido a una serie de factores: posibles ataques a Credential Guard, falta de soporte en máquinas más antiguas, falta de disponibilidad en versiones anteriores de Windows, todavía es necesario conservar otras mitigaciones de PtH en el futuro inmediato.

    
respondido por el DoubleD 03.04.2018 - 16:25
fuente
-2

Sí, parece que Credential Guard ha protegido efectivamente las credenciales. Las vulnerabilidades en cualquiera de los componentes (los trustlets, el kernel seguro, VSM o incluso el hipervisor) pueden hacer que una ruta alcance un LSA aislado, eso sería algo diferente. Pero, para responder a la pregunta que hizo, diría que la implementación actual es efectiva para prevenir el estilo de ataques de tipo "pasar el hash". La única opción que veo es encontrar un sistema mal configurado o desactualizado para detectar credenciales.

    
respondido por el PrashantKumar96 07.11.2016 - 10:49
fuente

Lea otras preguntas en las etiquetas