14 lighteater wagner zach - lean startup security › wp-content › uploads › 2017 › 01 ›...

36
SEMINARARBEIT im Studiengang Informationsmanagement und Computersicherheit Lehrveranstaltung Angewandte Informationssicherheit BIOS-Rootkit LightEater In den dunklen Ecken abseits des Betriebssystems Ausgeführt von: Hermann Wagner, BSc (1410303021) Dipl.-Ing. Michael Zach (1410303032) Begutachter: Dipl.-Ing. (FH) Mag. Alexander-Philipp Lintenhofer Ort, Datum 21.6.2015

Upload: others

Post on 27-Jun-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

SEMINARARBEIT

im Studiengang Informationsmanagement und Computersicherheit

Lehrveranstaltung Angewandte Informationssicherheit

BIOS-Rootkit LightEater

In den dunklen Ecken abseits des Betriebssystems

Ausgeführt von:

Hermann Wagner, BSc (1410303021) Dipl.-Ing. Michael Zach (1410303032) Begutachter: Dipl.-Ing. (FH) Mag. Alexander-Philipp Lintenhofer

Ort, Datum

21.6.2015

Page 2: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

2

Kurzfassung

Ende März 2015 sorgte eine Sicherheitsmeldung in der Presse für besondere Aufmerk-

samkeit. Auf einer Konferenz haben zwei Forscher präsentiert, wie einfach es heute ist,

Malware zu programmieren, die sich im BIOS einnistet und damit praktisch nicht zu

entdecken geschweige denn wieder zu entfernen ist. Eine Ursache dafür ist der Umstieg auf

UEFI, eine einheitliche Spezifikation zur BIOS Entwicklung, die aber noch zahlreiche

Designfehler und Bugs enthält, aber auf fast allen heute erhältlichen PCs vorhanden ist. Wie

die beiden Sicherheitsexperten auch zeigen konnten wird damit sogar eine Automatisierung

beim Aufspüren und Ausnutzen von Verwundbarkeiten in solchen UEFI BIOS-Implemen-

tierungen möglich. Auch besonders auf Sicherheit hin optimierte Betriebssysteme, welche

nur im Hauptspeicher laufen, sind nicht mehr vor Angriffen sicher, in einer Demo konnte das

BIOS-Rootkit LightEater sogar unbemerkt einen privaten Schlüssel kopieren.

In der vorliegenden Arbeit gehen wir näher auf die Funktionsweise diese Rootkits ein, lernen

verstehen, dass die Arbeitsweise von x86 Prozessoren die eigentliche Grundlage für

LightEater darstellt und überlegen, wie man dieser nicht zu unterschätzenden Gefährdung

technisch und organisatorisch begegnen kann.

Page 3: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

3

Inhaltsverzeichnis

1 Einleitung ............................................................................................................... 4

2 Technische Analyse ............................................................................................... 5

2.1 Benötigtes Vorwissen ............................................................................................ 5

2.1.1 Bootvorgang .......................................................................................................... 5

2.1.2 BIOS vs. UEFI ....................................................................................................... 8

2.1.3 x86-Prozessor Betriebsmodi und Schutz ............................................................... 9

2.1.4 System Management Mode ..................................................................................11

2.1.5 Rootkits .................................................................................................................13

2.2 LightEater – How it works .....................................................................................15

2.2.1 Der Angriff – Schritt für Schritt ...............................................................................15

2.2.2 UEFI erlaubt einfachere Rootkit-Entwicklung ........................................................17

2.2.3 UEFI-Monokultur sorgt für die Verbreitung von Vulnerabilities ..............................17

2.2.4 Eine Flut an UEFI Vulnerabilities ...........................................................................18

2.2.5 Fehler im UEFI-Design selbst ...............................................................................18

2.3 Technische Gegenmaßnahmen ............................................................................19

2.3.1 Maßnahmen die nichts nützen ..............................................................................19

2.3.2 Wirkungsvolle Maßnahmen seitens der Hersteller ................................................24

2.3.3 Wirkungsvolle Maßnahmen seitens der Anwender ................................................25

3 Konsequenzen für Unternehmen ..........................................................................26

3.1 Auswirkungen .......................................................................................................26

3.2 Organisatorische Gegenmaßnahmen & Kosten ....................................................27

4 Fazit ......................................................................................................................29

Literaturverzeichnis ..............................................................................................................30

Abbildungsverzeichnis ..........................................................................................................36

Tabellenverzeichnis ..............................................................................................................36

Page 4: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

4

1 Einleitung

In den Sicherheitsmeldungen zu LightEater, wie zum Beispiel auch derjenigen auf Heise

Security [1] wird kurz beschrieben, dass es diesem BIOS Rootkit gelingt, Tails Linux [2],eine

auf Sicherheit optimierte und nur im RAM laufende Distribution, so zu unterwandern, dass

ein im laufenden Betrieb vorübergehend von einem externen Medium geladener GPG-

Schlüssel kopiert und an den Angreifer übermittelt werden kann.

Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How Many

Million BIOSes Would you Like to Infect?“ zugrunde, zu dem es nicht nur die

Präsentationsunterlagen [4] sondern auch ein Whitepaper [5] gibt. Besonders interessant ist

natürlich auch die Demo selbst, die als Video [6] im YouTube Channel [7] von LegbaCore [8],

zu finden ist, wo es auch noch weitere LightEater Demos [9] gibt, auf die in den Unterlagen

verwiesen wird. LegbaCore ist dabei das mittlerweile von den beiden Vortragenden

gegründeten Unternehmen, das sich auf BIOS Security spezialisiert hat und nach dem

Voodoo Heiligen Papa Legba [10] genannt wurde.

Der Vortrag ging wie ein Lauffeuer durch die Medien und wurde auch in manchen

Diskussionsrunden [11] eifrig diskutiert. Das ist umso bemerkenswerter, als es in den

vergangenen Jahren bereits zahlreiche andere ähnliche Vorträge gab, deren Brisanz aber

offenbar nicht so wahrgenommen wurde, wie in diesem Fall. Zu nennen wären hier etwa

„Attacks on UEFI Security“ [12] [13] und „Extreme Privilege Escalation“ [14] [15] auf der

DEFCON [16].

Dabei war auch der Inhalt des Vortrages selbst wesentlich weiter gefasst und mindestens

ebenso erschütternd, wie die eigentliche Demo zu LightEater. Es wurde nämlich gezeigt, wie

die Ablösung des herkömmlichen BIOS durch UEFI neben allen damit verbundenen

Vorzügen doch auch zu einer Software-Monokultur führt und dass es zahlreiche Design-

Fehler und Bugs gibt, die nun plötzlich fast alle in den letzten Jahren auf den Markt

gekommenen Systeme betreffen.

Während viele Hersteller unzureichend darauf reagieren können Angreifer nun aber

Automatismen zur Auffindung und Ausnützung solcher UEFI Verwundbarkeiten einsetzen.

Dabei ist ihnen ein wahrlich durchschlagender Erfolg gewiss, da auch die allermeisten

Anwender sich nicht um Updates des UEFI/BIOS ihrer Systeme kümmern, selbst wenn

solche vom Hersteller angeboten werden.

Page 5: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

5

2 Technische Analyse

BIOS Rootkits gehören wohl zu den komplexesten Formen von Malware. Dabei kann man

sie jedenfalls zu der Klasse der „Advanced Persistent Threats“ (APT) [17], zählen, das ist

Malware, die sehr fortgeschritten ist und damit nur schwer entdeckt werden kann.

Gleichzeitig nistet sie sich tief in die befallenen Systeme ein und ist kaum mehr zu entfernen.

Meist wird in Zusammenhang mit APTs darauf hingewiesen, dass es sich hier um

maßgeschneiderte Schadsoftware handelt, die wegen ihrer zielgerichteten aber geringen

Verbreitung schwer zu entdecken ist und deshalb lange unbemerkt operieren kann. Dennoch

sehen wir keine Widerspruch darin, auch ein BIOS Rootkit wie LightEater als APT zu

bezeichnen, selbst wenn es prinzipiell eine sehr weite Verbreitung finden kann.

Denn seine prinzipielle Unentdeckbarkeit durch herkömmliche Verfahren der Malware-Suche

und seine wahrhafte Persistenz im Flash-Memory des UEFI/BIOS sorgen dafür, dass auch

eine massenhafte Verbreitung gepaart mit sorglosem Verhalten von Herstellern und

Anwendern zu nicht weniger drastischen Konsequenzen führen, als andere APTs dies tun.

2.1 Benötigtes Vorwissen

Bevor wir uns LightEater näher ansehen, soll zuerst noch das dafür benötigte Grundwissen

über die Technologien vermittelt oder aufgefrischt werden, welche von diesem „BIOS-

Rootkit“ ausgenutzt werden.

Dabei beschränken wir uns auf den Kontext dieser Arbeit und versuchen im Text nicht zu

sehr in die Tiefe zu gehen, ermöglichen dem Leser dies aber durch entsprechend zahlreiche

Literaturverweise.

2.1.1 Bootvorgang

Wird ein Computer neu eingeschaltet, so ist eine Initialisierung und schrittweise

Inbetriebnahme aller seiner Komponenten notwendig. Dabei ist es zu diesem Zeitpunkt noch

nicht möglich, etwa auf eine Festplatte zuzugreifen, um von dort weitere Programme zu

laden, weil ja auch noch keine Steuerprogramme für die Festplatte laufen. Damit diese aber

laufen können, müssen sie im Speicher stehen, der ist zu diesem Zeitpunkt aber noch je

nach Typ mit mehr oder weniger zufälligen Werten gefüllt und es läuft noch kein Programm,

welchen ihn auf einen anfänglichen Ausgangswert setzt und in der Folge verwaltet.

Man erkennt also recht schnell, dass anfänglich eine bestimmte Abfolge einzelner Schritte

notwendig ist, um einen Computer in Betrieb zu bringen, wobei jeder dieser Schirtte durch

ein entsprechendes Programm umgesetzt wird, das dann die Grundlage bereitet für den

nächsten darauf aufbauenden Schritt bzw. die Ausführung des zugehörigen Programms.

Page 6: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

6

Dieses „sich selbst hochziehen“ wird im Englischen „bootstrapping“ genannt, oder kurz

„booting“ [18] oder „Bootvorgang“. Dabei muss nun aber das allererste Programm bereits

startbereit im Speicher stehen, weil es ja wie oben erläutert, noch von keinem

Peripheriegerät geladen werden kann, und deshalb verwendet man hier ROM Speicher,

welcher das Programm fix und nicht überschreibbar enthält und auch im stromlosen Zustand

nicht verliert.

An dieser Stelle sei darauf hingewiesen, dass wir uns hier auf Computersysteme der x86 und

x86-64 Architektur beziehen und andere Architekturen in ihrem Bootvorgang deutlich davon

abweichen können!

BIOS

Dieses allererste Programm wurde BIOS [19] genannt, was für „Basic Input Output System“

steht und wir werden uns im nächsten Abschnitt näher damit auseinandersetzen. Für den

Moment aber genügt es zu wissen, dass es alle Hardware-Komponenten des

Computersystems, die für das weitere booting notwendig sind initialisiert und danach den

Code des nachfolgenden „BootLoader“ genannten Programmes in den Hauptspeicher lädt

und von dort startet.

BootLoader

Damit das BIOS den Programmcode des BootLoaders einfach finden kann, steht dieser

immer an einer ganz bestimmten Stelle des verwendeten Speichermediums, nämlich

entweder im Master Boot Record (MBR) [20], einem Abschnitt ganz am Anfang des Medium

oder bei neueren Systemen am Beginn einer Partition [21], also eines Speicherabschnittes

