Creare un port scanner in Python

Mattepuffo's logo
Creare un port scanner in Python

Creare un port scanner in Python

Preciso che l'ho testato solo su Python 3; non so che modifiche vadano fatte per la versione 2.

Qui useremo le socket e il multi-threading con il modulo threading per velocizzare il tutto.

Faremo il classico scanner di tutte le porte fino alla 65535.

Il tutto verrà fatto in pochi secondi.

Ecco il codice:

import socket
import threading

target = '192.168.1.185'

def scanPort(port):
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.settimeout(0.5)

    try:
        con = s.connect((target, port))
        print('Porta :', port, " aperta")
        con.close()
    except:
        pass

if __name__ == "__main__":
    r = 1
    for x in range(1, 65535):
        t = threading.Thread(target=scanPort, kwargs={'port': r})
        r += 1
        t.start()

Provate per vedere la velocità con cui viene fatta la scansione.

Enjoy!


Condividi

Commentami!