
Scanner distribuito di vulnerabilità di rete
Prowler è uno scanner di vulnerabilità di rete implementato su un cluster di Raspberry Pi, sviluppato inizialmente durante l'Hackathon della Comunità di Sicurezza Informatica di Singapore - HackSmith v1.0.


requirements.txt/playbooks)Pacchetti Python chiave:
dispy (sito) è la stella dello spettacolo. Ci permette di creare una coda di lavori che verrà elaborata dai nodi worker.python-libnmap è il wrapper Python per nmap, uno scanner di rete open source. Ci permette di scansionare le porte aperte sui dispositivi.paramiko è un wrapper Python per SSH. Lo usiamo per sondare SSH sui dispositivi per testare credenziali comuni.eel è usato per la dashboard web (repository separato, qui)rabbitmq (sito) è usato per passare i risultati dal cluster al server eel che serve la pagina della dashboard.Affinché i playbook funzionino, ansible deve essere installato (sudo pip3 install ansible). Configura gli indirizzi IP dei nodi in /etc/ansible/hosts.
ATTENZIONE: i risultati possono variare poiché sono stati testati solo sulla mia configurazione
shutdown.yml e reboot.yml autoesplicativiclone_repos.yml clona i repository prowler e dispy (richiesto!) sui nodi workersetup_node.yml installa tutti i pacchetti richiesti sui nodi worker. Non clona i repository!git clone https://github.com/tlkh/prowler.gitsudo pip3 install -r requirements.txt sul Pi controlleransible-playbook playbooks/setup_node.yml per installare i pacchetti richiesti sui nodi worker.ansible-playbook playbooks/clone_repos.ymlclusterhat on sul Pi controller per assicurarti che tutti i Pi Zero siano accesi.python3 cluster.py sul Pi controller per avviare ProwlerPer modificare l'intervallo di indirizzi IP scansionati, modifica le seguenti righe in cluster.py:
test_range = []
for i in range(0, 1):
for j in range(100, 200):
test_range.append("172.22." + str(i) + "." + str(j))
pssh e pssh -h pssh-hosts -l username -A -i "command"compute.py): cluster = dispy.JobCluster(compute, nodes='pi0_ip', ip_addr='pi3_ip')ansible all -m ping o ping p1.local -c 1 && ping p2.local -c 1 && ping p3.local -c 1 && ping p4.local -c 1/opt/vc/bin/vcgencmd measure_temp && pssh -h workers -l pi -A -i "/opt/vc/bin/vcgencmd measure_temp" | grep temp
NESSUNA GARANZIA ASSOLUTA! Sentiti comunque libero di inviare problemi.