SC(3): #ifdef-Totengräber und Bibliotheksschwärzen

SC(3): #ifdef-Totengräber und Bibliotheksschwärzen

1 Stunde 8 Minuten
Podcast
Podcaster
Forschungspodcast über Betriebssysteme
snaums

Kein Benutzerfoto
Hannover

Beschreibung

vor 3 Jahren

Wir beschäftigen uns im SystemCall Podcast mit aktueller
Betriebssystemforschung. In dieser dritten Folge sprechen wir mit
Andreas Ziegler von der FAU in Erlangen über seine Forschung am
Undertaker, em Totengräber für #ifdefs und das Schreckgespenst
für den Kconfig Kernelkonfigurator. Außerdem haben wir noch das
Papier "BlankIt Library Debloating" mitgebracht, was sich mit der
Reduktion von Angriffsfläche für Return-Oriented-Programming
(ROP) zur Laufzeit beschäftigt.


Der Undertaker erlaubt das Parsen von Konfigurationsdateien des
kconfig Buildsystems vom Linux Kernel, sodass einzelne Stellen
betrachtet werden können unter dem Gesichtspunkt, welche
Konfigoptionen an- bzw abgeschaltet sein müssen, damit diese
Zeile im Kernel landet. Über lange SAT-Formeln kann so auch
ermittelt werden, ob es sich ausschließende oder immer wahre
Optionskombinationen gibt. Mithilfe des Grundgerüsts erklärt
Andreas, wie er durch Tracing ein minimales System für den
getesteten Anwendungsfall generiert hat, und welche Ergebnisse
dabei erzielt worden.


BlankIt: Library Debloating beschäftigt sich mit dem ausblenden
von dynamisch nicht gebrauchten Bibliothekscode. Das trägt zwar
nicht zur Minimierung des Diskplatzes bei, wie bspw. beim
Undertaker der Fall, dafür aber minimiert das die Anzahl
möglicher ROP-Gadgets. Als ROP (Return-Oriented-Programming)
bezeichnet man die Ausführung und Kombination von einzelnen
Codestellen durch bewusste Stackmanipulation und zur
Stackmanipulation durch Returns.


Vorab werden Pfade durch den Code ausgewertet und mittels eines
Machine Learning Modells ermittelt, welche Funktionen anhand des
dynamischen Kontexts gebraucht werden. Bei jedem Funktionscall in
eine Library werden die gebrauchten Funktionen eingeblendet, also
wieder in den Speicher geschrieben, beim Zurückkehren werden die
Stellen wieder überschrieben.


Am Ende noch eine Leseempfehlung zum Thema Binary Rewriting, also
dem Umschreiben von Binärdateien, ohne Zugriff auf den
eigentlichen Source Code. Im Survey From Hack to Elaborate
Technique - A Survey on Binary Rewriting werden mögliche Ansätze
und Schritte strukturiert dargestellt und mit Quellen versehen.
Das Paper ist dadurch gut zu lesen und verständlich.
Links Undertaker

Reinhard Tartler, Daniel Lohmann, Julio Sincero, and Wolfgang
Schröder-Preikschat. 2011. Feature consistency in
compile-time-configurable system software: facing the linux
10,000 feature problem. In Proceedings of the sixth conference on
Computer systems (EuroSys '11). Association for Computing
Machinery, New York, NY, USA, 47–60. DOI:
doi.org/10.1145/1966445.1966451


ACM

Authors Copy



Kurmus, A., Tartler, R., Dorneanu, D., Heinloth, B., Rothberg,
V., Ruprecht, A., Schröder-Preikschat, W., Lohmann, D. and
Kapitza, R., 2013. Attack Surface Metrics and Automated
Compile-Time OS Kernel Tailoring. In NDSS.


NDSS

Authors Copy



Ruprecht, A., Heinloth, B. and Lohmann, D., 2014. Automatic
feature selection in large-scale system-software product lines.
ACM SIGPLAN Notices, 50(3), pp.39-48. DOI:
doi.org/10.1145/2775053.2658767


ACM

Authors Copy

BlankIt Library Debloating

Chris Porter, Girish Mururu, Prithayan Barua, and Santosh Pande.
2020. BlankIt library debloating: getting what you want instead
of cutting what you don’t. In Proceedings of the 41st ACM SIGPLAN
Conference on Programming Language Design and Implementation
(PLDI 2020). Association for Computing Machinery, New York, NY,
USA, 164–180. DOI: doi.org/10.1145/3385412.3386017


ACM

Leseempfehlung: From Hack to Elaborate Technique - A Survey on
Binary Rewriting

Matthias Wenzl, Georg Merzdovnik, Johanna Ullrich, and Edgar
Weippl. 2019. From Hack to Elaborate Technique—A Survey on Binary
Rewriting. ACM Comput. Surv. 52, 3, Article 49 (July 2019), 37
pages. DOI: doi.org/10.1145/3316415


ACM

Introsounds

Boxing Bell from Benboncan on freesound.org

Punching and Uppercut from 18hiltc on freesound.org

Fight Arena 1 and 4 from SyntaxSeed on freesound.org

Wilhelm Scream on archive.org

Kommentare (0)

Lade Inhalte...

Abonnenten

15
15