E-IMP
impacket
Librería Python y colección de scripts de ejemplo que implementan protocolos de red Windows/AD, base de secretsdump, psexec.py y decenas de otras herramientas.
Sitio oficialVolver al catálogo
RESUMEN
Impacket (fortra/impacket) es una librería Python que implementa desde cero buena parte de la pila de protocolos de red Windows/AD — SMB, MSRPC, Kerberos, LDAP y más — junto con decenas de scripts de ejemplo construidos sobre ella que cubren la mayor parte de la interacción diaria de un pentester con una red Windows: psexec.py y wmiexec.py para ejecución remota de comandos, GetUserSPNs.py y GetNPUsers.py para Kerberoasting y AS-REP roasting, ntlmrelayx.py para relay NTLM, secretsdump.py para volcado de credenciales (que tiene su propia entrada en este sitio), y muchos más.
Como reimplementa los protocolos directamente en Python en vez de delegar en herramientas de Windows, funciona multiplataforma desde una máquina atacante Linux sin necesitar RDP ni cliente nativo, y es la librería que sustenta buena parte del ecosistema de herramientas ofensivas centradas en AD — tanto CrackMapExec/NetExec como colectores próximos a BloodHound se apoyan en el manejo de protocolos derivado de Impacket.
CASOS DE USO
Casos de uso en un engagement
- 01
Ejecutar comandos remotamente en un host Windows vía SMB/WMI/DCOM con credenciales válidas (psexec.py, wmiexec.py).
- 02
Solicitar tickets de servicio Kerberos o respuestas AS-REP para crackear offline (GetUserSPNs.py, GetNPUsers.py).
- 03
Relayear autenticación NTLM capturada hacia otro host sin firma SMB (ntlmrelayx.py).
- 04
Construir scripts de enumeración o automatización a medida contra SMB, LDAP o RPC usando la librería directamente en vez de un script de ejemplo.
PRIMEROS PASOS
Cuando ya hay credenciales válidas o un punto de apoyo en una red Windows/AD, para enumerar, autenticar o ejecutar contra hosts usando sus scripts de ejemplo en vez de una herramienta gráfica.
- Confirma qué script(s) concretos de Impacket y qué nivel de acceso (enumeración, ejecución o relay) están autorizados para este engagement — el toolkit cubre toda la cadena, así que acota el uso de cada script individualmente contra las reglas del engagement.
- Instala Impacket (pip install impacket) y confirma que los scripts de ejemplo están en el PATH.
- Empieza con un script de enumeración de solo lectura (por ejemplo lookupsid.py o GetADUsers.py) para validar credenciales y acceso antes de nada que ejecute código o escriba en el objetivo.
- Pasa a scripts de ejecución o extracción (psexec.py, secretsdump.py) solo cuando ese nivel de acceso esté explícitamente acordado.
- Registra qué script, objetivo y credencial se usaron en cada acción para que el informe pueda trazar exactamente qué ocurrió.
GetUserSPNs.py DOMAIN/user:password -dc-ip 10.10.10.10 -requestANTES DE USARLA
Qué revisar antes de lanzarla
Impacket es un toolkit amplio, no una sola herramienta — cada script de ejemplo (ejecución, relay, volcado de credenciales) tiene su propio perfil de riesgo y detección, así que acota y autoriza su uso individualmente en vez de tratar 'Impacket está en alcance' como una aprobación general.
Los scripts de ejecución (psexec.py, wmiexec.py) dejan artefactos forenses en el objetivo (creación de servicios, named pipes) que un blue team maduro encontrará al revisar; anota qué hosts se tocaron para el informe.
Los scripts de Kerberoasting y relay NTLM dependen de configuración de dominio que el cliente puede considerar sensible de divulgar ampliamente — gestiona tickets, hashes y resultados de relay recuperados según las reglas de manejo de datos del engagement.