Inhaltsverzeichnis. 1 Worum geht es? 2 Workflow. 3 Entwickelte Tools. 4 Auswertung und Vergleich

Ähnliche Dokumente
Verarbeitung der -Adressen

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Sybase Central Dokumentation Aktivierung der Monitoringfunktion

Wichtige Information zur Verwendung von CS-TING Version 9 für Microsoft Word 2000 (und höher)

Tutorial Windows XP SP2 verteilen

Barcodedatei importieren

HTBVIEWER INBETRIEBNAHME

Lehrer: Einschreibemethoden

Informatik-Sommercamp Mastermind mit dem Android SDK

Stellvertretenden Genehmiger verwalten. Tipps & Tricks

Microsoft Internet Explorer

Aktivierung von Makros in den Erfassungshilfen

Hinweise bei Problemen mit Makros

EINSTELLUNGEN WÄHLEN. von Harald Jakobs und Yannic Hoffmann Stand: September 2015

Task: Nmap Skripte ausführen

Um sich zu registrieren, öffnen Sie die Internetseite und wählen Sie dort rechts oben

Erstellen von Mailboxen

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Autoformat während der Eingabe

Anleitung zum erstellen einer PDF-Datei aus Microsoft Word

SCHRITT 1: Öffnen des Bildes und Auswahl der Option»Drucken«im Menü»Datei«...2. SCHRITT 2: Angeben des Papierformat im Dialog»Drucklayout«...

FIREBIRD BETRIEB DER SAFESCAN TA UND TA+ SOFTWARE AUF MEHR ALS EINEM COMPUTER

Anleitung für die Formularbearbeitung

Netzlaufwerke mit WebDAV einbinden

Materialupload. Verwalten von Unterrichtsmaterialien. über das STiNE-Webportal. Universität Hamburg Tor zur Welt der Wissenschaft

Benutzung des NAM. Starten Sie Ihren Browser und rufen Sie folgende Adresse auf:

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

Abwesenheitsnotiz im Exchange Server 2010

myreport Benutzerhandbuch Active Tracing 3.1 Volle Transparenz Durchgehende Sendungsverfolgung und Status Reporte

TechNote: TWINFAX Protokollierungen aktivieren

Da ist meine Anleitung drin!

HowTo: erweiterte VLAN Einrichtung & Management von APs mittels des DWC- 1000/DWS-4026/DWS-3160

Inhaltsverzeichnis Dokumentverwaltung Organisation von Dokumenten Ordner erstellen Dokumente im Dateisystem behandeln...

Das Handbuch zu KNetAttach. Orville Bennett Übersetzung: Thomas Bögel

Durch Drücken des Buttons Bestätigen (siehe Punkt 2) wird Ihre an Ihr Outlookpostfach weiterleiten.

Dokumentation zur Versendung der Statistik Daten

ACDSee 10. ACDSee 10: Fotos gruppieren und schneller durchsuchen. Was ist Gruppieren? Fotos gruppieren. Das Inhaltsverzeichnis zum Gruppieren nutzen

Eltako-FVS. Lizenzaktivierung ohne Internetverbindung

Wissenswertes über binäre Felder

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

MailUtilities: Remote Deployment - Einführung

Word-Vorlagen-System mit Outlookanbindung

Projekte Packen, Kopieren und Versenden

Es gibt zwei Wege die elektronischen Daten aus Navision zu exportieren.

Massenversand Dorfstrasse 143 CH Kilchberg Telefon 01 / Telefax 01 / info@hp-engineering.com

Übernahme von Daten aus einem bestehenden Outlook-Profil bzw. einem anderen Exchange Server

MARCANT - File Delivery System

TimeSafe Zeiterfassung. Version 2.5 (April 2009)

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

THUNDERBIRD. Vorbereitende Einstellungen auf signaturportal.de für die Nutzung von Thunderbird

Internet Explorer Version 6

Handbuch ECDL 2003 Basic Modul 3: Textverarbeitung Dokument bearbeiten und speichern

