Ir para conteúdo
Fórum Script Brasil

alexspmiranda

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que alexspmiranda postou

  1. Boa tarde, galera. Estou postando aqui um código de portscan que eu fiz utilizando threads para quem quiser usar ou aprimorar. Ainda estou aprendendo usar Python e com certeza o código precisa ser melhorado porque possui um erro em relação as threads que as vezes uma executa a mesma coisa que a outra. Também estou com uma dúvida, quando ela passa pelas portas 80 e 443, que são portas que permanecem abertas por padrão, não reconhece. Alguém saberia me dizer porque? Segue o código: import threading import random import socket import array import sys IP = raw_input("Entre com o ip:") INICIO = int(raw_input("Entre com o inicio:")) #digite um ip FIM = int(raw_input("Entre com o final:")) class Escaneia(threading.Thread): def __init__(self, IP, INICIO, FIM, MINI, MAXI, TIME): threading.Thread.__init__(self) self.IP = IP self.INICIO = INICIO self.FIM = FIM self.MINI = MINI self.MAXI = MAXI self.TIME = TIME def run(self): try: for i in range(INICIO,FIM): NUM = str(i) HOST = IP+NUM PORT = 0 #varrendo as portas for PORT in range(Send_min, Send_max): try: #print "varrendo..." #criando o socket tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #conectando.... res = tcp.connect_ex((HOST, PORT)) #print "\n", PORT #name = socket.gethostname() #caso seja diferente de zero, a porta esta fechada if res == 0: print "IP: ", HOST, "\nporta: ", PORT, "aberta" tcp.close() thrd = threading.Timer(float(self.TIME), self.timef) thrd.start() thrd.join() except: print "ERRO!!!!" except: print "Erro ao scanear" def timef(self): return 0 qtdThread = 8 qtdPortas = 1024 contThread = qtdPortas/qtdThread threadrun = ["string", (1), 1, 1, 1, 1.0]*qtdThread MINI = array.array('i',(0 for i in range(0,qtdThread))) MAXI = array.array('i',(0 for i in range(0,qtdThread))) for i in range(0,qtdThread): MINI = (contThread * i) MAXI = (contThread *(i+1)-1) Send_min = MINI Send_max = MAXI threadrun = Escaneia(IP, INICIO, FIM, Send_min, Send_max, 0.001) threadrun.start() Abração.
×
×
  • Criar Novo...