Considerazioni di sicurezza per le reti IEEE 802.15.4
1. CONSIDERAZIONI DI SICUREZZA PER LE
RETI IEEE 802.15.4
Università degli Studi di Salerno
Dipartimento di Informatica
Corso di Cybersecurity
A cura di:
Gianmarco Beato
matr. 0522500782
Martedì 16 giugno 2020 - Anno Accademico 2019-2020
Corso di laurea Magistrale in Informatica
(g.beato1@studenti.unisa.it)
(gianmarco.beato@gmail.com)
2. • La crescente importanza e diffusione di dispositivi wireless
piccoli, economici e dotati di scarse capacità computazionali
ha richiesto la creazione di una piattaforma comune su cui tali
dispositivi possano comunicare tra loro.
• Lo standard IEEE 802.15.4 descrive dei protocolli di
comunicazione per questo tipo di dispositivi, supportando
una vasta varietà di applicazioni.
• Lo standard risponde anche alle esigenze di riservatezza e di
protezione dell’integrità per le applicazioni che ne
necessitano fornendo un pacchetto di sicurezza al livello di
collegamento.
WAN
MAN
LAN/WLAN
PAN/WPAN
• Uno dei modi più comuni per classificare le reti è in base
alla loro dimensione. Tra le principali troviamo:
• Reti ad ampio raggio (WAN)
• Reti a raggio intermedio (MAN)
• Reti a corto raggio (LAN/WLAN)
• Reti a cortissimo raggio (PAN/WPAN)
• Reti PAN/WPAN:
• Dette anche LR-PAN/LR-WPAN
• Ampio campo di applicazione
• Wireless Sensor network (WSN) 1
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
3. 2
• La sicurezza nello standard 802.15.4 è gestita dal sottostrato MAC del livello di collegamento.
• Solo due tipi di pacchetti dati (frame) definiti dallo standard sono importanti per la sicurezza: pacchetti di
dati e pacchetti di riscontro.
Flags Sequence
Number
Destination
Address
Source
Address
Auxiliary
Security
Header
Data Payload CRC
2 bytes 1 byte 0/2/4/10 byes 0/2/4/10 byes 0/14 bytes variable 2 bytes
802.15.4
MAC HEADER
802.15.4
MAC PAYLOAD
802.15.4
MAC FOOTER
Flags Sequence
Number
CRC
2 bytes 1 byte 2 bytes
Formato di un pacchetto dati
Formato di un pacchetto di
riscontro
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
4. 3
• Analizzando un frame MAC IEEE 802.15.4 possiamo individuare tre campi che sono correlati alla sicurezza:
• Flags
• Auxiliary Security Control
• Data Payload
Flags Sequence
Number
Destination
Address
Source
Address
Auxiliary
Security
Header
Data Payload CRC
Security
Control
Frame Counter Key Identifier
Security
Level
Key Identifier
Mode
Reserved Key
Source
Key Index
1 bytes 4 bytes 0/9 bytes
0/2 bits 3/4 bits 5/7 bits 0/8 bytes 1 byte
• Il campo Auxiliary Security Header solo se il
sottocampo Security Enabled del campo Flags
vale 1.
• Security Control: specifica il tipo di protezione
impostando i primi 2 bit (sottocampo Security
Level); possibili valori: 0x00, 0x01, 0x02, 0x03,
0x04, 0x05, 0x06, 0x07.
• Key Identifier Mode: imposta il tipo di chiave
usato da mittente e destinatario; possibili valori:
0, 1, 2, 3.
• Frame Counter: contatore fornito dalla
sorgente de frame per proteggere il messaggio
dai replay-attack.
• Key Identifier: specifica informazioni sulla
chiave utilizzata.
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
5. 4
• Le specifiche di questo standard definiscono otto differenti modalità di sicurezza, così come specificato nella
tabella seguente:
Name Description
0x00 – Null No security. Data is not encrypted. Data authenticity
is not validated
0x01 – AES-CBC-MAC-32
0x02 – AES-CBC-MAC-64
0x03 – AES-CBC-MAC-128
Data is not encrypted. Data authenticity is validated
(32 bit MAC)
Data is not encrypted. Data authenticity is validated
(64 bit MAC)
Data is not encrypted. Data authenticity is validated
(128 bit MAC)
0x04 – AES-CTR Encryption only. CTR Mode. Data is encrypted. Data
authenticity is not validated
0x05 – AES-CCM-32
0x06 – AES-CCM-64
0x07 – AES-CCM-128
Data is encrypted. Data authenticity is validated
(Encryption & 32 bit MAC)
Data is encrypted. Data authenticity is validated
(Encryption & 64 bit MAC)
Data is encrypted. Data authenticity is validated
(Encryption & 128 bit MAC)
NESSUNA
SICUREZZA
SOLO
CIFRATURA
SOLO
AUTENTICAZIONE
AUTENTICAZIONE
E CIFRATURA
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
6. 5
• Ogni ricetrasmettitore 802.15.4 deve gestire un elenco per controllare i suoi «fratelli fidati» e le politiche di
sicurezza da applicare; per questo motivo ogni nodo ha una propria ACL. Il formato di una ACL è il
seguente:
La Access Control Lists (ACL)
Address Security Suite Key Last IV Replay Ctr
• Quando un nodo desidera inviare un messaggio ad un determinato nodo oppure ricevere un pacchetto,
effettua una ricerca nell’ACL per vedere se si tratta di un fratello fidato.
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
7. 6
• Il campo data payload può avere tre differenti formati che dipendono da come sono stati impostati i campi
dedicati alla sicurezza (campo Security Control), in particolare a seconda della modalità di sicurezza scelta:
Il campo Data Payload e le modalità di sicurezza
1) AES-CTR
Flags Sequence
Number
Destination
Address
Source
Address
Auxiliary
Security
Header
Data Payload CRC
Frame
Counter
Key
Counter
Encrypted Payload
4 bytes 1 byte variable
• Questa modalità di sicurezza (0x04 nel campo Security Control) fornisce esclusivamente
confidenzialità utilizzando l’algoritmo AES in modalità counter. Viene utilizzato un nonce o IV.
Flags Source
Address
Frame
Ctr
Key
Ctr
Block
Ctr
• Il counter xi è composto da vari campi:
1 byte 8 bytes 4 bytes 1 byte 2 bytes
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
8. 7
2) AES-CBC-MAC
Flags Sequence
Number
Destination
Address
Source
Address
Auxiliary
Security
Header
Data Payload CRC
Payload MAC
variable 4/8/16 bytes
• Questa modalità di sicurezza (0x01/0x02/0x03 nel campo Security Control) fornisce esclusivamente l’integrità e l’autenticazione
utilizzando la tecnica CBC-MAC. Il mittente/destinatario può calcolare un MAC di lunghezza di 4, 8 o 16 byte ce protegge
il campo data payload del pacchetto.
• Il campo data payload può avere tre differenti formati che dipendono da come sono stati impostati i campi
dedicati alla sicurezza (campo Security Control), in particolare a seconda della modalità di sicurezza scelta:
Il campo Data Payload e le modalità di sicurezza
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
9. 8
3) AES-CCM
Flags Sequence
Number
Destination
Address
Source
Address
Auxiliary
Security
Header
Data Payload CRC
Frame
Counter
Key
Counter
Encrypted
Payload
Encrypted
MAC
4 bytes 1 byte variable 4/8/16 bytes
• Questa modalità di sicurezza (0x05/0x06/0x07 nel campo Security Control) utilizza la modalità operativa CCM fornendo sia confidenzialità che
integrità ed autenticazione combinando le modalità CBC-MAC e CTR. Viene applicata prima la protezione dell’integrità sull’intestazione e sul
campo data payload, dopodichè viene cifrato sia sia il MAC che il campo data payload.
• Il campo data payload può avere tre differenti formati che dipendono da come sono stati impostati i campi
dedicati alla sicurezza (campo Security Control), in particolare a seconda della modalità di sicurezza scelta:
Il campo Data Payload e le modalità di sicurezza
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
10. 9
1. Le applicazioni non dovrebbero utilizzare la modalità AES-CTR.
2. Eliminare la modalità AES-CTR dallo standard.
3. Non fare affidamento sui pacchetti di riscontro.
4. Includere il supporto per l’autenticazione dei pacchetti di riscontro.
5. Includere il supporto per le 255 entries nelle ACL.
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
11. 10
1. Le applicazioni non dovrebbero utilizzare la modalità AES-CTR.
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
• Modalità di cifratura non autenticata
La modalità AES-CTR è molto pericolosa: un avversario può facilmente modificare in tempo reale
il testo cifrato e apportare modifiche al CRC in modo che il destinatario accetti il pacchetto.
• Attacco Denial-of-Service sulla modalità AES-CTR
Abbiamo un mittente s ed un destinatario che comunicano in modalità AES-CTR con la replay
protection abilitata ed una chiave condivisa k. Se un avversario invia un pacchetto compromesso
avente mittente s avente frame counter 0xFFFFFFFF, quest’ultimo lo accetterà aggiornando il
proprio contatore. La prossima volta che il vero mittente s proverà ad inviare un pacchetto legittimo,
il destinatario lo rifiuterà a prescindere perché il contatore ha raggiunto il suo valore massimo, e
qualsiasi pacchetto che arriva dopo sembrerà replicato.
12. 11
2. Eliminare la modalità AES-CTR dallo standard.
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
• Modalità di sicurezza è opzionale
Rimuovendo questa modalità di sicurezza dallo standard in una
revisione futura non si andrà a mettere in pericolo lo standard
stesso.
Name Description
0x00 – Null No security. Data is not encrypted. Data authenticity
is not validated
0x01 – AES-CBC-MAC-32
0x02 – AES-CBC-MAC-64
0x03 – AES-CBC-MAC-128
Data is not encrypted. Data authenticity is validated
(32 bit MAC)
Data is not encrypted. Data authenticity is validated
(64 bit MAC)
Data is not encrypted. Data authenticity is validated
(128 bit MAC)
0x04 – AES-CTR Encryption only. CTR Mode. Data is encrypted. Data
authenticity is not validated
0x05 – AES-CCM-32
0x06 – AES-CCM-64
0x07 – AES-CCM-128
Data is encrypted. Data authenticity is validated
(Encryption & 32 bit MAC)
Data is encrypted. Data authenticity is validated
(Encryption & 64 bit MAC)
Data is encrypted. Data authenticity is validated
(Encryption & 128 bit MAC)
13. 12
3. Non fare affidamento sui pacchetti di riscontro.
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
• Nessuna protezione dell’integrità sui pacchetti di riscontro
Le specifiche dello standard non includono nessuna protezione dell’integrità e/o confidenzialità per
i pacchetti di riscontro permettendo ad un avversario di creare un riscontro fasullo ingannando il
mittente nel pensare che il pacchetto è stato ricevuto.
Flags Sequence
Number
Destination
Address
Source
Address
Auxiliary
Security
Header
Data Payload CRC
2 bytes 1 byte 0/2/4/10 byes 0/2/4/10 byes 0/14 bytes variable 2 bytes
Flags Sequence
Number
CRC
2 bytes 1 byte 2 bytes
Formato di un pacchetto dati
Formato di un pacchetto di
riscontro
14. 13
4. Includere il supporto per l’autenticazione dei pacchetti di riscontro.
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
• Possibilità di includere un campo dedicato al MAC
Le specifiche dello standard in una successiva revisione potrebbero includere un campo dedicato al
MAC per l’autenticazione al posto di avere il campo sequence number.
Flags Sequence
Number
CRC
2 bytes 1 byte 2 bytes
Formato di un pacchetto di
riscontro
Flags MAC CRC
2 bytes 4/8 bytes 2 bytes
15. 14
5. Includere il supporto per le 255 entries nelle ACL.
CONSIDERAZIONI DI SICUREZZA PER LE RETI IEEE 802.15.4
• Il modello della chiave a coppia è inadeguatamente supportato
Lo standard non specifica un numero minimo di entry in una ACL. Un nodo supporto di n entry
nella ACL ci limiterà a reti con massimo n nodi. Il modello chiave a coppia è adesso utilizzabile solo
se un dispositivo ha abbastanza entry nella ACL.
Chiave a coppia:
✓ Ogni coppia di nodi
condivide una chiave
unica.
✓ Limita gli effetti dovuti
alla compromissione di un
nodo.
× Alti costi di archiviazione
delle chiavi.
Chiavi di gruppo:
✓ Una singola chiave viene
condivisa all’interno di un
gruppo di nodi.
✓ Ottimo compromesso tra i
modelli chiave condivisa e
chiave a coppia.
Approccio ibrido:
✓ Alcuni sistemi
possono utilizzare
contemporaneamente
una combinazione di
modelli.
Chiave condivisa in rete:
✓ Una singola chiave viene
condivisa tra tutti i nodi
della rete.
✓ Semplice gestione della
chiave.
× Un avversario che
compromette un nodo
può minare la sicurezza
dell’intera rete.