SlideShare una empresa de Scribd logo
1 de 34
Scapy Generación y manipulación básica de paquetes de red David Cristóbal López “ Osito” Arroutada 18 – A Coruña 17 a 20 de Noviembre de 2011
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Índice
[object Object],[object Object],[object Object],[object Object],[object Object],¿Qué es Scapy?
[object Object],[object Object],[object Object],[object Object],[object Object],¿Qué es Scapy?
Scapy es capaz de “diseccionar” la mayoría de protocolos que existen (IP, Ethernet, STP, HSRP…) Para ver todos los protocolos que soporta, se usa el comando  ls() Protocolos Protocolos
ARP ASN1_Packet BOOTP CookedLinux DHCP DNS DNSQR DNSRR Dot11 Dot11ATIM Dot11AssoReq Dot11AssoResp Dot11Auth Dot11Beacon Dot11Deauth Dot11Disas Dot11Elt Dot11ProbeReq Dot11ProbeResp Dot11QoS Dot11ReassoReq Dot11ReassoResp Dot11WEP Dot1Q Dot3 EAP EAPOL Ether GPRS GRE HCI_ACL_Hdr HCI_Hdr Protocolos HDLC HSRP ICMP ICMPerror IP IPerror IPv6 ISAKMP ISAKMP_class ISAKMP_payload ISAKMP_payload_Hash ISAKMP_payload_ID ISAKMP_payload_KE ISAKMP_payload_Nonce ISAKMP_payload_Proposal ISAKMP_payload_SA ISAKMP_payload_Transform ISAKMP_payload_VendorID IrLAPCommand IrLAPHead IrLMP L2CAP_CmdHdr L2CAP_CmdRej L2CAP_ConfReq L2CAP_ConfResp L2CAP_ConnReq L2CAP_ConnResp L2CAP_DisconnReq L2CAP_DisconnResp L2CAP_Hdr L2CAP_InfoReq L2CAP_InfoResp L2TP LLC MGCP MobileIP MobileIPRRP MobileIPRRQ MobileIPTunnelData NBNSNodeStatusResponse NBNSNodeStatusResponseEnd NBNSNodeStatusResponseService NBNSQueryRequest NBNSQueryResponse NBNSQueryResponseNegative NBNSRequest NBNSWackResponse NBTDatagram NBTSession NTP NetBIOS_DS NetflowHeader NetflowHeaderV1 NetflowRecordV1 NoPayload PPP PPP_ECP PPP_ECP_Option PPP_IPCP PPP_IPCP_Option PPPoE PPPoED Packet Padding PrismHeader RIP RIPEntry RTP RadioTap Radius Raw SMBMailSlot SMBNegociate_Protocol_Request_Header SMBNegociate_Protocol_Request_Tail SMBNegociate_Protocol_Response_Advanced_Security SMBNegociate_Protocol_Response_No_Security SMBNegociate_Protocol_Response_No_Security_No_Key SMBNetlogon_Protocol_Response_Header SMBNetlogon_Protocol_Response_Tail_LM20 SMBNetlogon_Protocol_Response_Tail_SAM SMBSession_Setup_AndX_Request SMBSession_Setup_AndX_Response SNAP SNMP SNMPbulk SNMPget SNMPinform SNMPnext SNMPresponse SNMPset SNMPtrapv1 SNMPtrapv2 SNMPvarbind STP SebekHead SebekV1 SebekV2 SebekV2Sock SebekV3 SebekV3Sock Skinny TCP TCPerror TFTP TFTP_ACK TFTP_DATA TFTP_ERROR TFTP_OACK TFTP_Option TFTP_Options TFTP_RRQ TFTP_WRQ UDP UDPerror X509Cert X509RDN X509v3Ext _IPv6OptionHeader Scapy 1.2.0.2 – 150 protocolos
Para el control de Scapy, disponemos de varios comandos, que pueden ser listados con el comando  lsc() Comandos Comandos
Hay comandos que no se muestran en la ayuda, como los de gestión de ficheros (rdpcap, wrpcap) o los de mostrar gráficos (psdump, pdfdump) La disponibilidad de muchos de los comandos, depende de si están instaladas las librerías adicionales para dar esa funcionalidad (desencriptación WEP, dibujo, …) Algunas de las extensiones sólo están disponibles para Linux Comandos
Para generar paquetes, hay que utilizar los protocolos antes mencionados. Se pueden generar paquetes tanto de capa 2 (Ethernet) como de capa 3 (IP), necesarios para la comunicación. Después, se añaden el resto de protocolos que necesitemos Generación de paquetes Generación de paquetes
Para generar datos de paquete de capa 2, utilizamos el protocolo Ethernet, abreviado como Ether(), indicando MAC de origen (src) y de destino (dst). Para introducir ambos campos, se separan por una coma (,) capa2=Ether(src=“00:00:0c:12:34:56”,dst=“00:fa:ba:da:00:01”) Generación de paquetes
En capa 3, tenemos más campos dentro del comando, aparte de un campo de checksum. Éste campo puede rellenarse o no, ya que se puede generar al momento de enviarse capa3=IP(src=“192.168.0.1”,dst=“10.200.250.18”) Generación de paquetes
Crear un paquete desde cero, puede ser lioso si necesitamos introducir demasiados parámetros.  paquete=Ether(src=“00:00:0c:12:34:56”,dst=“00:fa:ba:da:00:01”)/IP(src=“192.168.0.1”,dst=“10.200.250.18”) Podemos trabajar con varios “paquetes” de datos, cada uno en un tipo de capa Una vez creadas todas las capas, podemos apilarlas, generando un único paquete Apilado de capas Apilado de capas
paquete=Ether(src=“00:00:0c:12:34:56”,dst=“00:fa:ba:da:00:01”)/IP(src=“192.168.0.1”,dst=“10.200.250.18”) Apilado de capas
capa2=Ether(src=“00:00:0c:12:34:56”,dst=“00:fa:ba:da:00:01”) capa3=IP(src=“192.168.0.1”,dst=“10.200.250.18”) paquete=capa2/capa3 Apilado de capas
Evidentemente, es necesario ver de vez en cuando cómo está el paquete de datos en memoria y si lo hemos generado correctamente. Para visualizar los paquetes en memoria, tenemos 3 comandos:  show(), show2()  y  hexdump() Sintaxis: p.show()     Muestra el paquete en memoria p.show2()     Muestra el paquete rellenando los  campos que se deben autogenerar hexdump(p)     Vuelca el contenido hexadecimal Visualización Visualización
El comando  show()  nos muestra el contenido del paquete tal y como lo hemos introducido al generarlo. Es una función heredada en cada paquete de datos automáticamente NombreDelPaquete.show() Visualización
El comando  show2()  rellena automáticamente los campos que deben autogenerarse al enviarlo, como el checksum, para ver el paquete exacto que saldrá a la red NombreDelPaquete.show2() Visualización
Mediante  hexdump()  obtenemos el paquete de datos en formato hexadecimal, tal y como se mostraría en cualquier captura de red. Se le pasa como variable el nombre del paquete de datos Visualización
Una vez generado el paquete de datos, es necesario lanzarlo a la red, ya que para ello se ha creado. Podemos enviarlo como paquete de capa 2 o de capa 3, mediante los comandos  sendp()  y  send()  respectivamente. Estos comandos, generan automáticamente campos como el  Checksum.  Se le pasa como variable el nombre del paquete de datos. También podemos enviar varias veces el mismo paquete. Envío Envío
sendp(NombreDelPaquete) sendp(capa2) Envío
send(NombreDelPaquete) send(capa3) Envío
send([NombreDelPaquete]*NúmeroDeVeces) send([capa3]*10) Envío
Generar tráfico mandando paquetes de uno en uno, es lioso y complicado, aparte de lento. Por ello, podemos cargar una captura hecha con un  sniffer , tipo  Wireshark  o  tcpdump . De la misma manera, capturas modificadas con scapy pueden ser guardadas a un fichero pcap. Para ello, disponemos de los comando  rdpcap()  y  wrpcap() . También podemos capturar tráfico directamente con scapy, mediante  sniff() Manipulación de ficheros Manipulación de ficheros
rdpcap(NombreDelFichero) rdpcap(“capt.pcap”) Manipulación de ficheros
Para visualizar un único paquete, se trata como a un elemento de un array. NombreDelArray[NumeroDePaquete].show() captura[0].show() Manipulación de ficheros
Para guardar un paquete o un conjunto de paquetes en un fichero pcap, usamos  wrpcap() Debemos indicar el nombre del fichero y los datos a guardar. wrpcap(NombreDelFichero,Paquete/Array) wrpcap(“capt2.pcap”,paquete) Manipulación de ficheros
También es posible obtener directamente el tráfico de red con scapy, sin necesidad de importarlo de otros programas, mediante el comando  sniff Podemos indicar el número máximo de paquetes que queremos recibir o dejarlo obteniendo tráfico hasta pulsar Ctrl+c capturalarga=sniff() capturaacotada=sniff(50) Manipulación de ficheros
capturalarga=sniff() capturaacotada=sniff(50) Manipulación de ficheros
Cuando tenemos una captura completa y queremos modificar algún campo de algún paquete en concreto, tener que generar todo de nuevo mediante comandos sería extremadamente largo y tedioso. Tampoco podemos indicarle de nuevo el mismo protocolo, ya que lo duplicaría en el paquete o eliminaría el resto de capas. Para editar cualquier campo, es necesario indicar el paquete, el protocolo y el campo a editar. NombreDelPaquete[Protocolo].Campo=NuevoValor Edición de paquetes capturados Edición de paquetes capturados
paquete[IP].src=“172.16.0.1” Edición de paquetes capturados
capturalarga[0][Ether].dst=“ff:ff:ff:ff:ff:ff” Edición de paquetes capturados
De esta manera, podemos capturar tráfico entre equipos (STP, HSRP, VRRP…) y replicarlo cambiando valores, para realizar ataques, contraataques, manipulaciones en la elección de servidores, envenenamientos ARP, etc.) También generar paquetes desde cero para hacer ataques de  flooding  o de  spoofing , ya sea en ARP, DHCP, DNS) Edición de paquetes capturados
[object Object],[object Object],[object Object],[object Object],¿Preguntas? ¿Dudas?
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Arroutada 18 – A Coruña 17 a 20 de Noviembre de 2011