Inhaltsverzeichnis Seite

Cambridge ESOL BULATS Online FAQs Konfiguration des Internet Explorers

Switching. Übung 7 Spanning Tree. 7.1 Szenario

Einrichten des Elektronischen Postfachs

Überprüfung der digital signierten E-Rechnung

Bedienungsanleitung Joomla 3.xx für Redakteure mit Admin-Rechten

Schnellanleitung: Verbuchung von Studien- und Prüfungsleistungen

Installations- und Kurzanleitung

Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen

Um ein solches Dokument zu erzeugen, muss eine Serienbriefvorlage in Word erstellt werden, das auf die von BüroWARE erstellte Datei zugreift.

Intrexx unter Windows Server 2008

Abrechnung via KV-SafeNet*-Portal an die KV Hessen übermitteln

OpenVPN unter Linux mit KVpnc Stand: 16. Mai 2013

egovernment für das Open Source CMS Contao

Process4.biz Release Features Übersicht. Repository. Das Schützen von Diagrammen wurde optimiert (check-in, check-out)

Anleitung zur Excel-Anwendung Basisprämienberechnung

Neue Funktionen im GUI für PC-DMIS V3.x 4.x Seite 1 von 8

Pflegende Angehörige Online Ihre Plattform im Internet

Sicherheitseinstellungen... 2 Pop-up-Fenster erlauben... 3

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt


Anleitung zur Registrierung und Nutzung des Veranstalter- Zugangs für den Veranstaltungskalender der Expertenliste

mit SD-Karte SD-Karte Inhalt

ISA Server 2004 Protokollierung - Von Marc Grote. Die Informationen in diesem Artikel beziehen sich auf:

SSH Authentifizierung über Public Key

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

Kursangebot gesammelt einlesen

Windows 7 Firewall Regeln über die Registry

Im Folgenden wird die Konfiguration der DIME Tools erläutert. Dazu zählen die Dienste TFTP Server, Time Server, Syslog Daemon und BootP Server.

Saldo-Konto eines Mitarbeiters korrigieren

Teamcenter Product Cost Management Infomaterial Lizenzen in Magics und Teamcenter Product Cost Management

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Firmware-Installationsanleitung für AVH-X2500BT

Die Post hat eine Umfrage gemacht

Dokumentation: ZIBXL - Auswertung der internen Umbuchungen

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Teaser-Bilder erstellen mit GIMP. Bildbearbeitung mit GIMP 1

Verifizierung neuer bzw. geänderter -adressen in den Anwender- und/oder Benutzerstammdaten

Aufruf der Weboberflache des HPM- Warmepumpenmanagers aus dem Internet TIPPS

Inhaltsverzeichnis Kapitel 18

Abwesenheitsnotiz im Exchangeserver 2010

Herzlich willkommen. Vielen Dank, dass Sie an unserer Studie teilnehmen (hinsetzen lassen etc.)

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

Anleitung zur Einrichtung des WDS / WDS with AP Modus

Seriendruck mit der Codex-Software

Lizenzen auschecken. Was ist zu tun?

SJ OFFICE - Update 3.0

Transkript:

Inhaltsverzeichnis 1 Worum geht es? 2 Workflow 3 Entwickelte Tools 4 Auswertung und Vergleich Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 3 / 15

Worum geht es? Aufgabenbeschreibung Verwendete Funktionalität im Linux-Kern für bestimmte Anwendungsszenarien bestimmen Analyse und Auswertungen unter Verwendung des Undertaker Tools aus dem VAMOS-Projekt Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 4 / 15

Workflow Schritt 0: System vorbereiten In der Kernelconfig ftrace aktivieren CONFIG FTRACE=y Module deaktivieren CONFIG MODULES=n Debugsymbole aktivieren CONFIG DEBUG INFO=y Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 5 / 15