auf dem Medium, deren Position wiederum in einer Tabelle gespeichert ist, entweder im

MBR oder bei neueren Systeme als GUID Partition Table [22] daran anschließend.

Die Aufgabe des BootLoaders ist es in jedem Fall, das eigentliche Betriebssystem in Gang

zu setzen, und daher ist er in der Regel bereits spezifisch für das jeweilige Betriebssystem.

Linux [23] [24] verwendet hier LILO [25] oder die später entwickelte Alternative GRUB [26]

als BootLoader, welche beide selbst wieder in verschiedenen „stages“ ihre Aufgaben erfüllen

und sich vor allem darin unterscheiden, dass GRUB seine Konfigurationsdaten bereits aus

gängigen Dateisystemen lesen kann, wohingegen LILO auf die Daten aus dem MBR

beschränkt ist.

Unter Windows [27] wurde mit NT der BootLoader NTLDR [28] eingeführt, der in seinen

Aufgaben noch ziemlich genau den BootLoadern unter Linux entspricht. Später dann mit

Vista [29] wurde der Bootvorgang in Vorbereitung auf die Einführung von UEFI neu

strukturiert und ein „Windows Boot Manager“ eingeführt, der eine Reihe neuer Möglichkeiten

Page 7: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

7

zum Debugging und Reparieren während des Bootvorgangs bietet, und der dann erst den

eigentlichen Betriebssystem-BootLoader aufruft.

Abbildung 1: Abfolge von Prozessen bei Inbetriebnahme eines Systems

Betriebssystem-Kernel

Zuerst startet der BootLoader nun den sogenannten Kernel, wie der Name schon andeutet

den Kern des Betriebssystems, der sich um Ein- und Ausgabe, Speichermanagement,

Prozessverwaltung und Interprozesskommunikation kümmert. Auch gilt es verschiedenste

Geräte über spezielle Treiber-Programme anzusteuern. Schließlich ist es dann endlich

möglich und auch an der Zeit, die „eigentlichen Programme“ zu starten, die der Benutzer

dann auch als solche wahrnimmt.

Betriebssystem Dienstprogramme

Dafür verantwortlich ist ein erster Prozess, welcher dann alle weiteren startet und als „init“

bezeichnet wird; unter Linux findet man ihn entsprechend als /sbin/init, unter Windows

als wininit.exe.

Von diesem nun werden die System-Dienstprogramme gestartet, unter Linux „deamons“ und

unter Windows „services“ genannt. Diese Programme laufen in der Regel bereits im

sogenannten „userspace“, d.h. sie verfügen über geringere Privilegien als die eigentlichen

Prozesse des kernels.

Ist das Betriebssystem soweit am Laufen, startet es typischerweise ein Programm, das es

dann Benutzern erlaubt, sich mit dem System zu verbinden, nennen wir es hier „Shell“ [30],

unabhängig davon, ob es als graphische Benutzeroberfläche oder text-orientierte

Kommandozeile implementiert ist. Von dieser Shell aus, können Benutzer nun eigene

Anwendungsprogramme auszuführen.

Page 8: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

8

Anwendungsprogramme

Diese stellen für den Benutzer vordergründig den meisten Nutzen dar und ermöglichen ihm,

seine Arbeit zu erledigen. Da alle diese Programme mit den geringsten Berechtigungen

laufen und keinen direkten Zugriff mehr auf Speicher und andere Geräte haben, müssen sie

entsprechende Aufgaben an das Betriebssystem delegieren, welches umgekehrt dafür sorgt,

dass viele solcher Anwendungsprogramme nebeneinander ablaufen können, ohne einander

zu stören, zu blockieren oder sich Ressourcen wegzunehmen.

Beim Herunterfahren eines Systems werden die meisten der genannten Schritte in

umgekehrter Richtung durchlaufen: Zuerst werden alle laufenden Anwendungsprogramme

beendet, dann die laufenden Shells beendet und damit die Benutzer vom System getrennt.

Als nächstes werden die Dienstprogramme beendet, danach führt der Betriebssystem-Kernel

noch abschließende Aufräumarbeiten aus, wie etwa das Zurückschreiben

zwischengespeicherter Daten auf die jeweiligen Datenträger. Ganz zum Schluss wird durch

einen entsprechenden Aufruf von in der Firmware hinterlegten Routinen zur

Energieversorgung eine Abschaltung der Stromzufuhr erreicht oder der Benutzer

aufgefordert, dies selbst vorzunehmen.

Nun aber kehren wir nochmals ganz an den Anfang zurück, und sehen uns das BIOS und

dessen Nachfolger UEFI näher an.

2.1.2 BIOS vs. UEFI

Wir haben das BIOS eingangs als die Software kennengelernt, die gleich nach dem

Einschalten des Systems aktiv wird, alle für den Bootvorgang benötigten Komponenten

initialisiert und dann den BootLoader aufruft und so in weiterer Folge das Betriebssystem in

Gang bringt. Nun sind hier noch zwei Ergänzungen wichtig:

Das BIOS wurde nur ganz zu Beginn wirklich in ROM abgelegt. Dies hat sich auf die Dauer

nicht wirklich bewährt, da man jedes Mal den zugehörigen Baustein auswechseln musste,

um ein Update durchzuführen. Daher ging man später dazu über, Flash-Speicher [31] zu

verwenden, welcher seine Inhalte im stromlosen Zustand ebenfalls behält, aber im

Gegensatz zu ROM überschrieben werden kann, was es leicht machte, BIOS updates rein

per Software durchzuführen, gleichzeitig aber auch die Geburtsstunde von BIOS Rootkits

markiert.

Weiter ist anzumerken, dass jede Weiterentwicklung von Prozessoren, Speichern,

Bussystemen und sonstiger auf dem Motherboard untergebrachter Komponenten eine

Änderung der dafür verantwortlichen Programmteile des BIOS nach sich zogen, was dazu

führte, dass jedes BIOS individuell auf dieses jeweilige „Chipset“ [32] zugeschnitten werden

musste und die Hersteller meist nur die erste Zeit nach Neueinführung eines solchen auch

Page 9: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

9

Updates des zugehörigen BIOS bereitstellten, dann aber rasch das Interesse daran verloren

hier weiter Fehler zu beheben und Schwachstellen zu korrigieren, sobald das System

einigermaßen stabil lief und sich wie üblich lieber dem nächsten neuen Produkt zuwandten.

Mit der Zeit wurde so immer mehr Funktionalität in eine unüberschaubare Vielfalt an

verschiedenen BIOS-Varianten und Versionen gesteckt, welche ursprünglich fast alle, meist

durch Reengineering, aus einem einzigen von Intel entwickelten Ur-BIOS hervorgegangen

waren. Auch sind im BIOS einige Einschränkungen etwa bezüglich Anzahl und Größe von

Partitionen gegeben, die nicht mehr dem Stand der Technik entsprechen.

Um nun einen sauberen Neustart zu schaffen und einen Nachfolger für das in die Jahre

gekommene BIOS zu (er)finden, war es wiederum Intel, die mit der Entwicklung eines

Extensible Firmware Interface (EFI) begannen. Diese Spezifikation wurde später als Unified

EFI (UEFI) [33] in ein Konsortium führender Hardware- und BIOS-Hersteller eingebracht,

welches seither als UEFI Forum [34] die Entwicklung vorantreibt.

Heute sind die überwiegende Mehrzahl aller neu auf den Markt gebrachten Systeme mit

UEFI ausgestattet, mit Version 8 ist dieses für Windows sogar obligatorisch. Auch alle

anderen gängigen Betriebssysteme sind mittlerweile mit UEFI zu betreiben.

Zu den konkreten Unterschieden zwischen BIOS und UEFI gibt es zahlreiche Quellen [35]

[36] [37] [38], daher sei hier nur auf die für diese Arbeit wichtigsten verwiesen:

UEFI stellt, wie es der Name schon sagt, primär eine Schnittstelle zwischen Hardware-

spezifischer Firmware und dem Betriebssystem dar. Dabei kann es das BIOS vollständig

ersetzen, aber auch mit einem solchen koexistieren, indem es dieses quasi kapselt.

Darüber hinaus bieten UEFI-Systeme noch eine BIOS-Emulation, welche sich Compatibility

Support Module (CSM) nennt.

UEFI bringt bereits einen BootManager mit, den Betriebssysteme nur noch zu nutzen

brauchen, und der mit dem alten Problem aufräumt, dass bei der Installation mehrerer

Betriebssysteme die verschiedenen mitinstallierten BootLoader einander überschreiben.

Damit reduzieren sich diese nun auf reine Betriebssystem-Loader wie zuvor bei der

Beschreibung des Boot Prozesses ab Windows Vista bereits erwähnt. UEFI bietet darüber

hinaus auch Sicherheitsfeatures wie „Secure Boot“ [39] [36], wobei vor dem Bootvorgang

geprüft wird, ob es sich um vertrauenswürdigen, entsprechend signierten Code handelt.

2.1.3 x86-Prozessor Betriebsmodi und Schutz

Die Prozessoren der x86 Familie wurden im Verlauf ihrer Weiterentwicklung mit immer

neuen Funktionen ausgestattet, mussten aber gleichzeitig abwärtskompatibel bleiben. Daher

Page 10: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

10

kennen sie verschiedene Betriebsmodi, welche sie beim Bootvorgang durchlaufen und

zwischen denen sie dann auch später im laufenden Betrieb hin und her wechseln können,

um verschiedene Aufgaben zu erfüllen.

Hier die für das Verständnis dieser Arbeit wichtigsten Betriebsmodi:

Real Mode

Hierbei [40] handelt es sich um den Betriebsmodus des ursprünglichen 8086 Prozessors, der

noch unbeschränkten direkten Zugriff auf den gesamten adressierbaren Speicher- und I/O-

Adressen sowie alle Peripheriegeräte besitzt.

Protected Mode

Ab dem 80286 Prozessor eingeführt bietet dieser [41] Betriebsmodus Unterstützung für

sicheres Multitasking an, indem er u.a. die Adressierung virtuellen Speichers und damit die

saubere Trennung einzelner Prozesse voneinander erlaubt.

Zusätzlich wurden „Protection Ring“ [42] genannte Sicherheitsstufen für Prozesse eingeführt,

welche diese hinsichtlich verwendbarer Befehle und benutzbarer Speicherbereiche

einschränken.

Abbildung 2: Betriebsmodi und Schutzring-Konzept der x86er Prozessoren

Der Kernel des Betriebssystems läuft im innersten Ring 0, die zugehörigen Prozesse dürfen

quasi alles tun. Die nachfolgenden beiden Ringe 1 und 2 sind vor allem für andere

Betriebssystem-Prozesse sowie Treiber vorgesehen und schränken die Privilegien bereits

ein. Gewöhnliche Anwendungsprogramme laufen entsprechend im äußersten Ring 3 mit den

geringsten Berechtigungen.

Page 11: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

11

Die Idee dabei ist, dass Prozesse ohne entsprechende eigene Privilegien beim

Betriebssystem anfragen müssen, um bestimmte Aufgaben, wie etwa Zugriffe auf

Peripheriegeräte, zu erledigen, und damit diesem allein die Kontrolle über die Zuteilung

dieser Ressourcen obliegt.

Long Mode und Compatibility Mode

Mit der Erweiterung der x86 Architektur auf 64-bit ermöglichen diese Modi ein

Nebeneinander von 64-bit Programmen (long mode) und 32/16-bit Programmen

(compatibility mode). [43]

Hardware-Virtualisierung

Neben diesen eigentlichen Betriebsmodi weisen die x86 Prozessoren auch diverse

Erweiterungen zur Unterstützung von Hardware-Virtualisierung auf, auf die hier aber nicht

