SlideShare una empresa de Scribd logo
1 de 19
INTRODUCCION AL
EXPLOITING WIN32
Israel Araoz Severiche
Information Security Professional
medium.com/@iaraoz
https://bo.linkedin.com/in/iaraoz
@yaritu_
AGENDA
• Exploiting
• Registros
• Stack
• Demo
• Herramientas
• Recursos
• Laboratorio
EXPLOITING
“Exploiting a program is simply a clever way
of getting the computer to do what you want it
to do, even if the currently running program
was designed to prevent that action.”
Jon Erickson (2008) Hacking: The art of exploitation, 2nd Edition.
PROCESO DE DESAROLLLO
• Fuzzing (Crash)
• Control EIP
• Calcular offset para llegar a EIP
• Generar Shellcode
• Test Exploit
• Identificar y Eliminar los “Bad Characters”
REGISTROS
• Los registros son pequeños espacios de memoria en el CPU, cada
registro tiene una función específica.
Registro Nombre Función
EAX Accumulator Utilizado para operaciones aritméticas
ECX Counter Utilizado para las iteraciones (loops)
EDX Data Entrada y salida de datos
EBX Base Puntero de datos
ESP Stack Pointer Puntero a la cima (TOP) de la Pila (Stack)
EBP Base Pointer Puntero la base de la pila (Stack)
ESI Source Index Puntero al origen, operaciones con cadenas
EDI Destination Puntero al destino, operaciones con cadenas
EIP Instruction Pointer Puntero a la siguiente instrucción
https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/x86-architecture
PROCESO EN MEMORIA
Nombre Tipo Acceso Contenido
.text Código Solo lectura Código del programa (Instrucciones)
.data Dato Lectura / Escritura Variables inicializadas sin asignación y
que pueden ser modificadas
Bss Dato Lectura / Escritura
Heap Dato Lectura / Escritura /
Ejecución
Espacio que puede crecer
dinámicamente, por lo general son
utilizados para punteros a memoria
Stack Dato Lectura / Escritura /
Ejecución
Se almacenan Funciones , variables
PROCESO EN MEMORIA
Nombre Tipo
.text Código
.data static int x=19;
int c = 86;
Bss static int x;
int c;
Stack Funciones, parámetros
de funciones y variables
PROCESO EN MEMORIA
Nombre Tipo
.text Código
.data static int x=19;
int c = 86;
Bss static int x;
int c;
Stack Funciones, parámetros
de funciones y variables
PROCESO EN MEMORIA
https://blogs.technet.microsoft.com/markrussinovich/2009/07/05/pushing-the-limits-of-windows-processes-and-threads/
STACK (PILA)
• La pila es una estructura LIFO por lo general se encuentra en la
parte más alta de la memoria, los registros ESP (Stack Pointer)
y EBP (Base Pointer) son los encargados de controlar el bloque
de memoria. Las variables locales, argumentos de las
funciones, funciones y direcciones de retornos son
almacenadas en la pila (Stack).
INSTRUCCIÓN PUSH
• Cuando se ejecuta la instrucción PUSH, el registro ESP
incrementa 4 bytes (x86) hacia la dirección más baja de la
memoria.
INSTRUCCIÓN POP
• Cuando se ejecuta la instrucción POP, el registro ESP
decrementa 4 bytes (x86) hacia la dirección más alta de la
memoria.
ENDIANESS
• Formato en el cual se almacena los datos en memoria.
• Little-Endian
• Big-Endian
Big-Endian
0x12345678
Little-Endian
0x78563412
0x12345678
MSB LSB
DMB
DMA
DMA
DMB
Herramientas
https://www.immunityinc.com/products/debugger/
https://github.com/corelan/mona
DEMO
• Analizar y reconstruir el exploit bajo una metodología
• Exploit : https://www.exploit-db.com/exploits/14373/
• Autor : Madjix (lemail ma3andkoum madirou bih)
• Tipo : Stack Buffer Over Flow (local)
EXPLOIT
https://www.exploit-db.com/exploits/14373/
PASOS A SEGUIR
• !mona config -set workingfolder C:logs%p
• !mona cp 2000 (Generar patron de cadena único)
• !mona findmsp (Cantidad de bytes para llegar a EIP)
• !mona jmp –r esp
• msfvenom -a x86 --platform Windows -p windows/exec
cmd=calc.exe -b 'x00x0ax0d' -f python (Generamos la
calculadora)
RECURSOS
• https://github.com/enddo/awesome-windows-exploitation
• https://www.exploit-db.com/papers/
• https://www.corelan.be/index.php/articles/
• https://www.fuzzysecurity.com/tutorials.html
LABORATORIO
• https://exploit-exercises.com/protostar/
(Algunos códigos pueden ser compilados y analizados sobre win32)
• https://www.root-me.org/?lang=es
• https://github.com/Kan1shka9/Exploiting-Simple-Buffer-Overflows-on-Win32
• https://github.com/nanotechz9l/Win32-Exploit-Dev-quiz-engine

