Windows Shells

Vulnerabilidades más explotadas
  • Vulnerability: Description
  • MS08-067: Flaw en SMB explotado por Conficker y Stuxnet para infiltrar sistemas Windows
  • Eternal Blue: Explotación del protocolo SMBv1 utilizado por WannaCry y NotPetya
  • PrintNightmare: Ejecución remota en el Print Spooler que permite acceso como SYSTEM
  • BlueKeep MS17-010: Ejecución remota en RDP, afectando versiones hasta Windows Server 2008 R2 - 2016
  • Sigred: Vulnerabilidad en DNS que otorga privilegios de administrador de dominio
  • SeriousSam: Lectura del archivo SAM para extraer credenciales
  • Zerologon: Vulnerabilidad crítica en Netlogon que permite alterar cuentas de Active Directory

Detección de Sistemas

Cuando el ttl es de 32 o 128 solemos estar ante sistemas windows. En nmap podemos usar las flags -O -A

Tipos de archivos para payloads en Windows

  • DLL: Inyección de bibliotecas dinámicas para ejecutar código malicioso.
  • Batch (.bat): Archivos de script que ejecutan múltiples comandos en CMD.
  • VBS: Scripts ligeros, aunque desactivados en navegadores modernos, útiles para phishing.
  • MSI: Archivos de instalación que pueden contener payloads maliciosos.
  • PowerShell: Potente herramienta para ejecutar comandos avanzados y scripts en sistemas modernos.

Generar Payloads

  • MSFVenom & Metasploit-Framework: Para crear payloads específicos según el sistema operativo y protocolo
  • Payloads All The Things: Repo con varias cosas
  • Mythic C2 Framework: Framework de Command and Control alternativo a Metasploit y toolbox para generación de payloads.
  • Nishang: Scripts ofensivos en PowerShell
  • Darkarmour: Generador de binarios ofuscados

Proceso de compromiso de un sistema Windows (ejemplo)

  • Enumeración del sistema:
  • Usar nmap para detectar puertos y servicios abiertos.
  • Identificar vulnerabilidades específicas (como MS17-010).
  • Validación de vulnerabilidades:
  • Usar módulos de Metasploit como auxiliary/scanner/smb/smb_ms17_010.
  • Explotación:
  • Configurar exploit (ms17_010_psexec) con un payload (ej., windows/meterpreter/reverse_tcp).
  • Ejecución y obtención de shell:
  • Ganar acceso como NT AUTHORITY\SYSTEM a través de Meterpreter