näher eingegangen werden soll. [44]

Einen Modus haben wir bei obiger Auflistung bewusst übersprungen und hier an den Schluss

gestellt, obwohl er serienmäßig bereits mit dem 80486 eingeführt wurde und von zentraler

Bedeutung für das Verständnis der in dieser Arbeit dargestellten Ideen ist.

2.1.4 System Management Mode

Der SMM [45] [46] ist ein Betriebsmodus zur Erledigung spezieller Funktionen wie etwa

Energiemanagement und Hardware-Steuerung. Dabei unterbricht der Prozessor die

Ausführung aller laufenden Prozesse in anderen Modi, führt vorübergehend Programme für

diese speziellen Funktionen aus und setzt dann die unterbrochenen Prozesse wieder fort.

Dies geschieht auf völlig transparente Weise, die Prozesse können gar nicht feststellen, dass

sie unterbrochen wurden. Auch sind ihre Privilegien hierbei unbedeutend, der SMM

unterbricht sowohl normale Anwendungsprozesse wie auch höchstprivilegierte

Betriebssystem-Prozesse.

Der Übergang in den System Management Mode wird durch eine System Management

Interrupt (SMI) ausgelöst, dieser kann nicht maskiert d.h. ignoriert werden, und es gibt 3

Arten ihn auszulösen:

1. direkt auf der Hardware über einen eigenen Pin des Prozessors

2. indirekt per Software durch Zugriffe auf bestimmte privilegierte Ports

3. indirekt per Software durch Lese- oder Schreibzugriffe auf Adressen, welche die

Firmware zur Auslösung eines SMI gekennzeichnet hat

Nach Auslösen eines SMI stoppt der Prozessor sofort die Ausführung weiterer Instruktionen

auf allen Cores und wartet bis alle noch laufenden abgeschlossen sind, schließlich können

diese ja verschieden viele CPU Zyklen lang dauern Dann werden die Inhalte aller Prozessor-

Page 12: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

12

Register in einen speziellen Bereich im RAM, das sogenannte System Management RAM

(SMRAM) [47] kopiert und dort aufbewahrt. Zugriffe auf das SMRAM erfolgen über ein

eigenes nur im SMM verfügbares Register, damit ist es für alle anderen Betriebsmodi

unsichtbar.

Abbildung 3: Ausführen von Software im SMM

Nun wird der Instruction Pointer auf den Beginn des SMI-Handler Codes im SMRAM gesetzt

und in den SMM umgeschaltet. Damit startet diese 16 Bit-Software und wird auf nur einem

Core ausgeführt, kümmert sich um Temperatur- oder Energiemanagement oder tut

irgendetwas anderes, von dem nichts sie abhalten kann, ausgenommen eine Unterbrechung

der Stromzufuhr. Dabei verfügt der SMI-Handler über allerhöchste Privilegien, die sogar

diejenigen des Betriebssystem-Kernels auf Ring 0 übertreffen, kann alle Befehle ausführen

und auf den gesamten physischen Speicher sowie auch weiterhin auf das SMRAM

zugreifen.

Befindet sich der Prozessor im SMM, so kann dieser nicht unterbrochen werden, weder

durch einen weiteren SMI noch durch irgendeinen anderen Interrupt. Erst wenn der SMI-

Handler am Ende seines Treibens angelangt ist und den Prozessor durch die nur dafür

gedachte Instruktion RSM explizit wieder freigibt, wird der SMM verlassen, der

Prozessorstatus aus dem SMRAM wiederhergestellt und damit die Ausführung der zuvor

unterbrochenen Prozesse wieder so fortgesetzt, als wäre nichts geschehen.

Tatsächlich gibt es aber doch Möglichkeiten für die in anderen Betriebsmodi laufenden

Prozesse, festzustellen, dass der SMM aktiv war.

In einem eigenen Register wird bei jedem SMI ein Zähler [48] hochgezählt, sodass daraus

die Anzahl dieser Interrupts ermittelt werden kann. Dieses Register kann vom SMM aus aber

geschrieben werden, und damit ist nicht sichergestellt, dass es nicht manipuliert ist.

Page 13: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

13

Ein anderer Ansatz besteht darin, die vom SMM „gestohlenen“ Prozessorzyklen durch

Vergleich der von allen laufenden Prozessen verbrauchten Zyklen mit der auf der Echtzeituhr

vergangenen Zeit zu ermitteln. Auch verrät sich der SMM selbst durch Anomalien im

Stromverbrauch des Prozessors, vorzeitiges Zurückschreiben von Caches andere

unabsichtlich ausgelöste Nebeneffekte [49].

Abbildung 4: Unterbrechung beliebiger Prozesse durch den SMM

Soweit vorerst zum allmächtigen SMM, wir werden später noch sehen, was damit alles

möglich wird.

2.1.5 Rootkits

Unter einem „Rootkit“ [50] versteht man Software, welche auf einem System unbemerkt

bestimmte Dateien und laufende Prozesse versteckt, und damit auch sich selbst tarnt.

Meist erfolgt die Installation nach einem Einbruch in ein Computersystem, um auch nach

einem Neustart oder Änderung der Zugangsdaten weiterhin eine Hintertür („Backdoor“ [51])

zum erneuten unbefugten und unbemerkten Zugang offenzulassen oder um Schad-

programme („Malware“ [52]) einzuschleusen und vor Gegenmaßnahmen zu schützen.

Es sind in der Vergangenheit aber auch schon einzelne Fälle [53] [54] bekannt geworden, in

denen von bekannten Unternehmen Rootkit-ähnliche Techniken für DRM [55] und andere

Kopierschutz-Verfahren verwendet wurden.

Je nachdem, auf welcher Systemebene ein Rootkit platziert wird, kann man grob etwa diese

fünf Typen voneinander unterscheiden.

Application-Rootkits: Hierbei ersetzt das Rootkit einzelne Dateien eines Anwendungs-

programms oder verändert dessen Verhalten, indem es eigenen Programm-Code darin

einfügt, welcher bei der Ausführung der Anwendung dann sein Werk verrichtet.

Page 14: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

14

Library- oder Userland-Rootkits: Diese nisten sich in Programmbibliotheken ein, die von

mehreren Anwendungen oder gar Dienstprogrammen verwendet werden, und erhöhen damit

die Wahrscheinlichkeit, zur Ausführung zu gelangen. Wenn solche Wirtsprogramme dann

auch noch mit höheren Privilegien auf dem System operieren, kann damit auch das Rootkit

davon Gebrauch machen.

Kernel-Rootkits: Gelingt es ein Rootkit im Betriebssystem-Kernel selbst oder in einem von

diesem meist ohne weitere Sicherheitsmechanismen angesprochenen Gerätetreiber zu

verankern, so hat dieses natürlich maximale Möglichkeiten sich zu tarnen und die ihm

zugedachten Aufgaben durchzuführen. Aus dieser Position heraus kann es andere laufende

Programme kontrollieren und deren Funktionsfähigkeit beeinträchtigen.

Virtual(ising) Rootkits: Hier schafft es das Rootkit, sich in den Bootprozess einzuklinken

(dann oft auch „Bootkit“ genannt) und aktiv zu werden, bevor das Betriebssystem geladen

wird. Das Rootkit übernimmt dann die Rolle eines Hypervisors [56] und startet das

eigentliche Betriebssystem in einer virtuellen Maschine, womit es über dieses und alle darauf

ausgeführten Anwendungen volle Kontrolle erhält. [57] [58]

Alle bisher genannten Typen von Rootkits können aber mit geeigneter Software zur Laufzeit

erkannt werden und es können Maßnahmen ergriffen werden, ein solches Rootkit

vergleichsweise einfach wieder zu entfernen. Bei Application- und Userland-Rootkits kann

hierbei das Betriebssystem entsprechende Schutzmechanismen implementieren und mit

Antivirensoftware können diese in der Regel aufgespürt und deaktiviert werden.

Auch Kernel-Rootkits kann das Einnisten deutlich erschwert werden, indem man die

unautorisierte Veränderung sogenannter „hooks“ [59] verhindert, also sicherstellt, dass

Systemaufrufe direkt durchgeführt werden und sich keine fremde Software wie etwa ein

Rootkit „dazwischendrängen“ kann. Einen solchen Ansatz verwendet etwa HookSafe [60].

Bootkits und damit Hypervisor-Rootkits können vor allem durch Absicherung des Boot-

Prozesses unterbunden werden, hier spielt u.a. der Einsatz von TPM [61] und UEFI Secure

Boot [39] eine große Rolle.

Ganz anders sieht das aber nun beim fünften Typ aus, der sich in der Firmware eines

Computersystems ansiedeln kann und in zwei Subtypen anzutreffen ist:

Firmware-Rootkits im engeren Sinne, das sind solche bei denen das Betriebssystem und

die die Anwendungssoftware gleichsam als Firmware realisiert ist, wie etwa bei Embedded

Devices oder Appliances wie Firewalls. Damit liegt hier eigentlich eine in der Firmware

persistierte Variante eines Kernel-Rootkits vor. Besonders verdient gemacht um die

Page 15: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

15

Entwicklung solcher Firmware Rootkits hat sich hierbei die NSA, welche vor allem auf

Hardware-Firewalls abgezielt [62] [63].

BIOS-Rootkits eigentlich besser „SMM-Rootkits“, das sind solche, die sich im BIOS oder

UEFI(-BIOS) eines x86 Computersystems verstecken und damit im System Management

Mode ausgeführt werden, was sie nicht nur perfekt tarnt, sondern ihnen vor allem vollen

Zugriff auf das gesamte System gewährleistet. Rootkits dieses Typs wurden in den letzten

10 Jahren mehrfach vorgestellt [64] [65] [66], auch hier hat die NSA wieder ihren Beitrag [67]

geleistet.

Die dieser Arbeit zugrundeliegende Sicherheitsmeldung nun zeigt, wozu ein solches Rootkit

imstande ist und wie die Ignoranz auf Hersteller- wie auch Benutzerseite dazu führt, dass

unzählige Systeme gefährdet sind und wohl auch bleiben werden.

2.2 LightEater – How it works

Nach diesem allgemein gehaltenen Teil können wir uns nun ansehen, wie ein BIOS Rootkit,

in diesem Fall LightEater, funktioniert und warum es sich so tief auf einem System einnisten

kann.

2.2.1 Der Angriff – Schritt für Schritt

Die eingangs geschilderte Demo von LightEater, wie man sie auf eine Video [6] sehen kann,

läuft im Wesentlichen in folgenden Schritten ab:

1. auf das Zielsystem verbinden und dort Administrator-

Rechte erlangen. In der Demo wird hier eine offene

Windows Session per RDP übernommen.

2. Ausführen eines Programmers, welcher das mit

LightEater infizierte BIOS Image ins Flash des

angegriffenen Systems schreibt.

Anmerkung zu den Schritten 1 und 2: Voraussetzung für die Infektion mit

LightEater ist in jedem Fall, dass auf dem System bereits Administratorrechte erlangt

wurden. Das kann zuvor durch andere Malware geschehen sein. Nur dann können

ein Flash-Programmer gestartet werden, oder UEFI-Mechanismen und

Schwachstellen(!) zum Update des BIOS verwendet werden.

Abbildung 4a

Page 16: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

16

3. Angreifer trennt die Verbindung wieder und öffnet ein

Terminal, welches auf eine serielle Verbindung

wartet.

4. Solange das Zielsystem weiterläuft, ist das Rootkit

noch nicht aktiv. Irgendwann jedoch wird es neu

gestartet und bei der erstmaligen Ausführung des

BIOS wird auch der Code von LightEater mit

ausgeführt und eine Serial-over-LAN [68] Verbindung