Más contenido relacionado

Destacado

La red de la Cantabria Net al descubierto
La red de la Cantabria Net al descubiertoLa red de la Cantabria Net al descubierto
La red de la Cantabria Net al descubiertoDavid Cristóbal
 
Instrumentosdemedicin11 3-140528181407-phpapp01
Instrumentosdemedicin11 3-140528181407-phpapp01Instrumentosdemedicin11 3-140528181407-phpapp01
Instrumentosdemedicin11 3-140528181407-phpapp01Margy Alejandra Hernandez
 
Fiona Lim - Why's Your Camera Bag so Heavy?
Fiona Lim - Why's Your Camera Bag so Heavy?Fiona Lim - Why's Your Camera Bag so Heavy?
Fiona Lim - Why's Your Camera Bag so Heavy?ShootFest
 
Sof&com
Sof&comSof&com
Sof&comosriva
 
Solestar Postkarte
Solestar PostkarteSolestar Postkarte
Solestar PostkarteSolestar
 
El Plan Andinia antes de la destrucción de Israel
El Plan Andinia antes de la destrucción de IsraelEl Plan Andinia antes de la destrucción de Israel
El Plan Andinia antes de la destrucción de IsraelRamón Copa
 
Payroll Diez - Cloud y Mobile: Experiencia con fábrica de software en Cuba - ...
Payroll Diez - Cloud y Mobile: Experiencia con fábrica de software en Cuba - ...Payroll Diez - Cloud y Mobile: Experiencia con fábrica de software en Cuba - ...
Payroll Diez - Cloud y Mobile: Experiencia con fábrica de software en Cuba - ...GeneXus
 
