SlideShare una empresa de Scribd logo
1 de 31
Alejandro Hernández [email_address] http://www.genexx.org/nitrous/ FUZZEANDO SNORT CON OPCIONES TCP/IP
...QUE ES FUZZING ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
...OBJETIVOS DEL FUZZING ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
...FUZZING PUEDE SER DE... ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
...EJEMPLOS
 
 
 
 
 
 
Snort <= 2.4.0 SACK TCP Option Error Handling
0  1  2  3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Versión|  IHL  | Tipo Servicio |  Longitud Total  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Identificación  |Flags|  Posición  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Tiempo de Vida |  Protocolo  | Suma de Control de Cabecera  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Dirección de Origen  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Dirección de Destino  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Opciones  |  Relleno  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ...IP HEADER
0  1  2  3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Puerto de origen  |  Puerto de destino  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Número de secuencia  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Número de acuse de recibo  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Posic |  |U|A|P|R|S|F|  | | de los| Reservado |R|C|S|S|Y|I|  Ventana  | | datos |  |G|K|H|T|N|N|  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Suma de control  |  Puntero urgente  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Opciones  |  Relleno  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Datos  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ...TCP HEADER
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],...LA VICTIMA
...LAS ARMAS ,[object Object],[object Object],[object Object],[object Object],[object Object]
<...código...>  unsigned char tcpoptions[4]; char tcpOptions[] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0xa0, 0xa1}; char tcpOptionsLen[] = {0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf}; char tcpOptionsPadding[] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0xa0, 0xa1}; <...código...> for(u=0; u < sizeof(tcpOptionsPadding); u++){   <...código...> for(a=0; a < sizeof(tcpOptionsPadding); a++){   <...código...> for(i=0; i < sizeof(tcpOptionsLen); i++){   <...código...> for(o=0;o<sizeof(tcpOptions);o++){   <...código...> tcpoptions[0]=tcpOptions[o]; tcpoptions[1]=tcpOptionsLen[i]; tcpoptions[2]=tcpOptionsPadding[a]; tcpoptions[3]=tcpOptionsPadding[u]; <...código...> fuzzball2.c ... Generación de TCP Options
...EL ATAQUE
 
 
 
 
 
 
#gcc snortrigger.c –o snortrigger; ./snortrigger localhost 200.31.33.70 127.0.0.1 31337 64876 0x05020000 SIGSEGV !! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Dirección Origen=  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Dirección Destino=  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Puerto de origen=  |  Puerto de destino=  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |  Opciones=  |  Relleno  | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ IP TCP
 
 
¡ PATCHED !
¿ PREGUNTAS? ... COMENTARIOS?
...LINKS Y REFERENCIAS ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
...GRACIAS Alejandro Hernández [email_address] http://www.genexx.org/nitrous/

Más contenido relacionado

La actualidad más candente

Programa en c de listas
Programa en c de listasPrograma en c de listas
Programa en c de listasJohan Niño G
 
Coloreo de grafos
Coloreo de grafosColoreo de grafos
Coloreo de grafosJorge
 
Número mayor y menor de una secuencia de enteros positivos en C++.
Número mayor y menor de una secuencia de enteros positivos en  C++.Número mayor y menor de una secuencia de enteros positivos en  C++.
Número mayor y menor de una secuencia de enteros positivos en C++.Carlos Aviles Galeas
 
Ejemplos de formato de impresión (pft) 1
Ejemplos de formato de impresión (pft) 1Ejemplos de formato de impresión (pft) 1
Ejemplos de formato de impresión (pft) 1Manuel Luján
 
Configuración cerea
Configuración cereaConfiguración cerea
Configuración cerea650enV
 
Resúmen análisis numérico ejercicios
Resúmen análisis numérico   ejerciciosResúmen análisis numérico   ejercicios
Resúmen análisis numérico ejerciciosIsaac Cohen
 

La actualidad más candente (12)

Feb28
Feb28Feb28
Feb28
 
Codigos de programas
Codigos de programasCodigos de programas
Codigos de programas
 
Programa en c de listas
Programa en c de listasPrograma en c de listas
Programa en c de listas
 
Coloreo de grafos
Coloreo de grafosColoreo de grafos
Coloreo de grafos
 
Codigo distancia
Codigo distanciaCodigo distancia
Codigo distancia
 
Número mayor y menor de una secuencia de enteros positivos en C++.
Número mayor y menor de una secuencia de enteros positivos en  C++.Número mayor y menor de una secuencia de enteros positivos en  C++.
Número mayor y menor de una secuencia de enteros positivos en C++.
 
Deber # 5
Deber # 5Deber # 5
Deber # 5
 
Emu 8086
Emu 8086Emu 8086
Emu 8086
 
Cl linea
Cl lineaCl linea
Cl linea
 
Ejemplos de formato de impresión (pft) 1
Ejemplos de formato de impresión (pft) 1Ejemplos de formato de impresión (pft) 1
Ejemplos de formato de impresión (pft) 1
 
Configuración cerea
Configuración cereaConfiguración cerea
Configuración cerea
 
Resúmen análisis numérico ejercicios
Resúmen análisis numérico   ejerciciosResúmen análisis numérico   ejercicios
Resúmen análisis numérico ejercicios
 

Similar a Fuzzeando Snort con opciones TCP/IP

Tcpdump
TcpdumpTcpdump
TcpdumpTensor
 
a little more about CaptureFilter
a little more about CaptureFiltera little more about CaptureFilter
a little more about CaptureFilter@ otsuka752
 
TCP/IPプロトコルスタック自作入門
TCP/IPプロトコルスタック自作入門TCP/IPプロトコルスタック自作入門
TCP/IPプロトコルスタック自作入門雅也 山本
 
Lw2010 Pedro Valera
Lw2010 Pedro ValeraLw2010 Pedro Valera
Lw2010 Pedro Valeraguestf280e2
 
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En Redes
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En RedesLw2010 - Uso De La Programacion En Linux Para La Seguridad En Redes
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En Redesguest5d7f33c
 
ESTRUCTURA DE DATOS ALEXIS ROJAS
ESTRUCTURA DE DATOS  ALEXIS ROJASESTRUCTURA DE DATOS  ALEXIS ROJAS
ESTRUCTURA DE DATOS ALEXIS ROJASAlex Kira
 
Introduccion a Python por Facundo Batista
Introduccion a Python por Facundo BatistaIntroduccion a Python por Facundo Batista
Introduccion a Python por Facundo BatistaRoberto Allende
 
Rompiendo el protocolo: Usos y abusos de TCP/IP
Rompiendo el protocolo: Usos y abusos de TCP/IPRompiendo el protocolo: Usos y abusos de TCP/IP
Rompiendo el protocolo: Usos y abusos de TCP/IPDaniel Torres
 
Tcpdump a.2
Tcpdump a.2Tcpdump a.2
Tcpdump a.2Tensor
 
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)Franz Amaya
 
Introducción a Python
Introducción a PythonIntroducción a Python
Introducción a Pythonnqnwebs
 
08 strings o cadenas
08 strings o cadenas08 strings o cadenas
08 strings o cadenashorusblom
 
Comunicacion Java Envio De Datos Al Puerto Paralelo
Comunicacion Java Envio De Datos Al Puerto ParaleloComunicacion Java Envio De Datos Al Puerto Paralelo
Comunicacion Java Envio De Datos Al Puerto ParaleloMauro Gomez Mejia
 

Similar a Fuzzeando Snort con opciones TCP/IP (20)

MODELO PASO DE MENSAJES
MODELO PASO DE MENSAJESMODELO PASO DE MENSAJES
MODELO PASO DE MENSAJES
 
Tcpdump
TcpdumpTcpdump
Tcpdump
 
a little more about CaptureFilter
a little more about CaptureFiltera little more about CaptureFilter
a little more about CaptureFilter
 
TCP/IPプロトコルスタック自作入門
TCP/IPプロトコルスタック自作入門TCP/IPプロトコルスタック自作入門
TCP/IPプロトコルスタック自作入門
 
Lw2010 Pedro Valera
Lw2010 Pedro ValeraLw2010 Pedro Valera
Lw2010 Pedro Valera
 
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En Redes
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En RedesLw2010 - Uso De La Programacion En Linux Para La Seguridad En Redes
Lw2010 - Uso De La Programacion En Linux Para La Seguridad En Redes
 
Taller I Coreis Python 10112009
Taller I Coreis Python 10112009Taller I Coreis Python 10112009
Taller I Coreis Python 10112009
 
ESTRUCTURA DE DATOS ALEXIS ROJAS
ESTRUCTURA DE DATOS  ALEXIS ROJASESTRUCTURA DE DATOS  ALEXIS ROJAS
ESTRUCTURA DE DATOS ALEXIS ROJAS
 
Introduccion a Python por Facundo Batista
Introduccion a Python por Facundo BatistaIntroduccion a Python por Facundo Batista
Introduccion a Python por Facundo Batista
 
Rompiendo el protocolo: Usos y abusos de TCP/IP
Rompiendo el protocolo: Usos y abusos de TCP/IPRompiendo el protocolo: Usos y abusos de TCP/IP
Rompiendo el protocolo: Usos y abusos de TCP/IP
 
Tcpdump a.2
Tcpdump a.2Tcpdump a.2
Tcpdump a.2
 
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)
Curso de lenguaje c para microcontroladores pic dia 1(2)(2)(2)(2)(2)(2)
 
Shodab
ShodabShodab
Shodab
 
Transpar Tema1a
Transpar Tema1aTranspar Tema1a
Transpar Tema1a
 
Introducción a Python
Introducción a PythonIntroducción a Python
Introducción a Python
 
Route-servers and how to make the most of it with manners
Route-servers and how to make the most of it with mannersRoute-servers and how to make the most of it with manners
Route-servers and how to make the most of it with manners
 
Informe tecnico
Informe tecnicoInforme tecnico
Informe tecnico
 
08 strings o cadenas
08 strings o cadenas08 strings o cadenas
08 strings o cadenas
 
Secure txscalacsharp
Secure txscalacsharpSecure txscalacsharp
Secure txscalacsharp
 
Comunicacion Java Envio De Datos Al Puerto Paralelo
Comunicacion Java Envio De Datos Al Puerto ParaleloComunicacion Java Envio De Datos Al Puerto Paralelo
Comunicacion Java Envio De Datos Al Puerto Paralelo
 

Más de Alejandro Hernández

Are You Trading Stocks Securely? Exposing Security Flaws in Trading Technologies
Are You Trading Stocks Securely? Exposing Security Flaws in Trading TechnologiesAre You Trading Stocks Securely? Exposing Security Flaws in Trading Technologies
Are You Trading Stocks Securely? Exposing Security Flaws in Trading TechnologiesAlejandro Hernández
 
Brain Waves Surfing - (In)security in EEG (Electroencephalography) Technologies
Brain Waves Surfing - (In)security in EEG (Electroencephalography) TechnologiesBrain Waves Surfing - (In)security in EEG (Electroencephalography) Technologies
Brain Waves Surfing - (In)security in EEG (Electroencephalography) TechnologiesAlejandro Hernández
 
In the lands of corrupted elves - Breaking ELF software with Melkor fuzzer
In the lands of corrupted elves - Breaking ELF software with Melkor fuzzerIn the lands of corrupted elves - Breaking ELF software with Melkor fuzzer
In the lands of corrupted elves - Breaking ELF software with Melkor fuzzerAlejandro Hernández
 
Tips y Experiencias de un Consultor en Seguridad Informática - Campus Party C...
Tips y Experiencias de un Consultor en Seguridad Informática - Campus Party C...Tips y Experiencias de un Consultor en Seguridad Informática - Campus Party C...
Tips y Experiencias de un Consultor en Seguridad Informática - Campus Party C...Alejandro Hernández
 
Malware en Linux - Barcamp SE - Cali, Colombia 2013
Malware en Linux - Barcamp SE - Cali, Colombia 2013Malware en Linux - Barcamp SE - Cali, Colombia 2013
Malware en Linux - Barcamp SE - Cali, Colombia 2013Alejandro Hernández
 
Seguridad Física - Mira Mamá, como Jason Bourne - BugCON 2013
Seguridad Física - Mira Mamá, como Jason Bourne - BugCON 2013Seguridad Física - Mira Mamá, como Jason Bourne - BugCON 2013
Seguridad Física - Mira Mamá, como Jason Bourne - BugCON 2013Alejandro Hernández
 
DotDotPwn Fuzzer - Black Hat 2011 (Arsenal)
DotDotPwn Fuzzer - Black Hat 2011 (Arsenal)DotDotPwn Fuzzer - Black Hat 2011 (Arsenal)
DotDotPwn Fuzzer - Black Hat 2011 (Arsenal)Alejandro Hernández
 

Más de Alejandro Hernández (10)

Are You Trading Stocks Securely? Exposing Security Flaws in Trading Technologies
Are You Trading Stocks Securely? Exposing Security Flaws in Trading TechnologiesAre You Trading Stocks Securely? Exposing Security Flaws in Trading Technologies
Are You Trading Stocks Securely? Exposing Security Flaws in Trading Technologies
 
Brain Waves Surfing - (In)security in EEG (Electroencephalography) Technologies
Brain Waves Surfing - (In)security in EEG (Electroencephalography) TechnologiesBrain Waves Surfing - (In)security in EEG (Electroencephalography) Technologies
Brain Waves Surfing - (In)security in EEG (Electroencephalography) Technologies
 
In the lands of corrupted elves - Breaking ELF software with Melkor fuzzer
In the lands of corrupted elves - Breaking ELF software with Melkor fuzzerIn the lands of corrupted elves - Breaking ELF software with Melkor fuzzer
In the lands of corrupted elves - Breaking ELF software with Melkor fuzzer
 
Tips y Experiencias de un Consultor en Seguridad Informática - Campus Party C...
Tips y Experiencias de un Consultor en Seguridad Informática - Campus Party C...Tips y Experiencias de un Consultor en Seguridad Informática - Campus Party C...
Tips y Experiencias de un Consultor en Seguridad Informática - Campus Party C...
 
Malware en Linux - Barcamp SE - Cali, Colombia 2013
Malware en Linux - Barcamp SE - Cali, Colombia 2013Malware en Linux - Barcamp SE - Cali, Colombia 2013
Malware en Linux - Barcamp SE - Cali, Colombia 2013
 
Seguridad Física - Mira Mamá, como Jason Bourne - BugCON 2013
Seguridad Física - Mira Mamá, como Jason Bourne - BugCON 2013Seguridad Física - Mira Mamá, como Jason Bourne - BugCON 2013
Seguridad Física - Mira Mamá, como Jason Bourne - BugCON 2013
 
DotDotPwn Fuzzer - Black Hat 2011 (Arsenal)
DotDotPwn Fuzzer - Black Hat 2011 (Arsenal)DotDotPwn Fuzzer - Black Hat 2011 (Arsenal)
DotDotPwn Fuzzer - Black Hat 2011 (Arsenal)
 
De Hacker a C-Level
De Hacker a C-LevelDe Hacker a C-Level
De Hacker a C-Level
 
ELF en la mira: Hacking y Defensa
ELF en la mira: Hacking y DefensaELF en la mira: Hacking y Defensa
ELF en la mira: Hacking y Defensa
 
Live Hacking : del Bug al Exploit
Live Hacking : del Bug al ExploitLive Hacking : del Bug al Exploit
Live Hacking : del Bug al Exploit
 

Fuzzeando Snort con opciones TCP/IP

  • 1. Alejandro Hernández [email_address] http://www.genexx.org/nitrous/ FUZZEANDO SNORT CON OPCIONES TCP/IP
  • 2.
  • 3.
  • 4.
  • 6.  
  • 7.  
  • 8.  
  • 9.  
  • 10.  
  • 11.  
  • 12. Snort <= 2.4.0 SACK TCP Option Error Handling
  • 13. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Versión| IHL | Tipo Servicio | Longitud Total | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Identificación |Flags| Posición | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Tiempo de Vida | Protocolo | Suma de Control de Cabecera | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Dirección de Origen | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Dirección de Destino | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Opciones | Relleno | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ...IP HEADER
  • 14. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Puerto de origen | Puerto de destino | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Número de secuencia | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Número de acuse de recibo | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Posic | |U|A|P|R|S|F| | | de los| Reservado |R|C|S|S|Y|I| Ventana | | datos | |G|K|H|T|N|N| | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Suma de control | Puntero urgente | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Opciones | Relleno | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Datos | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ...TCP HEADER
  • 15.
  • 16.
  • 17. <...código...> unsigned char tcpoptions[4]; char tcpOptions[] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0xa0, 0xa1}; char tcpOptionsLen[] = {0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf}; char tcpOptionsPadding[] = {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0xa0, 0xa1}; <...código...> for(u=0; u < sizeof(tcpOptionsPadding); u++){ <...código...> for(a=0; a < sizeof(tcpOptionsPadding); a++){ <...código...> for(i=0; i < sizeof(tcpOptionsLen); i++){ <...código...> for(o=0;o<sizeof(tcpOptions);o++){ <...código...> tcpoptions[0]=tcpOptions[o]; tcpoptions[1]=tcpOptionsLen[i]; tcpoptions[2]=tcpOptionsPadding[a]; tcpoptions[3]=tcpOptionsPadding[u]; <...código...> fuzzball2.c ... Generación de TCP Options
  • 19.  
  • 20.  
  • 21.  
  • 22.  
  • 23.  
  • 24.  
  • 25. #gcc snortrigger.c –o snortrigger; ./snortrigger localhost 200.31.33.70 127.0.0.1 31337 64876 0x05020000 SIGSEGV !! +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Dirección Origen= | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Dirección Destino= | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Puerto de origen= | Puerto de destino= | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Opciones= | Relleno | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ IP TCP
  • 26.  
  • 27.  
  • 29. ¿ PREGUNTAS? ... COMENTARIOS?
  • 30.
  • 31. ...GRACIAS Alejandro Hernández [email_address] http://www.genexx.org/nitrous/