zum Terminal des Angreifers aufgebaut.

Anmerkung zu den Schritten 3 und 4: Das SoL Protokoll wurde gewählt, weil es

nicht einmal von WireShark [69] erkannt und analysiert wird, ebenso wenig wie von

den gängigen IDS [70] und damit einen idealen Weg darstellt, um Datenpakete

unerkannt über das LAN zu übertragen. Alternativ könnte das Rootkit aber auch den

Schlüssel auf dem System verstecken und später im normalen Windows-Betrieb

anderweitig exfiltrieren.

5. Das Zielsystem bootet nun Tails Linux von einem USB Stick. LightEater ist die ganze

Zeit aktiv und lauert.

6. Ist das System am Laufen, wird irgendwann ein

zusätzlicher USB-Stick mit dem Private Key des

Benutzers angesteckt, und um den dann etwa zum

Entschlüsseln von Emails oder Dateien verwenden

zu können, muss er durch Import in den KeyRing auf

das System gebracht werden.

7. Jetzt schlägt LightEater zu, kopiert sich den

Schlüssel aus dem Speicher und überträgt ihn

zurück zum Angreifer. Ziel erreicht!

Anmerkung zu den Schritten 6 und 7: LightEater läuft ja im System Management

Mode, damit hat das Betriebssystem keine Chance Daten vor ihm zu verstecken.

Auch der sorgsame Umgang mit Datenresten im Hauptspeicher, den Tails pflegt,

nützt gar nichts!

Voraussetzung für diesen Angriff ist es aber immer noch, dass das BIOS entsprechend

verändert und Code eingeschleust werden kann. Ein „heißer Tipp“ diesbezüglich ist nach wie

vor VU#552286 [71], welche es erlaubt, durch bloßes Überschreiben einer UEFI-

Systemvariable ein Update des UEFI/BIOS zu erzwingen.

Abbildung 4c

Abbildung 4b

Page 17: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

17

2.2.2 UEFI erlaubt einfachere Rootkit-Entwicklung

Wurden in früheren Jahren von vielen verschiedenen Herstellern eigene proprietäre BIOS

Varianten weiterentwickelt, so mussten auch Angriffe auf das BIOS durch sehr aufwändiges

Reverse Engineering erfolgen und waren zudem auf einzelne Hersteller beschränkt.

Mit UEFI wurde ab etwa 2006 nun ein neuer Weg beschritten. Ziel war es, eine einheitliche,

von Betriebssystem und BIOS-Hersteller unabhängige Spezifikation für die Funktionsweise

eines BIOS bereitzustellen. Gleichzeitig wurde auch ein Programmier-Framework entwickelt,

das es den Herstellern fortan erlaubt, nur noch ihre eigenen spezifischen Programmteile

einfügen zu müssen, und so zu einem lauffähigen UEFI/BIOS zu kommen.

Man kann diesen sauberen Schritt hin zu einem ordentlichen Software Engineering durchaus

begrüßen. Leider erlaubt er es aber nun auch Angreifern diese Methoden zu verwenden und

mit ebenfalls von UEFI bereitgestellten Tools [72] [73], einfach nachträglich lauffähige BIOS-

Images abzuändern und eigenen Code einzuschleusen.

2.2.3 UEFI-Monokultur sorgt für die Verbreitung von Vulnerabilities

Gleichzeitig kann online automatisiert und sehr effizient nach verwundbaren UEFI/BIOS

Updates gesucht werden, die auf den Websites der Hersteller angeboten werden. Die Idee

dabei: Finde bestimmte Muster in den Funktionsaufrufen im UEFI-Framework, die auf

bekannte verwundbare Module verweisen und suche nach diesen „Signaturen“. Teddy Reed

hat in seinem Vortrag [74] [75] gezeigt, wie man das hoch-skalierbar tun kann, indem er

dafür eine eigene UEFI Spider [76] entwickelt hat. Diese findet UEFI Updates und leitet sie

an einen UEFI Firmware Parser [77] weiter, der aus dem binären Daten, den lauffähigen

Code rekonstruiert. Eine automatische Analyse [78] kann dann nach solchen Signaturen

suchen.

Das Ergebnis ist erschreckend: Von 2158 analysierten BIOS Images, wiesen nur 7 keine der

3 vorgegebenen Signaturen auf. Bei einer ähnlichen, später mit anderen Signaturen von

LegbaCore durchgeführten Suche waren es nur 5 von 1003 Images, die keine

Verwundbarkeiten aufwiesen. Das bedeutet in beiden Untersuchungen deutlich weniger als

1% der untersuchten BIOS Images sind nicht verwundbar – und das schon nur hinsichtlich

dieser nur 3 Schwachstellen!

Page 18: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

18

2.2.4 Eine Flut an UEFI Vulnerabilities

Dabei steigt seit Jahren die Zahl der neu entdeckten Vulnerabilities stetig an, wie folgende

Auswahl zeigt:

Jahr CERT.org VU# Nickname Verweis

2008 VU#127284

2012 VU#255726 „The Sicilian“

2013

VU#758382 „Setup bug“ [79]

VU#291102 „Charizard“

2014

VU#552286 „King & Queen’s Gambit“ [71]

VU#533140 „noname“ [80]

VU#766164 „Speed Racer“ [81]

VU#912156 „Ruy Lopez” [82]

VU#976132 „Venamis“ [83]

2015 VU#577140 „Snorlax“

VU#631788

Tabelle 1: UEFI Vulnerabilities

Dabei sind die kursiv gehaltenen Vulnerabilities nicht veröffentlicht worden. Und es gibt noch

deren viele, welche bislang keine VU# bekommen haben oder die wohl gar nicht erst

gemeldet wurden.

Die Presse berichtet zwar immer wieder von neuen Schwachstellen [84] [85] [86] [87],

trotzdem bleibt der Eindruck, als würde das seitens mancher BIOS-Hersteller nicht ernst

genug genommen, gerade wenn man deren Reaktionszeiten mit denen von Betriebssystem-

Herstellern vergleicht.

2.2.5 Fehler im UEFI-Design selbst

Es sind aber nicht nur Bugs, die hier angeführt sind, sondern auch Schwachstellen und

grundsätzliche Fehler im Design des UEFI Frameworks.

So etwa auch Vulnerability Note VU#631788 vom 20.3.2015 mit dem Titel „Multiple BIOS

implementations permit unsafe SMM function calls to memory locations outside of SMRAM“

[88].

Und tatsächlich: In UEFI gibt es ein Schnittstelle, über die man mittels Software einen SMI

auslösen kann. Praktischerweise lässt sich diese auch noch entsprechend parametrisieren

und sorgt dafür, dass der vom ausgelösten SMI aufgerufenen Handler dann eine

Speicherstelle im ACPI RAM ausliest und an die dort angeführte Adresse verzweigt.

Page 19: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

19

Dieses ACPI RAM befindet sich aber im ungeschützten Speicher, darauf kann also von

normalen Prozessen aus zugegriffen werden und die Sprungadresse so abgeändert werden,

dass dann im System Management Mode beliebiger Code anderswo im ungeschützten

Speicher ausgeführt wird!

Abbildung 5: UEFI SwSMI Interface

Auf Systemen mit dieser Lücke braucht man also das UEFI/BIOS gar nicht erst zu flashen.

2.3 Technische Gegenmaßnahmen

Dieses Kapitel behandelt die technischen Auswirkungen und Gegenmaßnahmen und

schließt somit unsere technische Betrachtung ab. Die organisatorischen Maßnahmen

werden gesondert in Kapitel 3 behandelt.

Primäres Ziel bei der Bekämpfung von Rootkits muss es stets sein, eine Infektion zu

verhindern, denn ein späteres Erkennen und Entfernen ist schwieriger als bei anderen Arten

von Malware, oder vom System selbst aus gar nicht möglich, so wie eben bei BIOS-Rootkits.

Da wir etwa auch in der LightEater Demo wieder gesehen haben, dass die eigentliche

Infektion durch andere Malware vorbereitet wurde, die eben erst die Ausführung mit

Administrator-Rechten erlaubt hat, sind herkömmlich Maßnahmen gegen herkömmliche

Malware durchaus sinnvoll ...

2.3.1 Maßnahmen die nichts nützen

... können gegen ein BIOS Rootkit in der Regel aber nicht viel ausrichten. Hier einige

Beispiele für solche Maßnahmen und Begründungen für deren Wirkungslosigkeit.

Page 20: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

20

Betriebssystem von externem Medium starten

Es gibt sogenannte Live-Betriebssysteme (auch Live-Systeme genannt) die direkt, ohne

vorherige Installation, von einer DVD oder einem USB-Stick gebootet werden können und

nur im Arbeitsspeicher des Host-PCs ausgeführt werden. Dadurch wird einerseits das, auf

dem Host-PC installierte, Betriebssystem inklusive aller installierten Programme nicht

ausgeführt und es werden auf dem Arbeitsrechner keinerlei Spuren hinterlassen. Weiters ist

dadurch auch eine Ausführung des Live-Systems möglich, ohne dass der Rechner eine

funktionsfähige Festplatte oder ein funktionsfähiges Betriebssystem installiert hat.

Diese Features sind aus mehreren verschiedenen Gründen interessant und finden zum

Beispiel folgende Anwendungszwecke:

• Testen eines alternativen Betriebssystems

• Erstellen eines kompletten Speicherabbildes (Image) der Festplatte für einen

Systemumzug oder als Backup

• Hardware Diagnose (z.B.: Inquisitor [89])

• Fehlerbehebung & Reparatur

• Datenrettung (z.B.: Parted Magic [90])

• Malware-Entfernung (z.B.: Desinfec’t [91], Kaspersky Rescue Disk)

• Digitale Forensik (DEFT Linux [92])

• Media-Center für Audio- & Videodateien (z.B.: Kodi/XBMC [93] )

• Sicheres surfen auf fremden PCs (z.B.: Lightweight Portable Security [94])

• Sicheres E-Banking (auch am eigenen PC, z.B.: Bankix [95])

• Schutz der Privatsphäre und Anonymität (z.B.: Tails [2])

Mittlerweile gibt es schon bei sehr vielen Linux-Distributionen die Möglichkeit das

Betriebssystem gleich direkt vom Datenträger als Live-System zu starten. Wie in der Liste

oberhalb ersichtlich gibt es aber auch eine Vielzahl an Live-Systemen, die für einen

speziellen Zweck erstellt wurden (z.B.: Malware-Entfernung). Eine gute Übersicht über Live-

Systeme bietet der entsprechende Wikipedia-Artikel [96].

Nun stellt sich vielleicht für den ein oder anderen Leser die berechtigte Frage: „Was haben

Live-Systeme mit LightEater zu tun?“

Die Antwort darauf ist einfach: Da eine LightEater Malware sich im BIOS-Flash einnistet, wird

sie immer mit dem Start des Computers ausgeführt und läuft im System Management Mode,

egal ob danach das Betriebssystem von der Festplatte oder von einer Live-DVD gestartet

wird. Daher hat LightEater auch einen Vollzugriff auf den Arbeitsspeicher und kann auf

jegliche Daten zugreifen, egal wie sicher das Betriebssystem konzipiert wurde. Zusätzlich

kann LightEater jegliche Daten unbemerkt auf die Festplatte schreiben oder gar über das

Page 21: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

21

Netzwerk (SoL oder Internet) an einen Server weitergeben, ohne dass der Benutzer etwas

davon merken könnte.

Die Konsequenzen davon sind weitreichend: Kein Live-System der Welt kann auf einen

LightEater infizierten PC ausgeführt werden, ohne dass LightEater Vollzugriff auf das System