Telefonía móvil en áreas rurales: Oportunidades para la agricultura
Telefonía móvil en áreas rurales: Oportunidades para la agriculturaTelefonía móvil en áreas rurales: Oportunidades para la agricultura
Telefonía móvil en áreas rurales: Oportunidades para la agriculturaRIBDA 2009
 
Memoria 2009 Paideia ONG - Asociación Paideia
Memoria 2009 Paideia ONG - Asociación PaideiaMemoria 2009 Paideia ONG - Asociación Paideia
Memoria 2009 Paideia ONG - Asociación PaideiaPaideia Ong
 
E volve-barcelona 02-13
E volve-barcelona 02-13E volve-barcelona 02-13
E volve-barcelona 02-13fluential
 
Violeta parra -_run_run_se_fue_pal_norte
Violeta parra -_run_run_se_fue_pal_norteVioleta parra -_run_run_se_fue_pal_norte
Violeta parra -_run_run_se_fue_pal_norteFelipe Pacheco Herrera
 
Obra teatral; madre clarita sierva de dios TERMINADA
Obra teatral; madre clarita sierva de dios TERMINADAObra teatral; madre clarita sierva de dios TERMINADA
Obra teatral; madre clarita sierva de dios TERMINADALaura Rodriguez
 

Destacado (20)

