Documente Academic
Documente Profesional
Documente Cultură
Carlos Sarraute
José Orlicki
Pedro Varangot
La empresa hace:
Core Impact, herramienta para penetration testing.
– 500 clientes en 40 países
Consultoría
– pen tests
– auditoría de código
Investigación
– en CoreLabs
– en otras áreas le dedican parte de su tiempo.
Agenda
Introducción.
Vulnerabilidades en binarios:
– como explotar un buffer overflow
Proceso de reporte
– ciclo de vida de una vulnerabilidad
Introducción
Preguntas motivadoras
– if (x == 5) printf("explotado!\n");
– }
Conceptos basicos
ebp 0x00401000
frame pointer Exe Code
code Dll Code
0x0040a000
General data Globals
Purpose dtors
bss jumptables
Dynamic data
flags heap Dyn objects
mallocs
Explotando un buffer overflow
buff[0]
buff[0]
0x00000000 buff[1]
buff[1]
…
buff[49]
buff[49]
stack local var y
0x0022FFFF local var x
parámetros
framepointers
ret address
Explotando un buffer overflow
– if (x == 5) printf("explotado!
printf("explotado!\
("explotado!\n");
– }
Ejercicios en vivo!
Ejemplo explotado!
Ejercicios en vivo!
Ejemplo notepad.exe
Como se descubren vulnerabilidades?
Como se descubren vulnerabilidades?
Herramientas
– Desensambladores como el IDA (interactive dis-assembler)
» requiere mucho tiempo y esfuerzo
– Debuggers
» seguir la ejecución paso a paso
Fuzzear
Fuerza bruta
Web server
– mandarle requests malformados
– basandose en bugs de seguridad conocidos
Appliance de red
El proceso de reporte
Proceso de reporte de vulnerabilidades
ZERO DAY
Del lado del fabricante y los usuarios
Release
Testea el patch
publico
DESCUBRI PUBLICA
EXPLOIT REPORTE
MIENTO ADVISORY
RECIBE REPRO
PATCH TESTING RELEASE
NOTIF. DUCE
UPDATE
VENTANA DE EXPOSICIÓN
Nuevos actores desde 2004
resultado: es vulnerable!!
Active Directory: cronograma 2