Simple wireless scanner
Publicado por Jonathan (última atualização em 11/11/2023)
[ Hits: 4.781 ]
Simples script em Python que descobre todas as redes Wireless próximas e exibe suas informações, e o resultado de um pouco de pesquisa na z-library usando torbrowser.
#freefreepalestine
from scapy.all import * from time import sleep from threading import Thread import subprocess import argparse ap_list = [] class AP: """Armazena informação sobre uma rede.""" def __init__(self, essid, bssid): self.essid = essid.decode('utf-8') # Nome da rede self.bssid = bssid # MAC do pointo de acesso return def show(self): """Mostra informação sobre o objeto""" print(f"[+] ESSID: {self.essid:<40} -- BSSID: {self.bssid.upper()}") return def set_channel(interface, channel): command = ["iwconfig", interface, "channel", f"{ channel }"] # executa o commando iwconfig err = subprocess.run(command, stderr=subprocess.PIPE) if err.stderr: print(f"error: { err.stderr }") quit() return def network_scanner(interface): """ Pesquisa todas as redes wifi proximas e salva o ESSID e o BSSID. """ """ Adiciona as redes para network_list. """ def exists(bssid): """Não permite duplicata.""" global ap_list for n in ap_list: if n.bssid == bssid: return True # Já existe uma rede com esse endereço. return False def probe(frame): global ap_list if frame.haslayer(Dot11Beacon): if not exists(frame.addr2): ap = AP(frame.info, frame.addr2) # nova rede ap_list.append(ap) return print("[+] SCANNING...", end='') for i in range(1,12): set_channel(interface, i) # Capitura pacotes por 5 segundos e verifica se são anucios de rede t = AsyncSniffer(iface=interface, prn=probe) t.start() for _ in range(25): sleep(0.2) print(".",end='') print() return def main(): parser = argparse.ArgumentParser() # processa argumentos da linha de commando. parser.add_argument('-i', dest='interface', help="fornecer uma interface") res = parser.parse_args() if not res.interface: parser.print_help() # nenhuma interface fornecida, impreme ajuda e termina return network_scanner(res.interface) for n in ap_list: n.show() return if __name__ == '__main__': main()
Importar múltiplos hosts ZABBIX
HCoin - Preço do Dólar, Bitcoin e Euro em Python
Script para Scanner servidor e encontrar portas abertas
tux-gpt - Assistente de IA para o Terminal
Instalação e configuração do Chrony
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
O Que Fazer Após Instalar Ubuntu 25.04
O que você está ouvindo agora? [2] (173)
Copiar Layout do Teclado para aplicar em outra Distribuição (8)
Alguém poderia me ajudar a escolher peças pra montar um desktop? [RESO... (34)