la dura vida del pentester

26
Daniel Romero Manuel Fernández

Upload: eventos-creativos

Post on 07-Jul-2015

1.285 views

Category:

Technology


0 download

DESCRIPTION

Charla impartida por Manuel Fernández y Daniel Romero, ambos de la empresa Informática 64 durante el IV Curso de Verano de Seguridad Informática de la Universidad Europea de Madrid.

TRANSCRIPT

Page 1: La dura vida del Pentester

Daniel Romero

Manuel Fernández

Page 2: La dura vida del Pentester

Daniel Romero y Manuel Fernández:

Consultores de Seguridad en Informática64

Auditorias Internas/Externas Web

Auditorias Internas/Externas Redes y Sistemas

Análisis Forenses

Desarrollo de aplicaciones

Etcétera…

Page 3: La dura vida del Pentester

Veníamos hablar de... ◦ Fallos más comunes en auditorías web

◦ Como encontrarlos en Internet

◦ Casos reales que nos habíamos encontrado

◦ Etcétera...

Y vamos hablar de… ◦ La “mala suerte” que tuvieron nuestros vecinos del 3º con sus vacaciones

Page 4: La dura vida del Pentester

Detección de necesidades (contacto con el cliente) ◦ Obtención del número de portales a auditar

◦ Obtención del número de módulos a auditar

◦ Tiempo del proceso de auditoría

◦ Tipo de auditoría que se desea realizar (interna/externa)

◦ Etcétera...

Revisión Inicial del portal a auditar ◦ Obtención de productos, tecnologías, etcétera

FASE 1: Recogida y análisis de información

FASE 2: Detección y explotación de vulnerabilidades

Documentación

Page 5: La dura vida del Pentester

Nuestros vecinos decidieron reservar un viaje mediante una agencia de viajes a través de internet.

Unos días después, recibieron una llamada de la agencia de viajes indicándoles la anulación de la reserva, por un problema de disponibilidad de plazas.

Y se quedaron sin vacaciones…

Decidieron ponerse a investigar sobre el portal web de la agencia de viajes..

Page 6: La dura vida del Pentester
Page 7: La dura vida del Pentester

Técnica (Fuzzing) Técnica utilizada para localizar directorios y ficheros predecibles, a través de consultas automatizadas.

Buscaban: Directorios predecibles y confidenciales

Aprovechándose: Desconocimiento del programador

Resultados obtenidos:

Page 8: La dura vida del Pentester

Análisis del código fuente

Buscaban: Patrones a la hora de nombrar los directorios o ficheros de la aplicación web, código comentado, includes, etcétera.

Aprovechándose: Confianza/descuido del programador

Resultados obtenidos:

Page 9: La dura vida del Pentester

Técnica (Fuzzing) Técnica utilizada para localizar directorios y ficheros predecibles, a través de consultas automatizadas.

Buscaban: Ficheros o carpetas que pudieran comprometer la seguridad

Aprovechándose: Patrones en los directorios

Resultados obtenidos:

Page 10: La dura vida del Pentester

Técnica (BruteForcing) Técnica utilizada para automatizar los intentos de inicio de sesión en base a diccionarios.

Buscaban: Obtener acceso a los paneles de Login localizados en /w_admin/ y /w_atencioncliente/

Aprovechándose: No implementación de sistemas de seguridad como sistemas de bloqueo o Captchas.

Resultados obtenidos:

Page 11: La dura vida del Pentester

Decidieron poner una reclamación a atención al cliente

Page 12: La dura vida del Pentester

Técnica (XSS): Número dos en el TOP 10 de OWASP

Buscaban: Robo de cookies de sesión de administradores o usuarios de atención al cliente.

Aprovechándose: Desconocimiento y mala programación del desarrollador

Page 13: La dura vida del Pentester

Resultados obtenidos:

Page 14: La dura vida del Pentester

Técnica (SQLi): Número uno en el TOP 10 de OWASP

Buscaban: Obtención de información confidencial de la Base de datos

Aprovechándose: Desconocimiento y mala programación del desarrollador

Resultados obtenidos:

Page 15: La dura vida del Pentester

Tabla Clientes: 12.000 registros (aprox) SHA1

Tabla Usuarios: 20 registros (aprox) MD5

Entre otras…

Page 16: La dura vida del Pentester

Cracking: Aplicar una función de hash sobre un diccionario de palabras para comparar con el hash original

Buscaban: Crackear los hashes MD5

Aprovechándose: Falta de implementación de funciones de SALT

Resultados obtenidos:

10/19 + 8/19 + 6/19 = 11/19

Page 17: La dura vida del Pentester

Webshells: Son pequeñas aplicaciones web que permiten a un atacante interactuar directamente con el sistema.

Buscaban: Obtener acceso al sistema de ficheros del servidor web y ejecución de comandos.

◦ Ficheros de configuración

◦ Ficheros confidenciales

◦ Etcétera..

Aprovechándose: Mala implementación en el filtrado de la subida de ficheros.

Page 18: La dura vida del Pentester

Resultados obtenidos:

Page 19: La dura vida del Pentester

Elevación de privilegios (BBDD): Conexión a la Base de Datos a con permisos de ‘root’.

Buscaban: Lectura, escritura y modificación de la Base de datos

Aprovechándose: Fugas de información en ficheros

Resultados obtenidos:

Page 20: La dura vida del Pentester

Existencia de multitud de exploits que afectan al kernel 2.6.31-14, vulnerable a escalada de privilegios…

Page 21: La dura vida del Pentester

Buscaban: Disfrutar de las vacaciones que habían planeado

Resultados obtenidos:

Page 22: La dura vida del Pentester
Page 23: La dura vida del Pentester
Page 24: La dura vida del Pentester
Page 25: La dura vida del Pentester

Mucha información, poco conocimiento.

Poca seguridad en el portal web, siendo este la ‘carta de bienvenida’ a cualquier usuario.

Ausencia de sistemas de seguridad alternativos (Ej: WAF, IDS, IPS)

La criticidad de los puntos anteriores se incrementan cuando el portal web permite la realización de compras o movimientos de dinero.

Page 26: La dura vida del Pentester

Daniel Romero - [email protected]

Manuel Fernández - [email protected]