hat. Das heißt Live-Systeme können unter anderem folgende Aufgaben nicht mehr

erwartungsgemäß erbringen:

(1) Malware-Entfernung & Datensicherung

Lässt sich ein System nach einem Malwarebefall nicht mehr oder nur eingeschränkt

starten oder wird vermutet, dass sich ein Rootkit eingeschlichen hat, welches

wichtige Systemdateien so verändert hat, dass ein Antivirus, welcher zur Laufzeit des

befallenen Betriebssystems ausgeführt wird, die Malware nicht mehr detektieren

kann, so kommen häufig Live-Systeme zur Entfernung der Malware oder zur

Datensicherung zum Einsatz.

Da LightEater Vollzugriff auf das gesamte System hat und außerhalb des

Betriebssystem läuft, ist es für jegliche Art von Anti-Malware Programmen, die am

Betriebssystem (egal ob installiert oder Live) ausgeführt werden, verborgen und kann

von diesen weder entdeckt noch gelöscht werden. Es kann maximal die ur-

sprüngliche Malware gefunden werden, die zu einer LightEater Infizierung geführt

hat, da diese ja initial am Betriebssystem mit Administrator-Rechten ausgeführt

werden musste um LightEater installieren zu können (sofern der Angreifer nicht

ohnehin einen Vollzugriff aufs System hatte). Doch selbst wenn diese entfernt wird,

so bleibt LightEater noch immer voll funktionsfähig im Biosflash und kann beim

nächsten Systemstart jede beliebige „normale“ Betriebssystem-Malware wieder am

System installieren.

Des Weiteren könnte eine LightEater-Malware jeden Datenrettungsversuch so

manipulieren, dass die Daten fehlerhaft oder erneut mit Malware infiziert vom

befallenen Quellsystem kopiert werden.

(2) Privatsphäre, Anonymität & Vertraulichkeit

Wie schon erwähnt werden Live-Systeme sehr häufig zum Schutz der Privatsphäre,

zum Anonymen surfen und kommunizieren im Internet und fürs sichere Online-

Banking verwendet. Beispiele für solche Live-Systeme sind Tails und LPS. Vor allem

Tails wird sehr häufig und gerne verwendet, da es in Verbindung mit der vorinstal-

lierten Software Tor den Benutzer sehr gut im Internet anonymisiert. Das ist vor allem

für Menschen in den Ländern wichtig, in denen politische Verfolgung und Zensur

noch zur Tagesordnung gehört.

Page 22: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

22

Tails funktionierte bis jetzt ausgesprochen gut, denn auch wenn das Host-

Betriebssystem von Malware infiziert ist, so kann durch das Starten des Live-Systems

die Malware nicht ausgeführt werden und ein ausspionieren der Tätigkeiten des

Benutzers wird somit verhindert. Und selbst wenn sich der Benutzer während der

Benutzung des Live-Systems eine Malware einfängt, so ist er maximal für die aktuelle

Session infiziert, da Tails ja jeglichen Zugriff auf die Festplatte blockiert und sich die

Malware somit nicht persistieren kann.

LightEater verändert die Situation drastisch. Denn LightEater wird auch ausgeführt,

wenn ein Live-System gestartet wird und kann daher jegliche Daten abgreifen. Der

Angreifer kann also nachvollziehen was der Benutzer am PC gemacht hat, kann

seine Passwörter und Secret-Keys auslesen und andere Daten stehlen. [2]

Wir sehen also, dass die Entdeckung von LightEater weitreichende Konsequenzen hat, was

Live-Systeme anbelangt und dass die Verwendung eines solchen keinen Schutz vor

LightEater bieten kann.

Rootkit-Scanner von CD oder OS

Auch dieser kann von einem entsprechend programmierten Rootkit getäuscht werden, indem

es etwa Zugriffe auf die eigenen Speicherbereiche auf andere, harmlose umleitet.

UEFI Secure Boot

Mit der Einführung von UEFI, welches z.B. ab Windows 8 verfügbar ist, gibt es eine

Möglichkeit Bootkits auf einem Windows System mit Hilfe von Secure & Measured Boot zu

entdecken. Denn bei UEFI mit aktiviertem Secure Boot, startet die Firmware den Bootloader

nur, wenn dieser eine gültige Bootloader Signatur, die von einer der Zertifizierungsstellen

erstellt wurde, deren Zertifikat in der UEFI Datenbank abliegt, vorweisen kann.

Durch diese Maßnahme ist es einem Bootkit nicht mehr so einfach möglich den MBR zu

überschreiben ohne dass das Ganze unentdeckt bleibt.

Da LightEater es ermöglicht das UEFI selbst zu modifizieren, schafft der Secure Boot

Prozess in diesem Fall keine Entdeckungsmöglichkeit. LightEater bleibt weiterhin verborgen.

[97]

TPM

Das Trusted Platform Module ist ein Device wie jedes andere. Damit ist es jedenfalls für

Man-in-the-Middle Angriffe durch ein BIOS Rootkit anfällig oder kann im Extremfall sogar von

diesem deaktiviert werden.

Page 23: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

23

BIOS Integrity Checks

Diese müssten von einem externen, garantiert sauberen System, durchgeführt werden, denn

andernfalls kann im SMM jede Berechnung von Prüfsummen beliebig beeinflusst werden.

IDS

Ein solches könnte vielleicht Spuren von Daten-Ausschleusung entdecken. Erfolgt diese

aber etwas raffinierter, wird es wahrscheinlich zu keinen Warnungen diesbezüglich mehr

kommen.

Festplatte formatieren oder tauschen

Das Rootkit sitzt im UEFI/BIOS Flash-Speicher, nicht auf der Festplatte.

Normalerweise nisten sich herkömmliche Bootkits auf der Festplatte ein, manipulieren den

Master Boot Record (MBR) und verschlüsseln ihren Code. Dadurch laufen sie außerhalb des

Betriebssystems und ein Antivirus kann das Bootkit nicht detektieren, da sämtliche

Komponenten sich außerhalb des Standard-Dateisystems befinden.

Dadurch haben normale Bootkits einerseits keine Auswirkungen auf Live-Systeme (auf die

Festplatte und somit den MBR wird gar nicht zugegriffen, wenn das Live-System gestartet

wird) und andererseits können Bootkits durch spezielle Software wie den TDSSKiller [98]

oder durch eine vollständige und sichere Formatierung der Festplatte inklusive des MBR und

den infizierten Bootsektor entfernt werden. Eine Neuinstallation des Betriebssystems oder

eine Formatierung der Partitionen, so wie sie normalerweise von vielen herkömmlichen Tools

zur Verfügung gestellt wird, überlebt ein Bootkit normalerweise. [99]

Da sich LightEater im Bios Flash einnistet, lässt ihn die vollständige und sichere

Formatierung der Festplatte ziemlich kalt. Selbst ein Tausch der Festplatte bringt nichts. In

beiden Fällen wird wenn, dann nur die Malware entfernt, die für die ursprüngliche Infizierung

mit LightEater zuständig war. Wie schon erwähnt könnte LightEater diese beim nächsten

Systemstart problemlos erneut installieren.

BIOS Update nach einer Infektion

Wie vorhin der integrity check müsste auch ein Überschreiben von einem sauberen System

aus erfolgen, andernfalls kann das Rootkit das ganz sicher verhindern. Doch dafür ist die

gängige Hardware nicht konzipiert, Eingriffe sind schon auf elektrotechnischer Ebene zum

Scheitern verurteilt, weil Bauteile fix verlötetet und Anschluss-Pins und Leiterbahnen durch

mehrschichtige Bauweise und hochpräzise Montage nicht mehr zugängig sind.

Page 24: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

24

Weder die Verwendung eines Live-Systems oder von UEFI Secure Boot, noch das

Austauschen der Festplatte schaffen also Abhilfe gegen LightEater. Es bleibt noch eine

Möglichkeit um die Malware loszuwerden: Das Bios mit einer als sicher bekannten Firmware

neu zu flashen. Dabei wird im Normalfall die aktuelle Firmware im Biosflash überschrieben

und somit sollte auch LightEater entfernt werden können.

Problem dabei: Wie flashe ich das Bios neu, ohne dass LightEater dies erkennt und mir den

Flashvorgang manipuliert? Denn der Updatevorgang selbst wird ja auch wieder über das

Betriebssystem angestoßen. Wir haben hier noch keine vernünftige Antwort auf diese Frage

gefunden und es wird sehr wahrscheinlich gar nicht ohne großen Aufwand möglich sein.

Theoretisch kann LightEater den Flashvorgang manipulieren, die Installation blockieren und

im Nachhinein dennoch eine erfolgreiche Installation ans Betriebssystem zurückmelden.

Die einzige Möglichkeit ist also eine präventive Maßnahme zu treffen. Und zwar ein

Bios/UEFI Update durchzuführen, bevor man infiziert wird. Inzwischen haben einige

namhafte Hersteller wie DELL, HP und Lenovo bereits zugesichert spezielle Patches für die

Schwachstellen herauszugeben, die LightEater ausnutzt. Und auch ein Update auf die

aktuellste BIOS Version (ohne die speziellen Patches) bringt schon eine Verbesserung, da

LightEater auch viele alte Bios Schwachstellen ausnutzt und dadurch einfacher aufs System

gelangen kann.

2.3.2 Wirkungsvolle Maßnahmen seitens der Hersteller

Aktuell überlegen sowohl Computerhersteller als auch Sicherheitsexperten und die

Community über Maßnahmen um Angriffe wie LightEater verhindern zu können. Hier ist zu

allererst die aktive Fehlersuche und Bereitstellung von Patches zu nennen. Nur damit lassen

sich Software-seitig Verbesserungen erreichen. Aber es gibt auch andere Ideen, wie man

BIOS-Rootkits hintanhalten kann.

Behebung der Schwächen im UEFI Design

Verwundbarkeiten, wie die im Abschnitt 2.2.5 angeführte, können nur durch eine

grundlegende Überholung des UEFI Frameworks entfernt werden.

Hardware-Schutz vor unbeabsichtigtem Flashen

Hersteller von Mainboards könnten wieder Hardwareschalter einführen, die beim

Startvorgang gedrückt gehalten werden müssen, damit ein Flashen ausgeführt wird.

Hardware-Virtualisierung des SMM

Seitens der beiden großen Prozessorhersteller Intel und AMD gibt es Pläne, dem System

Management Mode nicht mehr volle Gewalt über den Prozessor zu geben, sondern ihn

Page 25: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

25

mittels Hardware-Virtualisierung an die Leine zu legen. Dann würde er in einer Virtuellen

Maschine laufen und jedenfalls dem Hypervisor unterworfen sein, daher auch kein Zugriff auf

fremden Speicher aus dem SMM heraus mehr möglich und auch Angriffe erkannt werden.

[100]

Intel Boot Guard

Diese neue Technologie [101] [102] macht den Prozessor selbst zum „root of trust“. Dabei

stammen die ersten Instruktionen, die ausgeführt werden, nicht gleich aus dem womöglich

manipulierten BIOS, sondern aus einem Speicher im Prozessor selbst. Damit könnte erreicht

werden, dass dieser nicht manipulierbare Code eine erste Integritätsprüfung von TPM und

BIOS durchführen kann, ohne von einem Rootkit getäuscht zu werden. IN diesem

Zusammenhang interessant ist auch die

Früherer Einsatz des TPM

Wird bereits von der „Intel Trusted Execution Technology“ [103] [104] umgesetzt.

2.3.3 Wirkungsvolle Maßnahmen seitens der Anwender

Hier ist derzeit in erster Linie das Einspielen verfügbarer BIOS-Updates zu nennen, wobei

die Verwendung einer sicheren Verbindung beim Herunterladen sowie das Überprüfen

