Construindo um portscanner TCP com Python
Implementação de um portscanner básico em Python a fim de compreender um pouco o funcionamento de ferramentas como NMAP e sockets TCP.
[ Hits: 12.855 ]
Por: Perfil removido em 05/11/2018
import sys import socket def main(): args = sys.argv if len(args) < 2: print("[!]Falta argumentos para o programa! Saindo...") sys.exit(1) ip = args[1] portas = args[2] if len(args) >= 3 else "1:65536" portas = (x for x in range(int(portas.split(":")[0]), int(portas.split(":")[1])+1)) scan(ip, portas) def banner(sckt, ip, porta): try: sckt.settimeout(1) sckt.connect((ip, porta)) banner = sckt.recv(1024).decode().strip() assert banner return banner except: return "Unknown" def child(ip, port): try: s = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0) s.settimeout(0.3) if s.connect_ex((ip, port)) == 0: print("{}/tcp open".format(port), end="|") print(banner(s, ip, port)) except: pass def scan(ip, portas): for c in portas: child(ip, c) if __name__ == '__main__': main()
def scan(ip, portas): for c in portas: t = Thread(target=child, args=(ip, c)) t.start()
Rodando o Windows 3.1 no Linux
Porque se aventurar no Linux (parte 2) - Instalei, e agora?
RAID 1 em Debian com sistema já instalado
PEP 8 - Guia de estilo para código Python
Programe em Python no jogo Minecraft com seu filho ou sozinho
Interagindo com servidores HTTP com Python
Python - Uma linguagem orientada a objetos
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
Git config não aplica configurações
O que você quer para sua vida ao usar o Linux?
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Já estou acreditando que não há limites... (1)
Linux mint só reproduz vídeos em navegadores se estiverem mutados [RES... (2)
Alerta Google Chrome 138.0.7204.10... (3)