OpenAlarm
Questo progetto nasce per curiosità e per studio.
L'obiettivo è arrivare a realizzare un sistema completo per antifurto, monitoraggio ambientale, domotica, e chi più ne ha più ne metta. Ho voluto seguire il principio di Kerckhoffs per ottenere un sistema il più sicuro possibile. Credo di essere il primo a tentare un approccio del genere per un impianto non banale, in un campo dove spesso anche gli "addetti ai lavori" non sanno cosa succede esattamente in ciò che vanno ad installare.
Quello che tento di ottenere è un sistema in cui la sicurezza non dipenda in alcun modo dalla segretezza, e che quindi richieda un livello di fiducia veramente minimo, anche per un paranoico.
ATTENZIONE: queste pagine sono (per ora) un semplice "raccoglitore" di idee che mi sono venute in mente in tempi diversi. Una bella ripulita è stata rimandata a quando la situazione si sarà stabilizzata un po'. Una lettura rapida delle parti iniziali, comunque, potrebbe tornarvi utile anche se state cercando un antifurto "pronto": conoscendo qualcosa in più sarà difficile che un venditore poco serio possa prendervi in giro passandola liscia!
I punti da considerare sono:
- Sicurezza: il sistema non deve permettere attacchi (entro i margini di sicurezza previsti)
- Affidabilità e tolleranza ai guasti: il sistema deve lavorare sempre come previsto, e qualora ciò non sia più possibile a causa di guasti o manomissioni troppo gravi, deve sacrificare la minima funzionalità possibile (se, p.e. viene rimosso un sensore antifurto, SUONA; se viene rimosso un pulsante per l'accensione delle luci, NON SUONA)
- Espandibilità: deve essere possibile modificare la struttura del sistema col minimo sforzo necessario
- Costo: il sistema non deve costare troppo (in relazione alla sicurezza offerta), altrimenti nessuno lo usa
Dato che le linee guida sono molto generiche, vediamo di classificare i livelli di sicurezza. All'aumentare del livello di sicurezza, ovviamente, cresce anche il costo dell'impianto. E non bisogna dimenticare ciò che dice Sergei Skorobogatov (lo ritrovate anche nella sezione dedicata all'hardware): "There is no such thing as absolute security. A determined hacker can break any protection provided he has enough time and resources" ("Non esiste una cosa come la sicurezza assoluta. Un hacker determinato può aggirare ogni protezione se ha a disposizione tempo e risorse sufficienti").
Quindi considereremo, ove sia necessaria più sicurezza, anche un attaccante con maggiore preparazione e disponibilità finanziaria. Ci rimane la possibilità di "giocare" sul tempo.
Ovviamente l'indicazione dell'algoritmo di cifratura/key agreement è puramente indicativo: deve esclusivamente fornire un'indicazione per il livello di sicurezza richiesto.
Liv.Sic. | Esempio | Crittografia | Scambio chiavi | Costo | N.centraline | Note |
---|---|---|---|---|---|---|
0 | Home automation | Nessuna | N/A | Molto basso | 0/1 | Il sistema deve costare il meno possibile e semplificare il cablaggio dell'impianto; non è richiesta la resistenza alle intrusioni; meglio se non è necessaria una centralina |
1 | Abitazione | 192/256 | In chiaro/DH-768 | Basso | 1 | Ottima sicurezza, rischio limitato all'intercettazione dello scambio chiavi |
2 | Villa | 256 | DH-1024/2048 (medio rischio di intercettazione del key agreement) | Medio | 1/2 | Ottima sicurezza con pochi compromessi |
3 | Banca | 256 | ECC-521 (alto rischio intercettazione key agreement) | Alto/molto alto | 2 | Solo per veri paranoici; centraline di due produttori diversi, sensori di almeno due produttori diversi, due installatori diversi (meglio se NON i produttori delle centraline), alta reattività (basso timeout) alla 'scomparsa' di un sensore |
La norma EN 50131 stabilisce 4 "livelli di rischio":
- Basso: si suppone che l'intruso abbia scarsa conoscenza di impianti antifurto e che abbia accesso solo ad attrezzi facilmente reperibili
- Da basso a medio: si suppone che l'intruso abbia scarsa conoscenza di impianti antifurto e che abbia accesso ad una serie generale di attrezzi
- Da medio ad alto: si suppone che l'intruso abbia discreta conoscenza di impianti antifurto e che abbia accesso ad un set completo di attrezzi
- Alto: a questo livello la sicurezza ha la precedenza su tutti gli altri fattori. Ci si aspetta che gli intrusi abbiano la capacità e le risorse per pianificare l'attacco nei dettagli e che abbiano accesso a strumenti specializzati, inclusa la possibilità di sostituire parti vitali del sistema
In altre parole: tossico, ladro di galline, topo d'appartamento, Mission Impossible
Inutile dire che l'unico livello che reputo "degno" di implementazione è proprio il 4: fino al 3 è relativamente banale... Comunque i livelli che avevo individuato inizialmente si "mappano" piuttosto bene su quelli "normati" (a parte il mio livello 0 che, non essendo adatto all'uso antifurto/antintrusione non è ovviamente previsto), anche se io avevo in pratica unificato il 3 ed il 4 (verso l'alto).
Inoltre per ogni livello viene anche indicata la "manutenzione" necessaria per mantenerlo ed i requisiti di durata per l'alimentazione in mancanza di rete:
Livello | Controlli annuali | Batterie ricaricabili | Batterie non ricaricabili |
---|---|---|---|
1 | 1 | 12h | 24h |
2 | 21 | 12h | 24h |
3 | 21 | 24h | 120h |
4 | 2 | 24h | 120h |
1: Accettabile anche una visita in loco ed una in telemanutenzione