angegebener Signaturwerte der einzuspielenden Images selbstverständlich sein sollten!

BIOS Update Management

Im Unternehmens-Kontext wäre die adäquate Maßnahme dazu, die Eingliederung von BIOS-

Updates in den Update Management Prozess sowie eine entsprechenden Unterstützung

durch Software bei der praktischen Durchführung.

Page 26: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

26

3 Konsequenzen für Unternehmen

Nachdem wir im vorherigen Abschnitt die technischen Gegenmaßnahmen, ihre Wirksamkeit

und die technischen Auswirkungen erläutert haben, folgt in diesem Kapitel erneut eine

Analyse der Auswirkungen von LightEater, wobei das Augenmerk nun auf den

Konsequenzen aus Sicht der Unternehmen liegt.

3.1 Auswirkungen

Wie schon erläutert, gibt es aktuell keine Host-basierten Entdeckungsmöglichkeiten um

LightEater detektieren zu können. Damit haben wir eine ähnliche Situation in Unternehmen

wie vor der Einführung von Windows 8 (welches sehr viele Unternehmen noch nicht

verwenden). Denn für ältere Versionen des Microsoft Betriebssystems bieten zwar schon ein

paar Antiviren-Hersteller wie Kaspersky einen integrierten Rootkit und Bootkit Schutz, jedoch

ist dieser nicht immer zuverlässig.

Kommt es zu den typischen Anzeichen, wie zum Beispiel dass das Intrusion Detection

System im Netzwerk selbst nach einer Neuinstallation des Betriebssystems auf einem PC,

noch immer verdächtige Kommunikation von diesem protokolliert, dann werden spezielle

Anti-Bootkit Tools vom Systemadministrator ausgeführt (Kaspersky TDSSKiller, Avast

aswMBR.exe, GMER mbr.exe, MBRCheck.exe). Liefern diese Tools auch keine

verdächtigen Anzeichen, so bleibt dem Admin nur mehr ein Austausch des gesamten

Rechners übrig. [105]

Im Falle einer LightEater-Infektion könnte der Admin aktuell in keinen Fall verlässlich

feststellen, ob er infiziert wurde. Die Infektion selbst kann nur durch auffälliges Verhalten des

Rechners (z.B.: Verschlüsselung von Dateien, Spam-Einblendung auf Webseiten,

verdächtige Kommunikation im Netzwerk) und wenn die üblichen Analysen keine Ergebnisse

bringen, vermutet werden. Auch die Entfernung der Infektion, ist nicht zuverlässig möglich.

Daher bleibt in diesen Fall nur der Austausch des Rechners als einzige Option übrig.

Das ist für ein Unternehmen natürlich nicht wirkliche befriedigend, denn es bleibt immer die

Frage und große Sorge: Wurden wir Opfer eines gezielten Angriffs? Wenn ja, auf was haben

es die Eindringlinge abgesehen?

Doch diese Fragen stellen sich auch bei „herkömmlichen“ Advanced Persistent Thread

(APT) Angriffen, bei denen der Angreifer die Angriffsmethode und die verwendete Malware

spezifisch auf das Ziel abstimmt und verschleiert. Auch in diesen Fällen helfen herkömmliche

Antiviren-Programme nicht bei der Detektion und die Malware bleibt für gewöhnlich lange

unentdeckt und kann nur durch netzwerkbasierte Monitoring-Software wie zum Beispiel

Intrusion Detection Systeme an Tageslicht gebracht werden.

Page 27: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

27

Vor allem bei hoch-innovativen Unternehmen, staatlichen Einrichtungen (Militär, Polizei, …)

oder auch Einrichtungen mit kritischer Infrastruktur (Energieversorger, Wasserkraftwerke, …)

muss spätestens seit dem Bekanntwerden von LightEater auch genau analysiert werden von

welchem Hersteller und Händler die Computer-Hardware bezogen wird. Denn wer oder was

hindert zum Beispiel andere Staaten oder Geheimdienste daran gezielt schon vor der

Auslieferung der Computer und Server, diese mit LightEater-Malware zu infizieren? Die

Malware kann dann einige Jahre als „Schläfer“ deaktiviert im Biosflash verweilen. Und nur für

den Fall der Fälle (z.B.: in wirtschaftliche Notlagen oder Krieg) hätte man so Zugriff auf die

kritische Infrastruktur des Wettstreiters oder Feindes und könnte diesen auf einfache Art und

Weise einen harten Treffer versetzten.

Doch auch schon bisher war solch ein Szenario denkbar, da es ja auch schon bisher für

Geheimdienste die Möglichkeit gab den Hersteller zu zwingen, eine Backdoor ins Bios

einzubauen oder dass der Geheimdienst selbst vor Auslieferung der Geräte das Bios

manipuliert. Und auch aus den Enthüllungsdokumenten von Edward Snowden geht hervor,

dass die NSA und der GSHQ solche Techniken verwenden und an ähnlichen Ansätzen wie

LightEater forschen. [1]

Mit der Veröffentlichung von LightEater wurde hier nur noch verdeutlicht und bestätigt, dass

das Ganze einerseits keine Fiktion ist und andererseits auch tatsächlich mittels Angriff über

das Internet durchgeführt werden kann.

Aus Sicht der Autoren sind also die Auswirkungen von LightEater in Summe zwar kritisch,

jedoch aus Unternehmenssicht eröffnen sich für Unternehmen keine Angriffsvektoren, die es

nicht auch schon vor LightEater gab und bei der Etablierung der Sicherheitsstrategie

berücksichtigt werden mussten.

3.2 Organisatorische Gegenmaßnahmen & Kosten

Für Unternehmen schlagen wir folgende präventive Gegenmaßnahmen vor (falls diese nicht

ohnehin schon durchgeführt werden):

• Durchführen von regelmäßigen BIOS/UEFI Updates

Ein LightEater-Angriff ist umso einfacher, desto mehr BIOS-Schwachstellen dafür

ausgenutzt werden können. Bisher gibt es zwar noch von keinem Hersteller Patches,

die einen Angriff wirklich sicher verhindern können, jedoch ist Schließen alter BIOS-

Bugs durch Updates durchaus möglich. Daher empfehlen wir Unternehmen die

Verwendung von zentralen Softwareverteilungs-Systemen, welche es auch

ermöglichen BIOS/UEFI Updates durchzuführen.

Page 28: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

28

• Zurückgeben / Austausch von PCs von Mitarbeitern, die das Unternehmen

verlassen

Ein frustrierter oder entlassener Mitarbeiter bzw. Praktikant könnte sehr einfach auf

seinem eigenen Rechner LightEater installieren und darauf warten, bis er das

Unternehmen verlassen und sein PC einem anderen Mitarbeiter zugeteilt wird. Um

solch ein Szenario zu verhindern reicht es nicht die Festplatte zu formatieren oder zu

löschen, sondern der PC muss entsorgt werden. Diese Maßnahme erzeugt daher

erhebliche Kosten für das Unternehmen, welche jedoch im Vergleich zu einem

tatsächlichen Angriff wahrscheinlich vertretbar sein werden.

• Deaktivieren von USB-Massenspeichermedien im Betriebssystem

USB-Sticks sind schon seit langem gefährliche Angriffsvektoren für Unternehmen.

Jeder kennt die Geschichte vom „am Parkplatz gefundenen USB-Stick, den ein

Mitarbeiter an seinem Unternehmens-Rechner anschließt um zu sehen was sich

darauf befindet“. Wir empfehlen eine generelle Deaktivierung der Möglichkeit USB-

Sticks an den Rechnern der Mitarbeiter anzustecken (von Betriebssystemseite her).

Zum Datenaustausch können gemeinsam genutzte Serverlaufwerke, Cloud-

Lösungen und Emailaustausch verwendet werden.

• Deaktivieren der Bootmöglichkeit von externen Medien (wie USB oder DVD)

Auch der Bootvorgang von externen Medien sollte deaktiviert werden. Meist gibt es

diese Option im BIOS eines Rechners und die Einstellungen können per Passwort

geschützt werden. Dadurch wäre es einen internen Angreifer (Reinigungskraft,

Mitarbeiter, Einbrecher) nicht mehr möglich bei einem ausgeschalteten Rechner ein

Live-System zu starten und über dieses LightEater aufs System zu bringen.

• Mitarbeitern privilegierte Rechte entziehen

Mitarbeiter sollten auf keinen Fall Administrator-Rechte besitzen, da dadurch auch

jegliche Malware, die das System infiziert Admin-Rechte besitzt und somit in der

Lage ist LightEater am System zu installieren.

Wir empfehlen zwei geschulte Mitarbeiter pro Abteilung solche Rechte zu verleihen,

sodass diese notwendige Installationen oder sonstige Aufgaben durchführen können,

die Administratorrechte verlangen.

• Laptops über Nacht im Schrank versperren

Dadurch wird es erschwert Rechner in irgendeiner Form zu manipulieren und zu

infizieren.

Page 29: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

29

• Download von ausführbaren Dateien blockieren

Dateien wie .exe, .jar, .bat, usw. sollten direkt vom IDS blockiert werden um zu

verhindern, dass Malware aufs System gelangt. Zusätzlich muss dann aber auch den

Mitarbeiter die Möglichkeit gegeben werden, an zentraler Stelle einspeisen zu

können, wenn diese unbedingt eine solche Aktion durchführen müssen. Dann kann

die verantwortliche Person entscheiden ob die Datei heruntergeladen werden darf.

• PC-Kauf/Leasing nur von vertrauenswürdigen (europäischen) Herstellern

Um nicht der Gefahr zu laufen, schon von vorneherein ausspioniert zu werden, richtet

sich diese Maßnahme. Wir wissen jedoch, dass es nicht so einfach ist diese

umzusetzen. Es sollte trotzdem eine Analyse der Hersteller durchgeführt werden und

dann eine begründete Entscheidung für einen dieser Hersteller getroffen werden.

• Windows 8 verwenden

Windows 8 bietet einige neue Sicherheitsfeatures, wie zum Beispiel Secure Boot,

welche zwar LightEater nicht wirklich stoppen können, jedoch Bootkits.

• Mitarbeiter schulen

Es ist immer eine gute Idee Awareness und Verständnis für Security-Themen bei

seinen Mitarbeitern zu schaffen!

Wie schon erwähnt sind alle die Maßnahmen präventiv und erschweren es dem Angreifer

nur LightEater aufs System zu bringen. Auch wurde hier vorausgesetzt, dass herkömmliche

Maßnahmen wie Firewalls, IDS, IPS und Antivirensoftware bereits eingesetzt werden.

4 Fazit

LightEater hat für einiges an Aufregung und Aufmerksamkeit gesorgt. Ebenso haben sich die

Vermutungen, dass Geheimdienste solche Techniken einsetzen, noch weiter bestätigt.

In jedem Fall kann LightEater als Basis für einen Advanced Persistent Threat Angriff

verwendet werden, da es so gut wie unmöglich ist eine erfolgreiche LightEater-Installation zu

detektieren. Daher ist es sehr wahrscheinlich, dass in naher Zukunft auch nicht-staatliche

Hacker, welche es auf sensible und geheime Unternehmensdaten abgesehen haben,

LightEater-Techniken für ihre Zwecke verwenden werden.

Aus diesem Grund sollten sich Unternehmen bereits jetzt so gut es geht mit präventiven

Maßnahmen schützen und sich der weiterhin bestehenden Gefahr bewusst sein. Denn bis

sich die PC-Hersteller auf wirksame Gegenmaßnahmen geeinigt haben wird sicherlich noch

einiges an Zeit vergehen.

Page 30: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

30

