=====
ZackAttack! - Retransmitiendo NTLM como nadie
=======
¿Qué demonios es esto?
Versión tl;dr: ZackAttack! es un nuevo conjunto de herramientas para hacer retransmisión de autenticación NTLM, a diferencia de cualquier otra herramienta que exista actualmente.
=
Entonces, ¿cómo es ZackAttack! diferente / mejor? En comparación con otras herramientas...
Soporta NTLMv2 :)
Aporta impacto externo para NTLM retransmitiendo a servidores externos de Exchange Web Services (piensa en usuarios de móviles :) )
Servidor Rogue HTTP y SMB personalizado que canaliza todo a una única fuente agrupada, sabe quién es el usuario y lo mantiene autenticándose sin cerrar el socket
Lógica basada en reglas para realizar acciones automáticamente al ver un usuario que pertenece a un grupo. Cuando no existe una regla, el servidor rogue mantiene la sesión de autenticación el mayor tiempo posible hasta que llega una regla o una petición de la API.
Generación automática / guiada de métodos para lograr que los usuarios se autentiquen automáticamente sin interacción
Nuevos métodos para la autenticación automática del cliente, incluido lograr que FF/Chrome se autentiquen automáticamente mediante recursos compartidos SMB UNC (similar a IE)
Retransmisión a LDAP (crítico para retransmitir a Controladores de Dominio), Exchange Web Services y próximamente mssql.
Proxy SOCKS para permitir ataques de retransmisión NTLM con tus herramientas favoritas (proxychains smbclient....etc)
Se centra no solo en obtener las shells que obtienen los relays tradicionales, sino también en aprovechar a los usuarios incautos y obtener datos a través de ellos.
Se acabó el tl;dr ;) ¿El objetivo? Una herramienta al estilo Firesheep para retransmitir autenticaciones NTLM.
El código está escrito para ruby1.9 pero debería funcionar con 1.8. Requiere net/http(s) y webrick de rubygems.
=
Entonces, ¿cuáles son los componentes?
Los Servidores Rogue - HTTP y SMB. Estos reciben las solicitudes de autenticación y las reciclan continuamente
Los Clientes - Se conectan a los servidores objetivo y solicitan credenciales NTLM a los Servidores Rogue
Las Reglas - Definen acciones automáticas a realizar al ver a un usuario.
Los Payloads - Métodos para lograr que los usuarios se autentiquen automáticamente con Autenticación Integrada de Windows, es decir, sin solicitar autenticación al usuario.
=
XYZ no funciona
Seguro que no funciona ;) No siempre programo en ruby, pero cuando lo hago, me aseguro de introducir tantos bugs como sea posible :)
Envía tanta información como puedas (cómodamente) a la página de issues. Por favor, intenta obtener una captura de wireshark / pcap si es un problema del cliente. Si contiene datos sensibles (p. ej., credenciales NTLM de un cliente), házmelo saber y podremos buscar una solución si es posible.
¿Solicitud de funcionalidad? ¡Quiero escucharla! Revisa el archivo todo y mira si ya lo mencioné allí; si no, envíala!