Low-Power-Funk nach IEEE 802.15.4: Angriffe und Abwehr

Schutz mit einem Open-Source-Projekt

Um die vorgenannten Angriffe zu verhindern, entwickelte der Autor des Artikels im Rahmen seines Promotionsstudiums am Potsdamer Hasso-Plattner-Institut (HPI) die sogenannte HPI-Mediumzugriffsschicht für 15.4-Netzwerke. Im Kern basiert sie auf CSL, das sie um weitere Sicherheitsmechanismen ergänzt. Zudem kümmert sie sich um die Aushandlung geeigneter Sitzungsschlüsseln.

Eine grundlegende Änderung gegenüber der Standard-CSL-Mediumzugriffsschicht ist die Einführung sogenannter Wake-up-Counter, die, passend zum Namen, die Anzahl der CSL Wake-ups des Knotens seit dem Booten zählen. Beim Auslassen eines CSL-Wake-up-Vorgangs aufgrund gleichzeitiger Funkübertragungen zählt der Counter trotzdem weiter. Auf der rechten Seite von Abbildung 7 ist dargestellt, wie die HPI-Mediumzugriffsschicht Frame-Counter mit Wake-up-Countern ersetzt.

Die HPI-Mediumzugriffsschicht ersetzt Frame-Counter mit Wake-up-Countern und sichert im Gegensatz zu CSL Wake-up-Funknachrichten ab (Abb. 7).

Die Benutzung von Wake-up- statt Frame-Countern hat den Vorteil, dass die Empfängerseite nun verzögerte Funknachrichten als unauthentisch verwirft, weil sie den Integritätscode mit einer unterschiedlichen Nonce prüft.

Ausgeschlafene Batterie

Bei der Standard-CSL-Mediumzugriffsschicht bleiben Wake-up-Funknachrichten ungesichert, während die HPI-Mediumzugriffsschicht sie durch das Einbetten eines kurzen Integritätscodes sichert. Dabei handelt es sich im Wesentlichen um ein Einmalpasswort, das unter anderem vom Wake-up-Counter des Empfängers abgeleitet ist, wie auf der linken Seite in Abbildung 7 erkennbar ist. Da die Prüfung des Einmalpassworts vor dem Empfang der Payload-Funknachricht erfolgt, erreichen ungewollte Nutzdaten den Empfänger nur, wenn ein Angreifer das derzeit gültige Einmalpasswort errät.

Abbildung 8 stellt den in einem Experiment gemessenen Energieverbrauch auf der Empfängerseite dar, wenn ein Angreifer einen legitimen Sender imitiert.

Die HPI-Mediumzugriffsschicht hat keinen erhöhten Energieverbrauch, wenn Angreifer Funknachrichten versenden (Abb. 8).

Die standardisierte CSL-Mediumzugriffsschicht empfängt die Wake-up- und Payload-Funknachricht des Angreifers jeweils vollständig und bestätigt letztere mit einem Acknowledgment. Beim Einsatz der HPI-Mediumzugriffsschicht entfällt der Empfang ungewollter Payload-Funknachrichten und damit auch der Versand überflüssiger Acknowledgments. So ist der Energieverbrauch nicht höher, als wenn CSL bei einem Wake-up nichts empfängt, weshalb die HPI-Mediumzugriffsschicht resistent gegen derartige Denialof-Sleep-Angriffe ist.

Zur Abwehr von Acknowledgment-Spoofing-Angriffen führt die HPI-Mediumzugriffsschicht zwei Maßnahmen ein. Zum einen prüft sie bereits vor dem Versand von Acknowledgments die Authentizität der zu bestätigenden Payload-Funknachricht. Andernfalls könnte sich eine bestätigte Funknachrichten im Nachhinein wegen Bitfehlern als unauthentisch herausstellen. Zum anderen prüft die HPI-Schicht die Korrespondenz von Acknowledgments und bestätigten Payload-Funknachrichten, indem sie die Nonces von Acknowledgments insbesondere aus dem Wake-up-Counter des Senders ableitet.

Des Weiteren ist die HPI-Mediumzugriffsschicht beweisbar resistent gegen Pulse-Delay-Angriffe, da sie die Aufwachzeiten von Nachbarknoten ausschließlich auf Basis von empfangenen Acknowledgments ermittelt und Acknowledgments nur innerhalb eines winzigen Zeitfensters als authentisch ansieht.