Jump to content
Do Zero Ao Um - ABRIREMOS INSCRIÇÕES AO VIVO! - LIVE Terça-feira 25/06 às 19h - mente.in/youtube ×

Problema com port scanner em Python


bornman

Recommended Posts

Fala pessoal, peguei na internet uma base para um port scanner em Python porém aparentemente ele está "travando", tentei fazer com menos portas para testar se era eu que não estava esperando o tempo necessário mas não deu certo também. 
Segue o código: 

import socket
import subprocess
import sys
from datetime  import datetime

subprocess.call('cls', shell=True)

host = input("Enter the host to scan: ")
hostipv4 = socket.gethostbyname(host)

print("-"*60)
print("       Please wait, scanning", hostipv4,"..." )
print("-"*60)

t1 = datetime.now()

try:
    for port in range(1, 1025):
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        result = sock.connect_ex((hostipv4, port))
        if (result == 0):
            print("Port {}:     Open").format(port)
            sock.close

except socket.gaierror:
    print("Hostname could not be resolver. Exiting...")
    sys.exit()
except socket.error:
    print("Couldn't connect to server.")
    sys.exit()

t2 = datetime.now()
total = t2-t1
print("Total scan time: ", total)

 

Link to comment
Share on other sites

Estás com erro na sintaxe...

Erro:

  print("Port {}:     Open").format(port)

Forma correta:

print("Port {}:     Open".format(port))

Após ter feito essa correção aqui funcionou perfeitmente, se quiseres ao aumentar o número de portos convém implementar um sistema de threads.

Link to comment
Share on other sites

Em 23/03/2018 em 08:42, gnoo disse:

Estás com erro na sintaxe...

Erro:


  print("Port {}:     Open").format(port)

Forma correta:


print("Port {}:     Open".format(port))

Após ter feito essa correção aqui funcionou perfeitmente, se quiseres ao aumentar o número de portos convém implementar um sistema de threads.

Opa, funcionou. Obrigado!
Existe um jeito de scannear portas de forma mais rápida com o python?

Link to comment
Share on other sites

A forma de o fazer mais rápido é com threads, pesquisa sobre o módulo threading do python.

Mas é importante que sejas tu a escrever esse código, mesmo que tires ideias de códigos de terceiros, só fazer copy/paste não te vai ajudar muito.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...