Von Fuzzing zum Exploiten von IoT-Geräten – für Entwickler und IT-Security-Consultants
Mit der stärkeren Verbreitung von Embedded- und IoT-Systemen können sicherheitsrelevante Schwachstellen mit weniger Aufwand gefunden werden. Software für diese Geräte wird oft in Low-Level-Sprachen wie C statt Java oder .NET geschrieben – dies führt zu grundlegenden Fehlern wie Speicherbeschädigung (Memory corruption).
Daher findet das Fuzzen als Testmethode zunehmend Einzug in das Instrumentarium von IT-Security-Auditoren und wird nicht mehr ausschließlich von Sicherheitsforschern eingesetzt.
Der Referent zeigt, wie man schnell eine Debugging-Umgebung einrichtet und Netzwerkprotokolle, Dateiformate, Programmspeicher und USB-Pakete mit Fuzzing-Tools testet, sowie Shellcode entwickelt.
Der Vortrag schließt mit einem kompletten Angriffsszenario, dem Eindringen in ein Firmennetzwerk über eine Zero-Day-Schwachstelle im Wearable eines Mitarbeiters, dem Wechsel in das industrielle Netzwerk – und der Übernahme der Steuerung über einfache, individuell entwickelte Exploits.
Vorkenntnisse
* Erwartet werden Kenntnisse in Grundlagen der Programmierung.
* Vorteilhaft sind Kenntnisse der Speicherverwaltung und von Low-Level-Entwicklung in hardwarenahen Sprachen wie C.
Lernziele
Ziel des Vortrages ist es, IT-Security-Auditoren aber auch Entwicklern die wichtigsten Techniken zum Finden und Ausnutzen von Zero-Day-Lücken vorzustellen – wobei ihre im Vergleich zu Security-Researchern limitierte Zeit berücksichtigt wird.