Workflow Schritt 1: Verwendungsszenarien simulieren 1 ftrace-logging starten 2 System (eine Zeit lang) gemäss Einsatz verwenden [...] <idle>-0 [000].N.. 156.091000: _raw_spin_lock_irq+0x4/0x11 <ffffffff81506f49> \ <- schedule+0xc2/0x51b <ffffffff81506028> <idle>-0 [000] dn.. 156.091000: put_prev_task_idle+0x4/0xb <ffffffff81051766> \ <- schedule+0x26f/0x51b <ffffffff815061d5> <idle>-0 [000] dn.. 156.091000: pick_next_task_fair+0x11/0x12d <ffffffff81053961> \ <-pick_next_task+0x26/0x4a <ffffffff8104c64a> <idle>-0 [000] dn.. 156.091000: clear_buddies+0x4/0x8c <ffffffff810529b8> \ <-pick_next_task_fair+0xc1/0x12d <ffffffff81053a11> <idle>-0 [000] dn.. 156.091000: set_next_entity+0xb/0x99 <ffffffff81052083> \ <-pick_next_task_fair+0xcc/0x12d <ffffffff81053a1c> <idle>-0 [000] dn.. 156.091000: update_stats_wait_end+0xb/0xaa <ffffffff81051c48> \ <-set_next_entity+0x21/0x99 <ffffffff81052099> kworker/0:0-4 [000] d... 156.091000: finish_task_switch+0x11/0xdf <ffffffff8104c2a2> \ <- schedule+0x4d6/0x51b <ffffffff8150643c> kworker/0:0-4 [000]... 156.091000: _raw_spin_lock_irq+0x4/0x11 <ffffffff81506f49> \ <-worker_thread+0x38/0x157 <ffffffff8103fb2c> kworker/0:0-4 [000] d... 156.091000: need_more_worker+0x5/0x3b <ffffffff8103d19f> \ <-worker_thread+0x88/0x157 <ffffffff8103fb7c> kworker/0:0-4 [000] d... 156.091000: get_gcwq_nr_running+0x4/0x28 <ffffffff8103d15a> \ <-need_more_worker+0x21/0x3b <ffffffff8103d1bb> [...] Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 6 / 15

Workflow Schritt 1.5: Log-Datenmengen reduzieren Vorgehensweise Adressen (Offset und Base) zusammenführen Adressen nicht mehrfach ausgeben Aber: Fehlererkennung durch Redundanz - Funktionsnamen trotzdem mit speichern [...] 18446744071579168231 account_system_time 18446744071579400989 acct_update_integrals 18446744071579032938 jiffies_to_timeval 18446744071579636760 get_mm_counter 18446744071579064851 run_local_timers 18446744071579136085 hrtimer_run_queues 18446744071579038856 raise_softirq 18446744071579390100 rcu_check_callbacks 18446744071579390008 rcu_is_cpu_rrupt_from_idle 18446744071579388305 rcu_pending 18446744071579016622 printk_tick 18446744071579170638 scheduler_tick 18446744071579062274 cascade [...] Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 7 / 15

Workflow Schritt 2: Quellen herausfinden Verwenden der DWARF Debugsymbole (via objdump -l -d -j.text oder nm -l auf vmlinux) Finden der entsprechenden source file locations [...]./kernel/sched/fair.c:2714./fs/read_write.c:479./kernel/extable.c:94./arch/x86/kernel/dumpstack.c:163./kernel/rcutree.c:163./fs/stat.c:245./drivers/usb/core/hcd.c:737./security/capability.c:299./drivers/tty/serial/serial_core.c:551./fs/select.c:234./fs/super.c:216./kernel/workqueue.c:466./arch/x86/kernel/apic/apic.c:445 [...] Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 8 / 15