Gumiparty 007
Gumiparty 007Gumiparty 007
Gumiparty 007
 
La red de la Cantabria Net al descubierto
La red de la Cantabria Net al descubiertoLa red de la Cantabria Net al descubierto
La red de la Cantabria Net al descubierto
 
Para ti sólo es un dvd
Para ti sólo es un dvdPara ti sólo es un dvd
Para ti sólo es un dvd
 
Instrumentosdemedicin11 3-140528181407-phpapp01
Instrumentosdemedicin11 3-140528181407-phpapp01Instrumentosdemedicin11 3-140528181407-phpapp01
Instrumentosdemedicin11 3-140528181407-phpapp01
 
Actividad3
Actividad3Actividad3
Actividad3
 
Fiona Lim - Why's Your Camera Bag so Heavy?
Fiona Lim - Why's Your Camera Bag so Heavy?Fiona Lim - Why's Your Camera Bag so Heavy?
Fiona Lim - Why's Your Camera Bag so Heavy?
 
Sof&com
Sof&comSof&com
Sof&com
 
Solestar Postkarte
Solestar PostkarteSolestar Postkarte
Solestar Postkarte
 
El Plan Andinia antes de la destrucción de Israel
El Plan Andinia antes de la destrucción de IsraelEl Plan Andinia antes de la destrucción de Israel
El Plan Andinia antes de la destrucción de Israel
 
Hassan sharaf c.v
Hassan sharaf c.vHassan sharaf c.v
Hassan sharaf c.v
 
Swiss Fluid SBV Ball Valve
Swiss Fluid SBV Ball ValveSwiss Fluid SBV Ball Valve
Swiss Fluid SBV Ball Valve
 
"Sustentabilidad"
"Sustentabilidad""Sustentabilidad"
"Sustentabilidad"
 
APR Ad
APR Ad APR Ad
APR Ad
 
Payroll Diez - Cloud y Mobile: Experiencia con fábrica de software en Cuba - ...
Payroll Diez - Cloud y Mobile: Experiencia con fábrica de software en Cuba - ...Payroll Diez - Cloud y Mobile: Experiencia con fábrica de software en Cuba - ...
Payroll Diez - Cloud y Mobile: Experiencia con fábrica de software en Cuba - ...
 
Telefonía móvil en áreas rurales: Oportunidades para la agricultura
Telefonía móvil en áreas rurales: Oportunidades para la agriculturaTelefonía móvil en áreas rurales: Oportunidades para la agricultura
Telefonía móvil en áreas rurales: Oportunidades para la agricultura
 
Memoria 2009 Paideia ONG - Asociación Paideia
Memoria 2009 Paideia ONG - Asociación PaideiaMemoria 2009 Paideia ONG - Asociación Paideia
Memoria 2009 Paideia ONG - Asociación Paideia
 
EPA H2020 SC5 Info Day Book of Abstracts
 EPA H2020 SC5 Info Day Book of Abstracts EPA H2020 SC5 Info Day Book of Abstracts
EPA H2020 SC5 Info Day Book of Abstracts
 
E volve-barcelona 02-13
E volve-barcelona 02-13E volve-barcelona 02-13
E volve-barcelona 02-13
 
Violeta parra -_run_run_se_fue_pal_norte
Violeta parra -_run_run_se_fue_pal_norteVioleta parra -_run_run_se_fue_pal_norte
Violeta parra -_run_run_se_fue_pal_norte
 
Obra teatral; madre clarita sierva de dios TERMINADA
Obra teatral; madre clarita sierva de dios TERMINADAObra teatral; madre clarita sierva de dios TERMINADA
Obra teatral; madre clarita sierva de dios TERMINADA
 

Similar a Scapy Generación y manipulación básica de paquetes de red

Comandos utilizados en redes anderson alvarado 6to computacion
Comandos utilizados en redes anderson alvarado 6to computacionComandos utilizados en redes anderson alvarado 6to computacion
Comandos utilizados en redes anderson alvarado 6to computacionAnder Alvarado
 
How to medidas de desempeño
How to medidas de desempeñoHow to medidas de desempeño
How to medidas de desempeñomiss051
 
