Escaneo de puertos con Python

En este artículo aprenderemos a cómo hacer un escaneo de puertos con Python de manera rápida y sencilla. ¡Sigue leyendo!

Cómo hacer un escaneo de puertos con Python
Escaneo de puertos con Python

❐ También te puede interesar: Cómo instalar lxml en Python

Cómo hacer un escaneo de puertos con Python

Dado que habrá demostración de líneas de código, es necesario conocer al menos los fundamentos de la programación en Python para entender lo que se demostrará.

El código para realizar un escaneo de puertos es el siguiente:

#!/usr/bin/python3
# coding: utf-8

import sys
import socket

ipAddress = sys.argv[1]

for ports in range(1,65535):
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

    if s.connect_ex((ipAddress, ports)) == 0:
        print(f"Porta {ports} Aberta!")
        s.close()

Como podemos ver, el «import socket, sys» sirve para importar la librería SOCKET, que se encargará de hacer una especie de puente entre un ordenador y otro, es decir, se encarga de establecer la conexión entre dos ordenadores.

La librería SYS son los comandos del sistema operativo, es decir, todo lo que escribamos en nuestro sistema Python podrá ser interpretado por Linux como si se estuviera escribiendo en la terminal de Linux. Con esto podemos pasar argumentos a nuestro script para interpretarlos y procesarlos.

Te puede interesar:  Cómo instalar Beautiful Soup en Python

A continuación, utilizamos el comando «for ports in range(1,65535):». Este comando se utiliza para abrir una especie de bucle, haciendo que todos los comandos dentro de este bucle se ejecuten 65535 veces.

La variable «s» representa la creación de nuestro SOCKET y en cada conexión realizada por Python siempre debe haber un socket creado y declarado de esa manera.

Después de crear el socket, creamos una condición que compruebe que no hay ningún error de conexión al intentar establecer la conexión desde nuestra máquina al objetivo, que ponemos delante en el nombre de nuestro script, así «sys,argv[1]».

Si no hay ningún error de conexión, el script comprobará qué puertos de nuestro objetivo están abiertos.

Ejecución de la secuencia de comandos

Después de escribir las líneas de código, guardamos nuestro script con el nombre portscan.py y le damos permiso de lectura y ejecución (chmod 755 portscan.py), para poder ejecutarlo:

python3 portscan.py + IP do host
Cómo hacer un escaneo de puertos con Python
Resultado final

Y listo, ya abremos realizado un escaneo de puertos con Python con pocos comandos y sobre todo de manera rápida.

Te puede interesar:  Cómo instalar lxml en Python

Deja un comentario