building IoT 2017 - Hendrik Pilz
"End-of-life" (EOL) is a term [...],
indicating that the product is in the end of its useful life
(from the vendor's point of view),
and a vendor stops marketing, selling, or rework sustaining it.
(The vendor may simply intend to limit or end support for the product.)
Quelle: https://en.wikipedia.org/wiki/End-of-life_(product)
IoT Geräte sind keine Betriebssysteme!
Aber: Die Vernetzung erfordert einen größeren Funktionsumfang des Systems als bei nicht vernetzten Embedded Devices.
- Netzwerk
- Bluetooth
- API zur Steuerung (z.B. per REST)
- evtl. Remote-Zugriff
IT-Sicherheit?
Der Nutzer wird sich nicht darum kümmern.
IT-Sicherheit
nach dem End-of-Life
Damit aus den Toten keine Zombies werden.
Todesursachen
Gründe für das Eintreten des End-of-Life
- Nachfolge-Produkte sind verfügbar
- Sinkender Absatz
- Unternehmensfusion / -übernahme
- Insolvenz
- Technologischer Wandel
Welche Komponenten sind betroffen?
- Das Gerät selbst
Firmware
- Online-Dienste
Backend
- Apps zur Steuerung
Frontend
Gründe zur Weiterverwendung
- Aufwand für Austausch ist sehr hoch (z.B. Herzschrittmacher, Alarmanlage)
- Nutzer übernehmen das Produkt z.B. beim Kauf eines Hauses oder beim Einzug in eine Mietwohnung
- Nutzer ist sich der Vernetzung nicht bewusst
- Die normale Funktion ist noch gewährleistet (z.B. Kühlschrank, Waschmaschine, Trockner)
Ziele für Hersteller und Verbraucher bzgl. Produktsicherheit
- Kein Missbrauch durch Schadsoftware
- Automatische (Sicherheits-)Updates
- Datenschutz / Privatsphäre
Ursachen für Sicherheitslücken
- Hintertüren / Default Credentials
- Mangelhafte Qualitätssicherung
- Mangelhafte Dokumentation bei der Entwicklung
- 3rd Party Code
- Technologischer Fortschritt (z.B. Kryptographie)
Sicherheitsmaßnahmen für automatische Updates
- Secure Boot
- Signierte Firmware
- Updates über eine verschlüsselte Verbindung (TLS)
Key-Management
Secure Boot
- Der Root-Key ist nicht veränderbar und wird nur zur Verifikation eines Code Signing Key verwendet
- Der Code Signing Key verifiziert die Firmware
- Jedes Produkt, für das eine individuelle Firmware existiert, benötigt einen eigenen Root-Key
Key-Management
Secure Boot
Key-Management
Firmware-Signatur
- Neuer Code Signing Key zum Signieren der Firmware nach dem End-of-Life
- Ggf. Aktualisierung der Signatur-Prüfung, damit neuer Schlüssel zukünftig akzeptiert wird
- Übergabe des neuen Code Signing Key an den Maintainer
Key-Management
Zertifikate
- Updates und Online-Dienste sollen evtl. nach dem End-of-Life über eine andere Domain zur Verfügung gestellt werden
- Änderung der Domain
- Bei Verwendung von Certificate-Pinning: Hinzufügen des neuen Public Key / Fingerprint
Daten-Management
- Gespeicherte Benutzerdaten müssen ggf. nach dem End-of-Life gelöscht werden
- Nutzer haben u. U. noch Interesse an den gespeicherten Daten
- Export-Möglichkeit für die Daten schaffen
- Alternativ: Migration der Daten zur Nachfolge-Plattform
Erfordert evtl. Zustimmung des Nutzers
End-of-Life Maßnahmen
- Kontaktmöglichkeit für die Meldung von Sicherheitslücken
auch schon während der Support-Phase
- Abo-Modelle (Thing as a Service?)
z.B. TV-Receiver vom Kabelanbieter, Router vom Internetprovider
- Wartungsvertrag mit einem unabhängigen Dienstleister
z.B. Auto-Werkstatt
End-of-Life Maßnahmen
- Open-Source
z.B. Android Custom Roms, OpenWRT
- Verbraucher-Benachrichtigung
z.B. wenn kein automatisches Update verfügbar ist, wenn Schadsoftware das automatische Update verhindert, wenn vom Produkt eine Bedrohung ausgeht
- Rechtzeitige Bekanntmachung des geplanten End-of-Life
Zusammenfassung
- Für die geplante Lebenszeit eines Gerätes gibt es viele Faktoren
- Es gibt keine Musterlösung für die End-of-Life-Phase
- Vorbereitung reduziert die Kosten und schützt die Nutzer
Entwickler und Hersteller können selbst vorsorgen oder abwarten, bis eine gesetzliche Regulierung in Kraft tritt.
Regulierung Haftung
Risiko
Kosten