Más contenido relacionado

Similar a INTRO AL EXPLOIT WIN32 (20)

1.2. El procesador y sus registros internos
1.2. El procesador y sus registros internos1.2. El procesador y sus registros internos
1.2. El procesador y sus registros internos
 
Manuel Blanco - GNU/Linux Binary Exploitation I&II [rooted2018]
Manuel Blanco - GNU/Linux Binary Exploitation I&II [rooted2018]Manuel Blanco - GNU/Linux Binary Exploitation I&II [rooted2018]
Manuel Blanco - GNU/Linux Binary Exploitation I&II [rooted2018]
 
Microcomputadoras al detalle
Microcomputadoras al detalleMicrocomputadoras al detalle
Microcomputadoras al detalle
 
Microcomputadoras al detalle
Microcomputadoras al detalleMicrocomputadoras al detalle
Microcomputadoras al detalle
 
Microcomputadoras al detalle
Microcomputadoras al detalleMicrocomputadoras al detalle
Microcomputadoras al detalle
 
El cpu
El cpuEl cpu
El cpu
 
5 microprocesadores 2
5 microprocesadores 25 microprocesadores 2
5 microprocesadores 2
 
Placa madre
Placa madrePlaca madre
Placa madre
 
Exploits y stack overflows en windows 2017
Exploits y stack overflows en windows 2017Exploits y stack overflows en windows 2017
Exploits y stack overflows en windows 2017
 
SISTEMA OPERATIVOS
SISTEMA OPERATIVOSSISTEMA OPERATIVOS
SISTEMA OPERATIVOS
 
Unidad 1 interfaz
Unidad 1 interfazUnidad 1 interfaz
Unidad 1 interfaz
 
INTRODUCCION A LOS SISTEMAS OPERATIVOS
INTRODUCCION A LOS SISTEMAS OPERATIVOSINTRODUCCION A LOS SISTEMAS OPERATIVOS
INTRODUCCION A LOS SISTEMAS OPERATIVOS
 
Eeprom (2)
Eeprom (2)Eeprom (2)
Eeprom (2)
 
Operaciones de pila
Operaciones de pilaOperaciones de pila
Operaciones de pila
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Pentest - El Arte de la Guerra
Pentest - El Arte de la GuerraPentest - El Arte de la Guerra
Pentest - El Arte de la Guerra
 
Componentes de la computadora
Componentes de la computadoraComponentes de la computadora
Componentes de la computadora
 
Componentes de la computadora
Componentes de la computadoraComponentes de la computadora
Componentes de la computadora
 
04 j flex
04 j flex04 j flex
04 j flex
 
Manual80x86
Manual80x86Manual80x86
Manual80x86
 

Último

KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 

Último (19)

KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 

