Discordia è in pausa: intanto su questo dominio c'è il mio portfolio.

Tutti i progetti
su GitHub

BadHand

Framework di test di rete in Python, con una trentina di strumenti in un'unica riga di comando.

Contesto

BadHand è un framework di test che ho scritto in Python per tenere in un unico posto gli strumenti che uso in laboratorio, invece di saltare fra decine di comandi diversi.

Cosa ho costruito

Un menu da riga di comando che raccoglie una trentina di strumenti, divisi in cinque gruppi:

  • Rete: scoperta degli host, scansione delle porte e test di resistenza
  • Web: ricerca di XSS e SQL injection, analisi degli header, scoperta dei parametri
  • Ricognizione: sottodomini, DNS, WHOIS, riconoscimento del CMS
  • Autenticazione: test delle credenziali su SSH e FTP, scoperta delle cartelle
  • SSL/TLS e utilità: verifica dei certificati, riconoscimento degli hash, posizione di un IP

Scelte tecniche

Tutto in Python, con una libreria mirata per ogni compito: scapy per la rete, requests e BeautifulSoup per il web, paramiko per SSH, dnspython per il DNS. Ogni strumento è un modulo leggibile: se qualcosa non torna, si apre il file e si legge cosa fa, invece di fidarsi di una scatola nera.

Stato

Finito, il codice è su GitHub. È soprattutto il modo in cui ho imparato, costruendoli, come funzionano davvero gli strumenti che altrove si usano e basta.

Ambito d’uso

Pensato solo per test autorizzati e per imparare: sistemi propri, laboratori isolati o sistemi per cui si ha il permesso scritto. Usarlo senza autorizzazione è illegale.