Literaturverzeichnis [1] “BIOS-Rootkit LightEater: In den dunklen Ecken abseits des Betriebssystems,” heise

Security. [Online]. Available: http://www.heise.de/security/meldung/BIOS-Rootkit-LightEater-In-den-dunklen-Ecken-abseits-des-Betriebssystems-2582782.html. [Accessed: 11-Jun-2015].

[2] “Tails Linux.” [Online]. Available: https://tails.boum.org/. [Accessed: 19-Jun-2015]. [3] “CanSecWest Applied Security Conference: Vancouver, British Columbia, Canada.”

[Online]. Available: https://cansecwest.com/agenda.html. [Accessed: 11-Jun-2015]. [4] Corey Kallenberg and Xeno Kovah, “How Many Million BIOSes Would you Like to

Infect?,” 20-Mar-2015. [Online]. Available: http://legbacore.com/Research_files/HowManyMillionBIOSWouldYouLikeToInfect_Full.pdf. [Accessed: 11-Jun-2015].

[5] Corey Kallenberg and Xeno Kovah, “How Many Million BIOSes Would you Like to Infect?,” CanSecWest Vancouver 2015, 20-Mar-2015. [Online]. Available: http://www.legbacore.com/News_files/HowManyMillionBIOSesWouldYouLikeToInfect_Whitepaper_v1.pdf. [Accessed: 11-Jun-2015].

[6] “LightEater Demo: Stealing GPG keys/emails in Tails via remote firmware infection,” YouTube, 05-Jun-2015. [Online]. Available: https://www.youtube.com/watch?v=sNYsfUNegEA.

[7] “LegbaCore - Channel,” YouTube. [Online]. Available: https://www.youtube.com/channel/UCpHRO5NFtnKm2sg3yRTVASg. [Accessed: 11-Jun-2015].

[8] “LegbaCore.” [Online]. Available: http://legbacore.com/. [Accessed: 14-Jun-2015]. [9] “LightEater Demo: Remote ASUS BIOS infection using the Venamis vulnerability,”

YouTube. [Online]. Available: https://www.youtube.com/watch?v=ZkBTABqSMT8. [10] “Papa Legba,” Wikipedia, 16-May-2015. [Online]. Available:

https://en.wikipedia.org/w/index.php?title=Papa_Legba&oldid=662652457. [Accessed: 14-Jun-2015].

[11] “LightEater Malware - AT&T ThreatTraq #136 (3 of 6),” YouTube, 30-Mar-2015. [Online]. Available: https://www.youtube.com/watch?v=RxpBiSVCbW4.

[12] Rafal Wojtczuk and Corey Kallenberg, “Attacks on UEFI Security,” CanSecWest Vancouver 2015, 20-Mar-2015. [Online]. Available: https://bromiumlabs.files.wordpress.com/2015/01/attacksonuefi_slides.pdf. [Accessed: 11-Jun-2015].

[13] “Attacks on UEFI security, inspired by Darth Venamis’s misery and Speed Racer,” Chaos Computer Club. [Online]. Available: http://media.ccc.de/browse/congress/2014/31c3_-_6129_-_en_-_saal_2_-_201412282030_-_attacks_on_uefi_security_inspired_by_darth_venamis_s_misery_and_speed_racer_-_rafal_wojtczuk_-_corey_kallenberg.html#video. [Accessed: 11-Jun-2015].

[14] C. Kallenberg, X. Kovah, J. Butterworth, and S. Cornwell, “Extreme Privilege Escalation On Windows 8/UEFI Systems,” The MITRE Corporation. [Online]. Available: http://www.mitre.org/publications/technical-papers/extreme-privilege-escalation-on-windows-8uefi-systems. [Accessed: 11-Jun-2015].

[15] “Extreme Privilege Escalation: Gefährliche Sicherheitslücken in UEFI-Firmware,” heise Security. [Online]. Available: http://www.heise.de/security/meldung/Extreme-Privilege-Escalation-Gefaehrliche-Sicherheitsluecken-in-UEFI-Firmware-2429297.html. [Accessed: 11-Jun-2015].

[16] “DEF CON 22 - Extreme Privilege Escalation On Windows 8/UEFI Systems,” YouTube. [Online]. Available: https://www.youtube.com/watch?v=d6VCri6sPnY.

Page 31: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

31

[17] “Advanced persistent threat,” Wikipedia, 18-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Advanced_persistent_threat&oldid=667433314. [Accessed: 19-Jun-2015].

[18] “Booting,” Wikipedia, 11-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Booting&oldid=666448749. [Accessed: 12-Jun-2015].

[19] “BIOS,” Wikipedia, 12-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=BIOS&oldid=666605212. [Accessed: 12-Jun-2015].

[20] “Master boot record,” Wikipedia, 23-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Master_boot_record&oldid=663683786. [Accessed: 12-Jun-2015].

[21] “Disk partitioning,” Wikipedia, 16-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Disk_partitioning&oldid=662663295. [Accessed: 12-Jun-2015].

[22] “GUID Partition Table,” Wikipedia, 31-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=GUID_Partition_Table&oldid=664851387. [Accessed: 12-Jun-2015].

[23] “Linux startup process,” Wikipedia, 04-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Linux_startup_process&oldid=660765108. [Accessed: 12-Jun-2015].

[24] “Linux Booting Process: A step by step tutorial for understanding Linux boot sequence,” slashroot.in. [Online]. Available: http://www.slashroot.in/linux-booting-process-step-step-tutorial-understanding-linux-boot-sequence. [Accessed: 12-Jun-2015].

[25] “LILO (boot loader),” Wikipedia, 02-Apr-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=LILO_(boot_loader)&oldid=654608327. [Accessed: 12-Jun-2015].

[26] “GNU GRUB,” Wikipedia, 31-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=GNU_GRUB&oldid=664921308. [Accessed: 12-Jun-2015].

[27] “Windows startup process,” Wikipedia, 02-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Windows_startup_process&oldid=665112811. [Accessed: 12-Jun-2015].

[28] “NTLDR,” Wikipedia, 19-Feb-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=NTLDR&oldid=647850514. [Accessed: 12-Jun-2015].

[29] “Windows Vista startup process,” Wikipedia, 10-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Windows_Vista_startup_process&oldid=666283413. [Accessed: 12-Jun-2015].

[30] “Shell (computing),” Wikipedia, 30-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Shell_(computing)&oldid=664677641. [Accessed: 14-Jun-2015].

[31] “Flash memory,” Wikipedia, 08-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Flash_memory&oldid=666050115. [Accessed: 12-Jun-2015].

[32] “Chipset,” Wikipedia, 30-Apr-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Chipset&oldid=660051570. [Accessed: 12-Jun-2015].

[33] “Unified Extensible Firmware Interface,” Wikipedia, 27-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Unified_Extensible_Firmware_Interface&oldid=664198064. [Accessed: 12-Jun-2015].

[34] “UEFI Forum.” [Online]. Available: http://www.uefi.org/. [Accessed: 12-Jun-2015].

Page 32: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

32

[35] “UEFI – der BIOS-Nachfolger: Grundlagen und Hilfestellung,” WinTotal.de. [Online]. Available: http://www.wintotal.de/uefi-der-bios-nachfolger-grundlagen-und-hilfestellung/. [Accessed: 12-Jun-2015].

[36] c’t, “BIOS, UEFI und Secure Boot,” c’t. [Online]. Available: http://www.heise.de/ct/hotline/BIOS-UEFI-und-Secure-Boot-2056492.html. [Accessed: 11-Jun-2015].

[37] J. J. in 10 Things, O. 19, and 2011, “10 things you should know about UEFI,” TechRepublic. [Online]. Available: http://www.techrepublic.com/blog/10-things/10-things-you-should-know-about-uefi/. [Accessed: 12-Jun-2015].

[38] “Differences Between UEFI and BIOS,” Make Tech Easier. [Online]. Available: http://www.maketecheasier.com/differences-between-uefi-and-bios/. [Accessed: 12-Jun-2015].

[39] “UEFI Secure Boot,” Thomas-Krenn-Wiki. [Online]. Available: https://www.thomas-krenn.com/de/wiki/UEFI_Secure_Boot. [Accessed: 14-Jun-2015].

[40] “Real mode,” Wikipedia, 11-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Real_mode&oldid=666467631. [Accessed: 12-Jun-2015].

[41] “Protected mode,” Wikipedia, 24-Nov-2014. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Protected_mode&oldid=635247115. [Accessed: 12-Jun-2015].

[42] “Protection ring,” Wikipedia, 19-Apr-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Protection_ring&oldid=657128325. [Accessed: 12-Jun-2015].

[43] “Long mode,” Wikipedia, 29-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Long_mode&oldid=664575942. [Accessed: 12-Jun-2015].

[44] “x86 virtualization,” Wikipedia, 31-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=X86_virtualization&oldid=664906810. [Accessed: 12-Jun-2015].

[45] “System Management Mode,” Wikipedia, 23-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=System_Management_Mode&oldid=663611437. [Accessed: 12-Jun-2015].

[46] “SMM,” Ivanlef0u’s Blog. [Online]. Available: http://www.ivanlef0u.tuxfamily.org/?p=138. [Accessed: 12-Jun-2015].

[47] Loïc Duflot, Olivier Levillain, Benjamin Morin, and Olivier Grumelard, “Getting into the SMRAM: SMM Reloaded.” [Online]. Available: https://cansecwest.com/csw09/csw09-duflot.pdf. [Accessed: 12-Jun-2015].

[48] C. I. King, “Detecting System Management Interrupts,” A Smackerel of Opinion. . [49] Brian Delgado and Karen L. Karavanic, “Performance Implications of System

Management Mode.” [Online]. Available: http://web.cecs.pdx.edu/~karavan/research/SMM_IISWC_preprint.pdf. [Accessed: 14-Jun-2015].

[50] “Rootkit,” Wikipedia, 28-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Rootkit&oldid=664346868. [Accessed: 14-Jun-2015].

[51] “Backdoor,” Wikipedia, 01-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Backdoor_(computing)&oldid=664992455. [Accessed: 14-Jun-2015].

[52] “Malware,” Wikipedia, 13-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Malware&oldid=666710986. [Accessed: 14-Jun-2015].

Page 33: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

33

[53] “Sony BMGs Kopierschutz mit Rootkit-Funktionen,” heise online. [Online]. Available: http://www.heise.de/newsticker/meldung/Sony-BMGs-Kopierschutz-mit-Rootkit-Funktionen-143366.html. [Accessed: 14-Jun-2015].

[54] “Spore: Ärger über Kopierschutz,” heise online. [Online]. Available: http://www.heise.de/newsticker/meldung/Spore-aerger-ueber-Kopierschutz-Update-204887.html. [Accessed: 14-Jun-2015].

[55] “Digital rights management,” Wikipedia, 08-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Digital_rights_management&oldid=666017528. [Accessed: 14-Jun-2015].

[56] “Hypervisor,” Wikipedia, 27-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Hypervisor&oldid=664269248. [Accessed: 14-Jun-2015].

[57] J. Rutkowska, “Introducing Blue Pill,” The Invisible Things Lab’s blog. . [58] Samuel T. King and Peter M. Chen, “SubVirt: Implementing Malware with Virtual

Machines.” [Online]. Available: http://www.cse.psu.edu/~pdm12/cse544/slides/cse544-subvirt-sawani.pdf. [Accessed: 14-Jun-2015].

[59] “Hooking,” Wikipedia, 05-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Hooking&oldid=660953860. [Accessed: 14-Jun-2015].

[60] Z. Wang, X. Jiang, W. Cui, and P. Ning, “Countering Kernel Rootkits with Lightweight Hook Protection,” in Proceedings of the 16th ACM Conference on Computer and Communications Security, New York, NY, USA, 2009, pp. 545–554.