INTRO AL EXPLOIT WIN32

  • 1. INTRODUCCION AL EXPLOITING WIN32 Israel Araoz Severiche Information Security Professional medium.com/@iaraoz https://bo.linkedin.com/in/iaraoz @yaritu_
  • 2. AGENDA • Exploiting • Registros • Stack • Demo • Herramientas • Recursos • Laboratorio
  • 3. EXPLOITING “Exploiting a program is simply a clever way of getting the computer to do what you want it to do, even if the currently running program was designed to prevent that action.” Jon Erickson (2008) Hacking: The art of exploitation, 2nd Edition.
  • 4. PROCESO DE DESAROLLLO • Fuzzing (Crash) • Control EIP • Calcular offset para llegar a EIP • Generar Shellcode • Test Exploit • Identificar y Eliminar los “Bad Characters”
  • 5. REGISTROS • Los registros son pequeños espacios de memoria en el CPU, cada registro tiene una función específica. Registro Nombre Función EAX Accumulator Utilizado para operaciones aritméticas ECX Counter Utilizado para las iteraciones (loops) EDX Data Entrada y salida de datos EBX Base Puntero de datos ESP Stack Pointer Puntero a la cima (TOP) de la Pila (Stack) EBP Base Pointer Puntero la base de la pila (Stack) ESI Source Index Puntero al origen, operaciones con cadenas EDI Destination Puntero al destino, operaciones con cadenas EIP Instruction Pointer Puntero a la siguiente instrucción https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/x86-architecture
  • 6. PROCESO EN MEMORIA Nombre Tipo Acceso Contenido .text Código Solo lectura Código del programa (Instrucciones) .data Dato Lectura / Escritura Variables inicializadas sin asignación y que pueden ser modificadas Bss Dato Lectura / Escritura Heap Dato Lectura / Escritura / Ejecución Espacio que puede crecer dinámicamente, por lo general son utilizados para punteros a memoria Stack Dato Lectura / Escritura / Ejecución Se almacenan Funciones , variables
  • 7. PROCESO EN MEMORIA Nombre Tipo .text Código .data static int x=19; int c = 86; Bss static int x; int c; Stack Funciones, parámetros de funciones y variables
  • 8. PROCESO EN MEMORIA Nombre Tipo .text Código .data static int x=19; int c = 86; Bss static int x; int c; Stack Funciones, parámetros de funciones y variables
  • 10. STACK (PILA) • La pila es una estructura LIFO por lo general se encuentra en la parte más alta de la memoria, los registros ESP (Stack Pointer) y EBP (Base Pointer) son los encargados de controlar el bloque de memoria. Las variables locales, argumentos de las funciones, funciones y direcciones de retornos son almacenadas en la pila (Stack).
  • 11. INSTRUCCIÓN PUSH • Cuando se ejecuta la instrucción PUSH, el registro ESP incrementa 4 bytes (x86) hacia la dirección más baja de la memoria.
  • 12. INSTRUCCIÓN POP • Cuando se ejecuta la instrucción POP, el registro ESP decrementa 4 bytes (x86) hacia la dirección más alta de la memoria.
  • 13. ENDIANESS • Formato en el cual se almacena los datos en memoria. • Little-Endian • Big-Endian Big-Endian 0x12345678 Little-Endian 0x78563412 0x12345678 MSB LSB DMB DMA DMA DMB
  • 15. DEMO • Analizar y reconstruir el exploit bajo una metodología • Exploit : https://www.exploit-db.com/exploits/14373/ • Autor : Madjix (lemail ma3andkoum madirou bih) • Tipo : Stack Buffer Over Flow (local)
  • 17. PASOS A SEGUIR • !mona config -set workingfolder C:logs%p • !mona cp 2000 (Generar patron de cadena único) • !mona findmsp (Cantidad de bytes para llegar a EIP) • !mona jmp –r esp • msfvenom -a x86 --platform Windows -p windows/exec cmd=calc.exe -b 'x00x0ax0d' -f python (Generamos la calculadora)
  • 18. RECURSOS • https://github.com/enddo/awesome-windows-exploitation • https://www.exploit-db.com/papers/ • https://www.corelan.be/index.php/articles/ • https://www.fuzzysecurity.com/tutorials.html
  • 19. LABORATORIO • https://exploit-exercises.com/protostar/ (Algunos códigos pueden ser compilados y analizados sobre win32) • https://www.root-me.org/?lang=es • https://github.com/Kan1shka9/Exploiting-Simple-Buffer-Overflows-on-Win32 • https://github.com/nanotechz9l/Win32-Exploit-Dev-quiz-engine