Articles of Scapy

No se puede enviar el paquete Scapy a través de un socket sin procesar en python

Un simple zócalo sin procesar cliente-servidor donde el cliente envía un paquete personalizado y lo recibirá del servidor. Aquí está mi código. Client.py #!/usr/bin/env python import socket import sys from scapy.all import * sock = socket.socket(socket.AF_PACKET, socket.SOCK_RAW) try: a=Ether(dst=”90:**:**:**:**:75″, src=”90:**:**:**:**:96″)/IP(src=”192.168.240.5″, dst=”192.168.240.1″)/TCP(sport=10000,dport=10000)/”HELLO” a.show() sendp(a) finally: print >>sys.stderr, ‘closing socket’ sock.close() Salida: ###[ Ethernet ]### dst = […]

Scapy sniff () en una clase sin subprocesos threading.Thread ()

Tengo un problema extraño con la función Scapy sniff (). Así es como se ve mi clase: from scapy.all import * import sys import datetime import Queue from threading import Thread class packet_sniffer(Thread): def __init__(self,pass_queue): super(packet_sniffer,self).__init__() print ‘Packet sniffer started’ self.queue=pass_queue self.device_dict={} self.not_an_ap={} def PacketHandler(self,pkt): if pkt.haslayer(Dot11): sig_str = -(256-ord(pkt.notdecoded[-4:-3])) mac_addr=”” ssid=”” try: mac_addr=pkt.addr2 ssid=pkt.info […]

¿Cómo identifica la interfaz de un paquete mientras escucha el tráfico de red en todos los dispositivos?

Estoy escribiendo un progtwig de Python que necesita escuchar el tráfico en todos los dispositivos de red e identificar los paquetes según su interfaz entrante. Para escuchar en todas las interfaces comencé mi captura sin especificar un dispositivo, pero no puedo denotar la interfaz de un paquete en particular. ¿Cómo se hace esto?

Scapy no envía paquetes ipv6

Hola a todos, soy nuevo aquí, así que por favor sea amable. He estado usando scapy últimamente para enviar y recibir paquetes ipv6 a los servidores habilitados para ipv6 seleccionados. La esencia del código está aquí: text = line[:-1] #destination=getIPv6Addr(line[:-1]) destination=”2607:f1c0:1000:60e0:7992:97f7:61b2:2814″ source=”2001:630:d0:f105:5cfe:e988:421a:a7b7″ syn = IPv6(dst=destination,src=source) / TCP(sport=555,dport=80,flags=”S”)#flag S is syn packet syn.show() syn_ack = sr1(syn,timeout=11) […]

Consigue todas las capas en un paquete.

¿Cómo puedo obtener una lista de todas las capas en scapy? Ej .: Ether/IP/UDP/DNS o Ether/IP/TCP/HTTP . Lo único que se me ocurre es hacer un packet.summary() y analizar la salida, que parece muy burda. Creo que debería haber un método incorporado, pero no puedo encontrar ninguno en la documentación. ¿Alguna sugerencia? Lo que estoy […]

Descomprimir una carga gzip de un paquete con Python

Actualmente estoy trabajando en un progtwig que toma un archivo .pcap y separa todos los paquetes por ip usando el paquete scapy. Quiero descomprimir las cargas útiles que están comprimidas usando el paquete gzip. Puedo decir si la carga útil está comprimida porque contiene Content-Encoding: gzip Estoy tratando de usar fileStream = StringIO.StringIO(payload) gzipper = […]

¿Comparando sums de comprobación TCP con Scapy?

Estoy tratando de identificar paquetes con sums de comprobación incorrectas mientras uso Scapy como detector. Soy capaz de obtener la sum de comprobación original al acceder packet[TCP].chksum Entonces elimino esto usando del packet[TCP].chksum Me gustaria hacer algo como if(originalChecksum == recomputedChecksum): # Checksum is valid Entiendo que usar show2 () vuelve a calcular la sum […]

scapy: error enviando paquetes

Soy nuevo en scapy y estoy siguiendo algunos tutoriales en línea, pero estoy atascado en este problema. Puedo enviar paquetes a través de una conexión por cable, pero cuando lo bash con una conexión inalámbrica, enfrento este error. Intenté buscar en google pero no fue de ninguna ayuda. Espero encontrar una solución. Gracias por adelantado. […]

Instalación de Scapy en una Mac: “ImportError: no hay un módulo llamado pcapy”

Estoy tratando de ejecutar un script en python que involucra scapy pero parece que no consigo que se ejecute. Sigo recibiendo este error ImportError: No hay módulo llamado pcapy El script que estoy tratando de ejecutar es: from scapy.all import * def arp_display(pkt): if pkt[ARP].op == 1: #who-has (request) if pkt[ARP].psrc == ‘0.0.0.0’: # ARP […]

Scapy: ¿cómo obtengo el encabezado completo del paquete IP?

En Scapy, quiero hacer coincidir manualmente los paquetes con sus correspondientes mensajes de tiempo excedido de ICMP. Necesito coincidir Campo IP-in-ICMP del paquete ICMP El encabezado IP y los primeros 8 bytes de mi paquete de datos El paquete ICMP no es un problema: icmpPayload = str (icmpPacket [ICMP] .payload) En cuanto a los primeros […]