Está en la página 1de 16

Hacking web

@c0d3r17
Que es hacking web
Datos importantes
• Paginas o aplicaciones web (facebook)*
• Construidas en distintos lenguajes
• Pueden usar bases de datos “BD”
• Están en un equipo servidor
• La pagina esta en el servicio web
• Se puede aplicar a las Apps
• Existe lenguaje del lado del cliente y del servidor
• Explotación mediante un sitio indirecto
• Existen varios laboratorios*

¿Es necesario saber?


• (si) Lenguaje del lado del cliente (PHP)
• (si) Lenguaje del lado del servidor (JS)
• (no) Lenguaje de estilo (CSS)
• (si) Servidores web
• (si) Lenguaje de consulta de BD (SQL)
Explotacion
¿Que puedo explotar?
• Pagina web, modificándola*
• Extraer o modificar BD*
• Explotar el servidor*
• Usurpar cuentas de usuarios

Diferencia entre laboral y ofensivo


• (l) Detectar vulnerabilidades que
no necesariamente son explotables*
• (l) Rápida explotación
• (o) Explotar la vulnerabilidad
• (o) conectar vulnerabilidades
• (l) usar escáneres*
Explotación general
Técnicas
• Explotación lenguaje del lado del cliente (XSS)*
• Inyección de comandos de sistema (File inclusión)
• Ejecución de acciones involuntarias (CSRF)*
• Subida de archivos (file upload)
• Explotación BD (sql injection)*
• Password guessing y fuerza bruta
• Phishing
Servidor web
Estructura servidor web y BD
• Un servidor web es un PC cualquiera
• Existe un servicio web (Apache)*
• Existe un servicio de BD (MySQL)*
• Lenguajes de programación para cada área*
• Servidor web para realizar ataque
• PHP tiene configuraciones (php.ini)
• El servidor web es controlado por un
usuario especifico (www-data)*
• La BD es controlada por un usuario (root)*
Peticiones
Peticiones Http
• Forma de comunicación entre el servidor y cliente*
• La petición “request” lleva cabeceras “headers”
y trae otras “response”*
• Los códigos indican estados
(no existe el fichero/acceso denegado)*
• Las cookies son cabeceras (sesion)*
Peticiones Http
Peticiones
• Petición métodos GET y POST*
• Parámetros también pueden ir en
cabeceras (user-agent, cookie y referer)* Peticiones al cargar una pagina

Peticiones POST

Peticiones GET
Contenido practico
Servidor web
• Xampp o Wamp (multiplataforma)*
• Apache2 (Linux)*
• Python (multiplataforma)*
Xampp o Wamp
• Incluye programas adicionales (BD, FTP, etc.)
• Fácil uso e instalación Datos importantes
• Puede ser portable • Escoger la versión de PHP adecuada
• Estable para una pagina web • Uso mayoritario en hacking web
• Tiene servidor https • Fácil traspaso de archivos
Apache2 Python
• Incluido en kali • Incluido en kali tanto versión 2.7 y 3
• No tiene https • Sencillo y muy usado en explotaciones
• Fácil ejecución • Compatible con muchas explotaciones
• Inestable para una pagina web • Fácil de habilitar
• Útil para explotación ya que esta incluido • Permite fácil elección de puerto
• Muy incompatible con paginas web
• No tiene https
Pagina web
Estructura simple pagina web
• Estructura de etiquetas HTML*
• Ejemplo CSS*
• Ejemplo JavaScript
• Ejemplo PHP
• Ejemplo SQL

Con y sin CSS


Pagina web
Estructura simple pagina web
• Estructura de etiquetas HTML Javascript
• Ejemplo CSS
• Ejemplo JavaScript*
• Ejemplo PHP*
• Ejemplo SQL*

PHP
SQL
Partes de la explotación
Que es un payload
<script>alert('perro');</script>
• No confundir con payloads metasploit
• Código malicioso*
• Escrito en un lenguaje especifico
• Puede ir codificado*
• Puede ser interceptado por un WAF*
• Puede depender del SO del equipo servidor
• Puede fallar por un solo carácter
• Puede depender del motor de BD

Que es un proxy
• Intermediario entre el servidor y cliente
• Captura peticiones
• Captura petición a petición
• Permite modificar y enviar peticiones
• Proxy a nivel localhost o red local
Objetivos
Que deseas obtener
• Ver o modificar BD (SQLi)*
• Deface de la web (XSS)*
• Captura de credenciales (fuerza bruta)*
• Control del servidor (file upload)*
• Detección de vulnerabilidades (laboral)
Fuerza bruta “FB”
Datos importantes
• Fuzz o fuzzer
• FB de credenciales
• FB de payloads (Owasp zap)*
• FB de tokens (CSRF)
• Puede requerir cookies
• Peticion GET o POST
• La clave es el diccionario FB de credenciales
• Identificar donde se • Verificar captcha*
encuentra el token • Probar 3 y 4 ingresos Explotación
• Verificar token* • Usurpar usuario
• Prueba 10 automáticos • Parte de otras
(ideal 1 correcta)* vulnerabilidades
Command injection
Datos importantes
• Pagina web ejecuta un
comando de terminal
• Payload, Comandos de terminal
• Depende del SO del servidor*
• El usuario que ejecuta el comando
tiene ciertos privilegios*
• Comandos con o sin respuesta*
en pantalla
• Ejecución de shell

Explotación
• Deface
• Control del servidor
Command injection
Datos importantes
• Fuzz o fuzzer
• FB de credenciales
• FB de payloads (Owasp zap)*
• FB de tokens (CSRF)
• Puede requerir cookies
• Peticion GET o POST
• La clave es el diccionario
• Identificar donde se
encuentra el token
Continuara…
Si te interesa
• Avísame a mi telegram y te agrego al grupo del curso
• Recuerda que será pagado
• Creo que serán 100 USD, o menos pero lo estoy evaluando
• Si tienes preguntas o recomendaciones solo escríbeme
• Mi telegram es @c0d3r17

También podría gustarte