Herramientas Administrativas de Red
Herramientas Administrativas de RedHerramientas Administrativas de Red
Herramientas Administrativas de Redcyberleon95
 
Herramientas de red de los sistemas operativos
Herramientas de red de los sistemas operativosHerramientas de red de los sistemas operativos
Herramientas de red de los sistemas operativosyoes1053
 
Añadir host a gns3
Añadir host a gns3Añadir host a gns3
Añadir host a gns3Guiro Lin
 
Comandos para redes
Comandos para redesComandos para redes
Comandos para redesguajiro27
 
Taller comandos para solucionar problemas en la red
Taller comandos para  solucionar problemas en la redTaller comandos para  solucionar problemas en la red
Taller comandos para solucionar problemas en la redguestf6e4f00
 
Administración de red servidores y seguridad
Administración de red servidores y seguridadAdministración de red servidores y seguridad
Administración de red servidores y seguridadEmilio
 
Airbase y KARMetasploit
Airbase y KARMetasploitAirbase y KARMetasploit
Airbase y KARMetasploitDaniel
 
Herramientas de seguridad SSI
Herramientas de seguridad SSIHerramientas de seguridad SSI
Herramientas de seguridad SSIxoanGz
 

Similar a Scapy Generación y manipulación básica de paquetes de red (20)

Comandos de red
Comandos de redComandos de red
Comandos de red
 
Comandos de red
Comandos de redComandos de red
Comandos de red
 
Comandos utilizados en redes anderson alvarado 6to computacion
Comandos utilizados en redes anderson alvarado 6to computacionComandos utilizados en redes anderson alvarado 6to computacion
Comandos utilizados en redes anderson alvarado 6to computacion
 
How to medidas de desempeño
How to medidas de desempeñoHow to medidas de desempeño
How to medidas de desempeño
 
Curso Redes Linex 5
Curso Redes Linex 5Curso Redes Linex 5
Curso Redes Linex 5
 
Curso Redes Linex 5
Curso Redes Linex 5Curso Redes Linex 5
Curso Redes Linex 5
 
Protocolo TCP/IP en Linux
Protocolo TCP/IP en Linux Protocolo TCP/IP en Linux
Protocolo TCP/IP en Linux
 
Herramientas Administrativas de Red
Herramientas Administrativas de RedHerramientas Administrativas de Red
Herramientas Administrativas de Red
 
7.herramientas de redes
7.herramientas de redes7.herramientas de redes
7.herramientas de redes
 
Herramientas de red de los sistemas operativos
Herramientas de red de los sistemas operativosHerramientas de red de los sistemas operativos
Herramientas de red de los sistemas operativos
 
Añadir host a gns3
Añadir host a gns3Añadir host a gns3
Añadir host a gns3
 
Comandos para redes
Comandos para redesComandos para redes
Comandos para redes
 
Taller comandos para solucionar problemas en la red
Taller comandos para  solucionar problemas en la redTaller comandos para  solucionar problemas en la red
Taller comandos para solucionar problemas en la red
 
Redes
RedesRedes
Redes
 
Administración de red servidores y seguridad
Administración de red servidores y seguridadAdministración de red servidores y seguridad
Administración de red servidores y seguridad
 
Informe laboratorio 1
Informe laboratorio 1Informe laboratorio 1
Informe laboratorio 1
 
Airbase y KARMetasploit
Airbase y KARMetasploitAirbase y KARMetasploit
Airbase y KARMetasploit
 
Snmp
SnmpSnmp
Snmp
 
Ejercicios de redes e internet 1
Ejercicios de redes e internet 1Ejercicios de redes e internet 1
Ejercicios de redes e internet 1
 
Herramientas de seguridad SSI
Herramientas de seguridad SSIHerramientas de seguridad SSI
Herramientas de seguridad SSI
 

Último

Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..RobertoGumucio2
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
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
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 

Último (20)

Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
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
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 

