From 41f6f3af32c70df6bda284feafb5bfb29b50174e Mon Sep 17 00:00:00 2001 From: Manuel Vergara Date: Fri, 9 Jun 2023 00:19:10 +0200 Subject: [PATCH] Add exercise 10 by script-hacking course Signed-off-by: Manuel Vergara --- scripts-hacking-etico/README.md | 26 ++++++++++++++++++++++++ scripts-hacking-etico/src/10-pylibnet.py | 25 +++++++++++++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 scripts-hacking-etico/src/10-pylibnet.py diff --git a/scripts-hacking-etico/README.md b/scripts-hacking-etico/README.md index dd24e7d..9dbbcdc 100644 --- a/scripts-hacking-etico/README.md +++ b/scripts-hacking-etico/README.md @@ -345,6 +345,8 @@ Utilizamos libnet_build_ethernet para construir el paquete Ethernet, especifican Finalmente, utilizamos libnet_write para enviar el paquete a la red. +En teoria, deberíamos instalar pylibnet y aplicar este script: + ```python from pylibnet import * @@ -372,6 +374,30 @@ libnet_build_ethernet( libnet_write(packet) ``` +Pero resulta que pulibnet tiene problemas de incompatibilidad con python3. Se puede volver a una versión anterior de python, o también, se puede hacer el mismo script con scapy: + +```python +from scapy.all import * + +# Crear un paquete Ethernet +packet = Ether() + +# Definir la dirección MAC de origen y destino +src_mac = "00:11:22:33:44:55" +dst_mac = "AA:BB:CC:DD:EE:FF" + +# Definir el mensaje de texto +message = "Hola, este es un mensaje" + +# Construir el paquete Ethernet +packet.src = src_mac +packet.dst = dst_mac +packet.type = 0x0800 # Tipo de protocolo IP +packet.payload = message + +# Enviar el paquete +sendp(packet) +``` ## Ejercicio propuesto por chatGPT El ejercicio consistirá en crear un script de pruebas de penetración que realice lo siguiente: diff --git a/scripts-hacking-etico/src/10-pylibnet.py b/scripts-hacking-etico/src/10-pylibnet.py new file mode 100644 index 0000000..83b739d --- /dev/null +++ b/scripts-hacking-etico/src/10-pylibnet.py @@ -0,0 +1,25 @@ +""" +instalar la biblioteca de Python `pylibnet` y +crear un paquete de red personalizado +que contenga un mensaje de texto. +""" +from scapy.all import * + +# Crear un paquete Ethernet +packet = Ether() + +# Definir la dirección MAC de origen y destino +src_mac = "00:11:22:33:44:55" +dst_mac = "AA:BB:CC:DD:EE:FF" + +# Definir el mensaje de texto +message = "Hola, este es un mensaje" + +# Construir el paquete Ethernet +packet.src = src_mac +packet.dst = dst_mac +packet.type = 0x0800 # Tipo de protocolo IP +packet.payload = message + +# Enviar el paquete +sendp(packet)