Workflow Schritt 3: Reduzierte Konfiguration generieren Durch gezielte Blockanalysen wird mit Hilfe der VAMOS-Tools eine Konfiguration mit relevanten Optionen erstellt [...] CONFIG_SERIAL_VT8500=n CONFIG_SERIAL_VT8500_CONSOLE=n CONFIG_SERIAL_XILINX_PS_UART=y CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y CONFIG_SERIAL_XILINX_PS_UART_MODULE=n CONFIG_SERIAL_ZS=n CONFIG_SERIAL_ZS_CONSOLE=n CONFIG_SERIAL_ZS_MODULE=n CONFIG_SGI_GRU=y CONFIG_SGI_GRU_MODULE=n CONFIG_SGI_XP=y CONFIG_SGI_XP_MODULE=n CONFIG_SIGNALFD=y CONFIG_SLAB=y CONFIG_SLOB=n CONFIG_SLUB=n [...] Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 9 / 15

Workflow Schritt 4: System verwenden Ein im Idealfall schlankeres System ohne nichtbenötigte Funktionalität verwenden und Feierabend machen Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 10 / 15

Workflow Jabba The Hutt C-Tool zum Echtzeit-Minimieren der Ftrace-Logdaten Eingabe: ftrace pipe via stdin Ausgabe: einmalig Addressen und Funktionsnamen (sofern vorhanden) via stdin Verwendet read und write Systemaufruf, eigene minimale Hashset-Implementierung, sonst nichts Analyse der trace pipe mit sehr geringem Aufwand (in O(1 n)) Vereinfachte Kontrolle über bloatedone.sh Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 11 / 15

Entwickelte Tools Obi Wan Pythonskript zum Matchen von Addressen auf {Sourcefile:Zeilennummer} Eingabe: Trace-Logdaten, vmlinux-file mit Debugsymbolen Ausgabe: relativer Pfad zur Datei und Zeilennummer im Linux-Tree Verwendet nm, objdump und das eigene jabba-log-format Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 12 / 15

Entwickelte Tools Undertaker (Vader Release) Erweiterung des Undertakers um Funktionen der Konfigurationserstellung -j blockconf: Find configuration enabling specified block Eingabe: Quelltextangabe (Format: <file>:<line>) Ausgabe: Analysedaten, weiterhin wird eine Konfigurationsdatei zu dieser Quelltextangabe erstellt -j mergeblockconf: Find configuration enabling specified blocks in the given file Eingabe: Datei mit Quelltextangaben (<file>:<line>\n)+ Ausgabe: Analysedaten, weiterhin wird eine Konfigurationsdatei erstellt, welche alle Quelltextangaben beinhaltet -B: Blacklist (analog zur modifizierten -W: Whitelist) Angabe: Datei mit Blöcken (bzw. Konfigurationsangaben = Features), welche nicht aktiviert werden sollen Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 13 / 15

Entwickelte Tools Ergebnis durch klar definierte Meilensteine war eine gezielte und effiziente Herangehensweise möglich und zugleich wurde der Überblick gewahrt Analyse von Modulen ist zu aufwendig (im Rahmen des Praktikums) Manlobby dient gut als Wohnzimmer Black-/Whitelisting für funktionierendes System notwendig Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 14 / 15

Auswertung und Vergleich Testlauf allyesconfig defconfig traced with lines features 5.261 941 406 411 golem -l 9.088 1.855 1.216 1.040 vmlinux size 904, 1 MB 150, 7 MB 92, 3 MB 89, 1 MB objdump files 10.211 2.294 1.559 1.390 lines 2.657.436 407.758 243.788 225.235 instructions 13.227.293 1.935.934 1.017.193 1.141.978 Ablauf: Ca. 5 Minuten Trace in qemu auf standardkonfigurierten Kernel (defconfig), jeweils selbe Funktionalität ausgeführt Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 15 / 15

Auswertung und Vergleich Danke an siretart, stettberger und siccegge für die geduldige Unterstützung bei der Einführung in VAMOS, Umsetzung und Implementierung und sowieso an das gesammte PASST-Team für die erstklassige Betreuung in diesem Semester natürlich an alle Zuhörer, die bis jetzt ohne einzuschlafen durchgehalten haben! Rothberg, Ruprecht & Heinloth (FAU) Trace Wars - Attack Surface Reduction March 16, 2012 16 / 15