Scapy Generación y manipulación básica de paquetes de red

  • 1. Scapy Generación y manipulación básica de paquetes de red David Cristóbal López “ Osito” Arroutada 18 – A Coruña 17 a 20 de Noviembre de 2011
  • 2.
  • 3.
  • 4.
  • 5. Scapy es capaz de “diseccionar” la mayoría de protocolos que existen (IP, Ethernet, STP, HSRP…) Para ver todos los protocolos que soporta, se usa el comando ls() Protocolos Protocolos
  • 6. ARP ASN1_Packet BOOTP CookedLinux DHCP DNS DNSQR DNSRR Dot11 Dot11ATIM Dot11AssoReq Dot11AssoResp Dot11Auth Dot11Beacon Dot11Deauth Dot11Disas Dot11Elt Dot11ProbeReq Dot11ProbeResp Dot11QoS Dot11ReassoReq Dot11ReassoResp Dot11WEP Dot1Q Dot3 EAP EAPOL Ether GPRS GRE HCI_ACL_Hdr HCI_Hdr Protocolos HDLC HSRP ICMP ICMPerror IP IPerror IPv6 ISAKMP ISAKMP_class ISAKMP_payload ISAKMP_payload_Hash ISAKMP_payload_ID ISAKMP_payload_KE ISAKMP_payload_Nonce ISAKMP_payload_Proposal ISAKMP_payload_SA ISAKMP_payload_Transform ISAKMP_payload_VendorID IrLAPCommand IrLAPHead IrLMP L2CAP_CmdHdr L2CAP_CmdRej L2CAP_ConfReq L2CAP_ConfResp L2CAP_ConnReq L2CAP_ConnResp L2CAP_DisconnReq L2CAP_DisconnResp L2CAP_Hdr L2CAP_InfoReq L2CAP_InfoResp L2TP LLC MGCP MobileIP MobileIPRRP MobileIPRRQ MobileIPTunnelData NBNSNodeStatusResponse NBNSNodeStatusResponseEnd NBNSNodeStatusResponseService NBNSQueryRequest NBNSQueryResponse NBNSQueryResponseNegative NBNSRequest NBNSWackResponse NBTDatagram NBTSession NTP NetBIOS_DS NetflowHeader NetflowHeaderV1 NetflowRecordV1 NoPayload PPP PPP_ECP PPP_ECP_Option PPP_IPCP PPP_IPCP_Option PPPoE PPPoED Packet Padding PrismHeader RIP RIPEntry RTP RadioTap Radius Raw SMBMailSlot SMBNegociate_Protocol_Request_Header SMBNegociate_Protocol_Request_Tail SMBNegociate_Protocol_Response_Advanced_Security SMBNegociate_Protocol_Response_No_Security SMBNegociate_Protocol_Response_No_Security_No_Key SMBNetlogon_Protocol_Response_Header SMBNetlogon_Protocol_Response_Tail_LM20 SMBNetlogon_Protocol_Response_Tail_SAM SMBSession_Setup_AndX_Request SMBSession_Setup_AndX_Response SNAP SNMP SNMPbulk SNMPget SNMPinform SNMPnext SNMPresponse SNMPset SNMPtrapv1 SNMPtrapv2 SNMPvarbind STP SebekHead SebekV1 SebekV2 SebekV2Sock SebekV3 SebekV3Sock Skinny TCP TCPerror TFTP TFTP_ACK TFTP_DATA TFTP_ERROR TFTP_OACK TFTP_Option TFTP_Options TFTP_RRQ TFTP_WRQ UDP UDPerror X509Cert X509RDN X509v3Ext _IPv6OptionHeader Scapy 1.2.0.2 – 150 protocolos
  • 7. Para el control de Scapy, disponemos de varios comandos, que pueden ser listados con el comando lsc() Comandos Comandos
  • 8. Hay comandos que no se muestran en la ayuda, como los de gestión de ficheros (rdpcap, wrpcap) o los de mostrar gráficos (psdump, pdfdump) La disponibilidad de muchos de los comandos, depende de si están instaladas las librerías adicionales para dar esa funcionalidad (desencriptación WEP, dibujo, …) Algunas de las extensiones sólo están disponibles para Linux Comandos
  • 9. Para generar paquetes, hay que utilizar los protocolos antes mencionados. Se pueden generar paquetes tanto de capa 2 (Ethernet) como de capa 3 (IP), necesarios para la comunicación. Después, se añaden el resto de protocolos que necesitemos Generación de paquetes Generación de paquetes
  • 10. Para generar datos de paquete de capa 2, utilizamos el protocolo Ethernet, abreviado como Ether(), indicando MAC de origen (src) y de destino (dst). Para introducir ambos campos, se separan por una coma (,) capa2=Ether(src=“00:00:0c:12:34:56”,dst=“00:fa:ba:da:00:01”) Generación de paquetes
  • 11. En capa 3, tenemos más campos dentro del comando, aparte de un campo de checksum. Éste campo puede rellenarse o no, ya que se puede generar al momento de enviarse capa3=IP(src=“192.168.0.1”,dst=“10.200.250.18”) Generación de paquetes
  • 12. Crear un paquete desde cero, puede ser lioso si necesitamos introducir demasiados parámetros. paquete=Ether(src=“00:00:0c:12:34:56”,dst=“00:fa:ba:da:00:01”)/IP(src=“192.168.0.1”,dst=“10.200.250.18”) Podemos trabajar con varios “paquetes” de datos, cada uno en un tipo de capa Una vez creadas todas las capas, podemos apilarlas, generando un único paquete Apilado de capas Apilado de capas
  • 15. Evidentemente, es necesario ver de vez en cuando cómo está el paquete de datos en memoria y si lo hemos generado correctamente. Para visualizar los paquetes en memoria, tenemos 3 comandos: show(), show2() y hexdump() Sintaxis: p.show()  Muestra el paquete en memoria p.show2()  Muestra el paquete rellenando los campos que se deben autogenerar hexdump(p)  Vuelca el contenido hexadecimal Visualización Visualización
  • 16. El comando show() nos muestra el contenido del paquete tal y como lo hemos introducido al generarlo. Es una función heredada en cada paquete de datos automáticamente NombreDelPaquete.show() Visualización
  • 17. El comando show2() rellena automáticamente los campos que deben autogenerarse al enviarlo, como el checksum, para ver el paquete exacto que saldrá a la red NombreDelPaquete.show2() Visualización
  • 18. Mediante hexdump() obtenemos el paquete de datos en formato hexadecimal, tal y como se mostraría en cualquier captura de red. Se le pasa como variable el nombre del paquete de datos Visualización
  • 19. Una vez generado el paquete de datos, es necesario lanzarlo a la red, ya que para ello se ha creado. Podemos enviarlo como paquete de capa 2 o de capa 3, mediante los comandos sendp() y send() respectivamente. Estos comandos, generan automáticamente campos como el Checksum. Se le pasa como variable el nombre del paquete de datos. También podemos enviar varias veces el mismo paquete. Envío Envío
  • 23. Generar tráfico mandando paquetes de uno en uno, es lioso y complicado, aparte de lento. Por ello, podemos cargar una captura hecha con un sniffer , tipo Wireshark o tcpdump . De la misma manera, capturas modificadas con scapy pueden ser guardadas a un fichero pcap. Para ello, disponemos de los comando rdpcap() y wrpcap() . También podemos capturar tráfico directamente con scapy, mediante sniff() Manipulación de ficheros Manipulación de ficheros
  • 25. Para visualizar un único paquete, se trata como a un elemento de un array. NombreDelArray[NumeroDePaquete].show() captura[0].show() Manipulación de ficheros
  • 26. Para guardar un paquete o un conjunto de paquetes en un fichero pcap, usamos wrpcap() Debemos indicar el nombre del fichero y los datos a guardar. wrpcap(NombreDelFichero,Paquete/Array) wrpcap(“capt2.pcap”,paquete) Manipulación de ficheros
  • 27. También es posible obtener directamente el tráfico de red con scapy, sin necesidad de importarlo de otros programas, mediante el comando sniff Podemos indicar el número máximo de paquetes que queremos recibir o dejarlo obteniendo tráfico hasta pulsar Ctrl+c capturalarga=sniff() capturaacotada=sniff(50) Manipulación de ficheros
  • 29. Cuando tenemos una captura completa y queremos modificar algún campo de algún paquete en concreto, tener que generar todo de nuevo mediante comandos sería extremadamente largo y tedioso. Tampoco podemos indicarle de nuevo el mismo protocolo, ya que lo duplicaría en el paquete o eliminaría el resto de capas. Para editar cualquier campo, es necesario indicar el paquete, el protocolo y el campo a editar. NombreDelPaquete[Protocolo].Campo=NuevoValor Edición de paquetes capturados Edición de paquetes capturados
  • 32. De esta manera, podemos capturar tráfico entre equipos (STP, HSRP, VRRP…) y replicarlo cambiando valores, para realizar ataques, contraataques, manipulaciones en la elección de servidores, envenenamientos ARP, etc.) También generar paquetes desde cero para hacer ataques de flooding o de spoofing , ya sea en ARP, DHCP, DNS) Edición de paquetes capturados
  • 33.
  • 34.