RaspiScanner
v1.1.0 · open source · licenza MIT

Lo scanner di rete per chi installa videosorveglianza.

Colleghi un Raspberry Pi alla rete. Si configura da solo, trova telecamere IP, NVR, DVR e apparati di rete, e ti consegna un report con quello che è esposto: Telnet aperto, RTSP raggiungibile, pannelli di amministrazione senza HTTPS.

  • Funziona offline
  • Nessuna telemetria
  • Linux, Raspberry Pi e Windows
  • Dashboard web e riga di comando
  • Circa 11 secondi per una /24 con 4 dispositivi su un Pi 3B+
https://raspiscanner.local:7332
Dashboard di RaspiScanner: contatori di dispositivi, telecamere e problemi per gravità, stato della rete e tabella dei dispositivi trovati

Dati di esempio: una telecamera e un NVR Hikvision, un router TP-Link e un Raspberry Pi. Non è la rete di nessuno.

Come funziona

Non devi sapere in anticipo com'è fatta la rete.

Pensato per l'impianto che non hai installato tu: subnet sconosciuta, nessuna documentazione, un cavo libero sullo switch.

Collega

Ethernet, Wi-Fi o una VPN attiva. Prova il DHCP; se non arriva, prova le subnet private più comuni e tiene quella dove trova dispositivi. Se ne trova più di una, non tira a indovinare e chiede a te.

Scansiona

Per ogni dispositivo: porte TCP e banner HTTP, ONVIF per marca e modello reali, mDNS, produttore dal MAC con un database offline, DNS inverso, e se disponibili LLDP/CDP, SNMP e IPv6.

Leggi il report

Dispositivi divisi per categoria, problemi trovati e un riepilogo del rischio da critico a basso. Dalla dashboard, in CSV o JSON, oppure da terminale con --report.

Classificazione

Sa distinguere una telecamera da un NVR.

Ogni dispositivo passa da quattro classificatori indipendenti e vince il più specifico.

  • Telecamera
  • NVR / DVR
  • Router
  • Switch
  • Access point
  • Raspberry Pi e IoT
  • PC Windows
  • Mac
  • Telefono e tablet
  • Stampante di rete
  • Generico

Telecamere e registratori si riconoscono dai protocolli che parlano, non dalla marca scritta nel MAC.

Il report

Cosa è esposto, scritto in chiaro.

Sonde attive ma non invasive: una connessione normale, come farebbe chiunque sulla stessa rete.

  • Critico
    Telnet aperto su telecamera o NVRLa porta preferita dalle botnet IoT. Su altri dispositivi è alto.
  • Alto
    Pannello di amministrazione solo in HTTPNessuna alternativa cifrata: la password passa in chiaro.
  • Medio
    RTSP raggiungibileLa porta del flusso video risponde. Le credenziali non vengono provate.
$ sudo python3 raspi-scanner.py --report

NETWORK ASSESSMENT
────────────────────────────

Network: 192.168.10.0/24

4 devices discovered
Summary: 1 camera, 1 NVR/DVR, 1 network device,
         5 security findings

SECURITY
  ⚠ Telnet exposed
    192.168.10.10 (Hikvision NVR)
  ⚠ HTTP service detected, no HTTPS available
    192.168.10.1 (TP-Link network device)
  ⚠ RTSP exposed (stream reachability not verified)
    192.168.10.10 (Hikvision NVR)

RISK SUMMARY
  Critical: 1
  High:     0
  Medium:   3
  Low:      1

Limiti dichiarati

Cosa non fa.

Meglio saperlo prima che scoprirlo in campo.

Non è un vulnerability scanner

Niente login, niente prove di password, niente exploit, niente confronto con le CVE. Dice cosa un servizio espone, non se è davvero sfruttabile.

Non vede il MAC oltre il router

L'ARP non attraversa i router. Le reti raggiunte via routing o VPN si scansionano lo stesso, ma senza MAC e senza produttore.

Non disegna mappe su più livelli

La topologia arriva a un salto: il gateway e i vicini annunciati via LLDP/CDP.

Non manda dati a nessuno

Nessuna telemetria e nessun servizio cloud. Tutto quello che serve, compreso il certificato TLS, resta sul dispositivo.

Installazione

Provalo in due minuti, installalo quando serve.

La prova non installa niente e non tocca la configurazione di rete. L'installazione trasforma un Raspberry Pi in un apparato dedicato, da lasciare sull'impianto.

1Scarica il codice

git clone https://github.com/Scorp1oner0/raspiscanner.git
cd raspiscanner

Senza git, o su Windows:

Scarica lo zip

2Avvialo

Linux e Raspberry Pi

Prova rapida

./start.sh

Crea un ambiente Python isolato e apre la dashboard su https://127.0.0.1:7332. Si ferma con Ctrl-C e non lascia niente dietro di sé.

Windows

Doppio click

start.bat

Serve Python 3.9 o successivo da python.org, installato con la spunta su "Add Python to PATH". La rete del portatile viene solo letta, mai modificata.

Raspberry Pi dedicato

Installazione

sudo ./install.sh

Servizio di sistema che parte al boot. Il Pi si configura da solo la scheda di rete e può fare da hotspot Wi-Fi per raggiungerlo senza cavo.

3Primo accesso

Al primo avvio viene creato un utente amministratore con una password casuale, che va cambiata subito. Con la prova rapida la password compare nella finestra del terminale; con l'installazione la trovi nel log:

sudo journalctl -u raspiscanner -n 20 --no-pager

Il browser segnalerà il certificato come non attendibile: è normale per un apparato raggiunto via IP su una rete privata, come succede con router e NAS.

Per trovare anche i dispositivi che non espongono nessuna porta serve lo scan ARP completo: su Linux avvia la prova con sudo -E RASPISCANNER_NO_NETWORK_CONFIG=1 ./start.sh, che resta comunque senza toccare la rete; su Windows installa Npcap e avvia start.bat come amministratore.

Requisiti

  • Linux, compreso Raspberry Pi OS, oppure Windows
  • Python 3.9 o successivo
  • Su Linux: python3-venv, e isc-dhcp-client per l'installazione
  • Root solo per l'installazione e per lo scan ARP completo
  • Facoltativi: nmcli per Wi-Fi e hotspot, Npcap su Windows

Usalo solo su reti che sei autorizzato a scansionare. Le sonde sono leggere ma reali: mandano pacchetti e generano traffico visibile sulla rete di destinazione.