From 5ac64d18978ca66426b17e8d9b19db43ae058b1a Mon Sep 17 00:00:00 2001 From: Manuel Vergara Date: Tue, 6 Jun 2023 17:18:11 +0200 Subject: [PATCH] Add exercise 1 by script-hacking course Signed-off-by: Manuel Vergara --- scripts-hacking-etico/README.md | 7 ++++++- scripts-hacking-etico/src/01-nmap.py | 20 ++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 scripts-hacking-etico/src/01-nmap.py diff --git a/scripts-hacking-etico/README.md b/scripts-hacking-etico/README.md index 176c5a0..a3ba0cb 100644 --- a/scripts-hacking-etico/README.md +++ b/scripts-hacking-etico/README.md @@ -36,7 +36,12 @@ Ten en cuenta que este ejercicio es solo una simulación y no debe utilizarse pa **Solución según chatGPT:** - Solución ejercicio 1: -En este ejercicio, utilizamos la biblioteca python-nmap para realizar un escaneo de puertos a una dirección IP específica. Creamos un objeto de PortScanner, luego llamamos al método scan para escanear los puertos en la dirección IP especificada. Finalmente, iteramos sobre los resultados del escaneo para imprimir el estado de cada puerto. +En este ejercicio, utilizamos la biblioteca python-nmap para realizar un escaneo de puertos a una dirección IP específica. Creamos un objeto de PortScanner, luego llamamos al método scan para escanear los puertos en la dirección IP especificada. Finalmente, iteramos sobre los resultados del escaneo para imprimir el estado de cada puerto. + +Antes de nada se debe instalar la dependencia: +```shell +pip install python-nmap +``` ```python import nmap diff --git a/scripts-hacking-etico/src/01-nmap.py b/scripts-hacking-etico/src/01-nmap.py new file mode 100644 index 0000000..6a0f443 --- /dev/null +++ b/scripts-hacking-etico/src/01-nmap.py @@ -0,0 +1,20 @@ +""" +Instalar la biblioteca de Python `python-nmap` +y realizar un escaneo de puertos +a la dirección IP `192.168.1.1` +""" + +import nmap + +# Crear un objeto de escaner de puertos +scanner = nmap.PortScanner() + +# Escanear los puertos en la dirección IP +result = scanner.scan('192.168.1.1', '1-1000') + +# Imprimir los resultados del escaneo + +for port in result['scan']['192.168.1.1']['tcp']: + state = result['scan']['192.168.1.1']['tcp'][port]['state'] + + print(f'Puerto {port} está {state}')