[61] “Trusted Platform Module,” Wikipedia, 12-Jun-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Trusted_Platform_Module&oldid=666666879. [Accessed: 14-Jun-2015].

[62] “SOUFFLETROUGH: NSA Exploit of the Day,” Schneier on Security. [Online]. Available: https://www.schneier.com/blog/archives/2014/01/souffletrough_n.html. [Accessed: 14-Jun-2015].

[63] “SCHOOLMONTANA: NSA Exploit of the Day,” Schneier on Security, 14-Jan-2014. [Online]. Available: https://www.schneier.com/blog/archives/2014/01/schoolmontana_n.html. [Accessed: 14-Jun-2015].

[64] John Heasman, “Implementing and Detecting an ACPI BIOS Rootkit.” [Online]. Available: https://www.blackhat.com/presentations/bh-europe-06/bh-eu-06-Heasman.pdf. [Accessed: 14-Jun-2015].

[65] “Mebromi: the first BIOS rootkit in the wild,” Webroot Threat Blog. [Online]. Available: http://www.webroot.com/blog/2011/09/13/mebromi-the-first-bios-rootkit-in-the-wild/. [Accessed: 14-Jun-2015].

[66] Shawn Embleton, Sherri Sparks, and Cliff Zou, “SMM Rootkits: A New Breed of OS Independent Malware.” [Online]. Available: http://www.eecs.ucf.edu/~czou/research/SMM-Rootkits-Securecom08.pdf. [Accessed: 14-Jun-2015].

[67] “IRONCHEF: NSA Exploit of the Day,” Schneier on Security, 03-Jan-2014. [Online]. Available: https://www.schneier.com/blog/archives/2014/01/nsa_exploit_of_1.html. [Accessed: 14-Jun-2015].

[68] “Serial over LAN,” Thomas-Krenn-Wiki. [Online]. Available: https://www.thomas-krenn.com/de/wiki/IPMI_Serial_over_LAN_(SOL). [Accessed: 15-Jun-2015].

[69] “Wireshark.” [Online]. Available: https://www.wireshark.org/. [Accessed: 19-Jun-2015]. [70] “Intrusion detection system,” Wikipedia, the free encyclopedia, 18-Jun-2015. [Online].

Available: https://en.wikipedia.org/w/index.php?title=Intrusion_detection_system&oldid=667436623. [Accessed: 19-Jun-2015].

Page 34: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

34

[71] “Vulnerability Note VU#552286 - UEFI EDK2 Capsule Update vulnerabilities,” CERT.org, 07-Aug-2014. [Online]. Available: https://www.kb.cert.org/vuls/id/552286. [Accessed: 15-Jun-2015].

[72] Visualge Vis, “How does UEFI Fault Tolerant Write protocol work on Variable reclaiming process?,” Count Chu. [Online]. Available: http://countchu.blogspot.co.at/2014/08/how-uefi-fault-tolerant-write-protocol.html. [Accessed: 12-Jun-2015].

[73] Brian Richardson and Alex Hung, “UEFI Test Tools for Linux Developers.” [Online]. Available: http://www.uefi.org/sites/default/files/resources/S3_LinuxTestTools_UEFILinuxCon_FINAL_Aug.%2021.pdf. [Accessed: 12-Jun-2015].

[74] Teddy Reed, “Analytics, And Scalability, and UEFI Exploitation! Oh My!,” Vimeo. [Online]. Available: https://vimeo.com/98240782. [Accessed: 15-Jun-2015].

[75] Teddy Reed, “Analytics, And Scalability, and UEFI Exploitation! Oh My!” [Online]. Available: http://prosauce.org/storage/slides/Infiltrate2014-Analytics-Scalability-UEFI-Exploitation.pdf. [Accessed: 15-Jun-2015].

[76] “UEFI Spider,” GitHub. [Online]. Available: https://github.com/theopolis/uefi-spider. [Accessed: 15-Jun-2015].

[77] “UEFI Firmware Parser.” [Online]. Available: https://github.com/theopolis/uefi-firmware-parser. [Accessed: 15-Jun-2015].

[78] “Subzero UEFI Firmware Analyzer.” [Online]. Available: https://github.com/theopolis/subzero. [Accessed: 15-Jun-2015].

[79] “Vulnerability Note VU#758382 - Unauthorized modification of UEFI variables in UEFI systems,” CERT.org, 15-Aug-2013. [Online]. Available: https://www.kb.cert.org/vuls/id/758382. [Accessed: 15-Jun-2015].

[80] “Vulnerability Note VU#533140 - Tianocore UEFI implementation reclaim function vulnerable to buffer overflow,” CERT.org, 09-Jun-2014. [Online]. Available: https://www.kb.cert.org/vuls/id/533140. [Accessed: 15-Jun-2015].

[81] “Vulnerability Note VU#766164 - Intel BIOS locking mechanism contains race condition that enables write protection bypass,” CERT.org, 05-Jan-2015. [Online]. Available: https://www.kb.cert.org/vuls/id/766164. [Accessed: 15-Jun-2015].

[82] “Vulnerability Note VU#912156 - Dell BIOS in some Latitude laptops and Precision Mobile Workstations vulnerable to buffer overflow,” CERT.org, 09-Jun-2014. [Online]. Available: https://www.kb.cert.org/vuls/id/912156. [Accessed: 15-Jun-2015].

[83] “Vulnerability Note VU#976132 - Some UEFI systems do not properly secure the EFI S3 Resume Boot Path boot script,” CERT.org, 09-Jun-2014. [Online]. Available: https://www.kb.cert.org/vuls/id/976132. [Accessed: 15-Jun-2015].

[84] zafirt, “Malicious malware in BIOS again?,” Oversite Sentry. [Online]. Available: http://oversitesentry.com/malicious-malware-in-bios-again/. [Accessed: 12-Jun-2015].

[85] Christof Windeck, “Kommentar zur UEFI-Lücke: Sie lernen es einfach nicht,” heise online, 23-Oct-2015. [Online]. Available: http://www.heise.de/newsticker/meldung/Kommentar-zur-UEFI-Luecke-Sie-lernen-es-einfach-nicht-2430455.html. [Accessed: 11-Jun-2015].

[86] “Mehr Updates gegen die UEFI-Sicherheitslücke (3. Update),” heise Security, 05-Nov-2014. [Online]. Available: http://www.heise.de/security/meldung/Mehr-Updates-gegen-die-UEFI-Sicherheitsluecke-3-Update-2442775.html. [Accessed: 11-Jun-2015].

[87] “US-Cert warnt vor weiteren UEFI-BIOS-Lücken,” heise Security, 07-Jan-2015. [Online]. Available: http://www.heise.de/security/meldung/US-Cert-warnt-vor-weiteren-UEFI-BIOS-Luecken-2512913.html. [Accessed: 11-Jun-2015].

[88] “Vulnerability Note VU#631788 - Multiple BIOS implementations permit unsafe SMM function calls to memory locations outside of SMRAM.” [Online]. Available: https://www.kb.cert.org/vuls/id/631788. [Accessed: 12-Jun-2015].

[89] “Inquisitor hardware testing platform.” [Online]. Available: http://www.inquisitor.ru. [Accessed: 21-Jun-2015].

Page 35: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

35

[90] “PartedMagic.” [Online]. Available: https://partedmagic.com/. [Accessed: 21-Jun-2015]. [91] c’t, “Desinfec’t,” c’t. [Online]. Available: http://www.heise.de/ct/projekte/Desinfec-t-

1213110.html. [Accessed: 21-Jun-2015]. [92] “DEFT Linux - Computer Forensics live CD.” [Online]. Available:

http://www.deftlinux.net/. [Accessed: 21-Jun-2015]. [93] “Kodi - Open Source Home Theatre Software.” [Online]. Available: http://kodi.tv/.

[Accessed: 21-Jun-2015]. [94] “Lightweight Portable Security.” [Online]. Available: http://www.spi.dod.mil/lipose.htm.

[Accessed: 21-Jun-2015]. [95] c’t, “Bankix,” c’t. [Online]. Available: http://www.heise.de/ct/projekte/Sicheres-Online-

Banking-mit-Bankix-284099.html. [Accessed: 21-Jun-2015]. [96] “Live-System,” Wikipedia, 26-Feb-2015. [Online]. Available:

https://de.wikipedia.org/w/index.php?title=Live-System&oldid=139238021. [Accessed: 21-Jun-2015].

[97] “Windows 8 Security Overview,” Microsoft TechNet. [Online]. Available: https://technet.microsoft.com/en-us/library/dn283963.aspx. [Accessed: 21-Jun-2015].

[98] “Anti-rootkit utility TDSSKiller.” [Online]. Available: http://support.kaspersky.com/viruses/disinfection/5350. [Accessed: 21-Jun-2015].

[99] “How to remove a bootkit,” Kaspersky Support. [Online]. Available: http://support.kaspersky.com/viruses/solutions/2727. [Accessed: 21-Jun-2015].

[100] Pete Markowsky, “Containerizing Malicious SMM.” [Online]. Available: http://www.vodun.org/papers/ShmooCon2010/markowsky-shmoocon2010-containerizing_malicious_smm.pdf. [Accessed: 21-Jun-2015].

[101] “New Microarchitecture for 4th Gen Intel Core Processor Platforms,” Intel. [Online]. Available: http://www.intel.com/content/dam/www/public/us/en/documents/product-briefs/4th-gen-core-family-mobile-brief.pdf. [Accessed: 19-Jun-2015].

[102] “Intel Boot Guard,” Personal Rambling. [Online]. Available: http://patrick.georgi-clan.de/2015/02/17/intel-boot-guard/. [Accessed: 19-Jun-2015].

[103] “Trusted Execution Technology,” Wikipedia, 24-May-2015. [Online]. Available: https://en.wikipedia.org/w/index.php?title=Trusted_Execution_Technology&oldid=663797464. [Accessed: 19-Jun-2015].

[104] “How does the TPM perform integrity measurements on a system?,” Information Security Stack Exchange. [Online]. Available: http://security.stackexchange.com/questions/39329/how-does-the-tpm-perform-integrity-measurements-on-a-system. [Accessed: 19-Jun-2015].

[105] Roy, “How To Check For And Fix MBR Virus Infection,” TechLogon Technology News. [Online]. Available: http://techlogon.com/2012/01/15/how-to-check-for-and-fix-mbr-virus-infection/. [Accessed: 21-Jun-2015].

Page 36: 14 LightEater Wagner Zach - Lean Startup Security › wp-content › uploads › 2017 › 01 › 14… · Dieser Meldung liegt ein auf der CanSecWest 2015 [3] gehaltenen Vortrag „How

36

Abbildungsverzeichnis

Abbildung 1 Abfolge von Prozessen bei Inbetriebnahme eines Systems

angefertigt von den Autoren in Anlehnung an eine Abbildung in [73]

Abbildung 2 Betriebsmodi und Schutzring-Konzept der x86er Prozessoren

angefertigt von den Autoren nach Abbildungen in [100] und [42]

Abbildung 3 Ausführen von Software im SMM

angefertigt von den Autoren

Abbildung 4 Unterbrechung beliebiger Prozesse durch den SMM

angefertigt von den Autoren in Anlehnung an eine Abbildung in [73]

Abbildungen 4a-c LightEater Demo

angefertigt von den Autoren in Anlehnung an Video [6]

Abbildung 5 UEFI SwSMI Interface

angefertigt von den Autoren in Anlehnung an eine Abbildung in [4]

Tabellenverzeichnis

Tabelle 1 UEFI Vulnerabilities

angefertigt von den Autoren nach einer Aufzählung in [4]