Vtable hijacking: object type integrity for run-time type information

Attackers try to hijack the control-flow of a victim’s process by exploiting a run-time vulnerability. Vtable hijacking is a state-of-the-art technique adversaries use to conduct control-flow hijacking attacks. It abuses the reliance of language constructs related to polymorphism on dynamic type inf...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Schröder, Marco (VerfasserIn) , Machmeier, Stefan (VerfasserIn) , Heuveline, Vincent (VerfasserIn)
Dokumenttyp: Buch/Monographie
Sprache:Englisch
Veröffentlicht: Heidelberg Universitätsbibliothek March 2, 2023
Schriftenreihe:Preprint series of the Engineering Mathematics and Computing Lab (EMCL) Preprint no. 2023-01
In: Preprint series of the Engineering Mathematics and Computing Lab (EMCL) (Preprint no. 2023-01)

DOI:10.11588/emclpp.2023.1.94354
Online-Zugang:Verlag, kostenfrei, Volltext: https://doi.org/10.11588/emclpp.2023.1.94354
Verlag, kostenfrei, Volltext: https://journals.ub.uni-heidelberg.de/index.php/emcl-pp/article/view/94354
Volltext
Verfasserangaben:Marco Schröder, Stefan Machmeier, Vincent Heuveline

MARC

LEADER 00000cam a2200000 c 4500
001 1838783741
003 DE-627
005 20230412151918.0
007 cr uuu---uuuuu
008 230309s2023 xx |||||o 00| ||eng c
024 7 |a 10.11588/emclpp.2023.1.94354  |2 doi 
035 |a (DE-627)1838783741 
035 |a (DE-599)KXP1838783741 
035 |a (OCoLC)1372305837 
040 |a DE-627  |b ger  |c DE-627  |e rda 
041 |a eng 
084 |a 28  |2 sdnb 
100 1 |a Schröder, Marco  |e VerfasserIn  |0 (DE-588)128295699X  |0 (DE-627)1838783814  |4 aut 
245 1 0 |a Vtable hijacking  |b object type integrity for run-time type information  |c Marco Schröder, Stefan Machmeier, Vincent Heuveline 
264 1 |a Heidelberg  |b Universitätsbibliothek  |c March 2, 2023 
300 |a 1 Online-Ressource (15 Seiten) 
336 |a Text  |b txt  |2 rdacontent 
337 |a Computermedien  |b c  |2 rdamedia 
338 |a Online-Ressource  |b cr  |2 rdacarrier 
490 1 |a Preprint series of the Engineering Mathematics and Computing Lab (EMCL)  |v Preprint no. 2023-01 
500 |a Gesehen am 09.03.2023 
520 |a Attackers try to hijack the control-flow of a victim’s process by exploiting a run-time vulnerability. Vtable hijacking is a state-of-the-art technique adversaries use to conduct control-flow hijacking attacks. It abuses the reliance of language constructs related to polymorphism on dynamic type information. The Control Flow Integrity (CFI) security policy is a well-established solution designed to prevent attacks that corrupt the control-flow. Deployed defense mechanisms based on CFI are often generic, which means that they do not consider high-level programming language semantics. This makes them vulnerable to vtable hijacking attacks. Object Type Integrity (OTI) is an orthogonal security policy that specifically addresses vtable hijacking. CFIXX is a Clang compiler extension that enforces OTI in the context of dynamic dispatch, which prevents vtable hijacking in this setting. However, this extension does not enforce OTI in context of polymorphism. The contribution of this work is a practical implementation to enable OTI in the context of C++’s run-time type information for the dynamic_cast expressions and the typeid operator. 
700 1 |a Machmeier, Stefan  |e VerfasserIn  |0 (DE-588)1282957163  |0 (DE-627)1838783822  |4 aut 
700 1 |a Heuveline, Vincent  |d 1968-  |e VerfasserIn  |0 (DE-588)1046579266  |0 (DE-627)776691880  |0 (DE-576)399904727  |4 aut 
810 2 |a Engineering Mathematics and Computing Lab  |t Preprint series of the Engineering Mathematics and Computing Lab (EMCL)  |v Preprint no. 2023-01  |9 2023,1  |w (DE-627)776852515  |w (DE-576)399725873  |w (DE-600)2750748-8  |x 2191-0693  |7 am 
856 4 0 |u https://doi.org/10.11588/emclpp.2023.1.94354  |x Verlag  |x Resolving-System  |z kostenfrei  |3 Volltext 
856 4 0 |u https://journals.ub.uni-heidelberg.de/index.php/emcl-pp/article/view/94354  |x Verlag  |z kostenfrei  |3 Volltext 
951 |a BO 
992 |a 20230309 
993 |a Book 
994 |a 2023 
998 |g 1046579266  |a Heuveline, Vincent  |m 1046579266:Heuveline, Vincent  |d 700000  |d 708000  |e 700000PH1046579266  |e 708000PH1046579266  |k 0/700000/  |k 1/700000/708000/  |p 3  |y j 
998 |g 1282957163  |a Machmeier, Stefan  |m 1282957163:Machmeier, Stefan  |d 700000  |d 708000  |e 700000PM1282957163  |e 708000PM1282957163  |k 0/700000/  |k 1/700000/708000/  |p 2 
998 |g 128295699X  |a Schröder, Marco  |m 128295699X:Schröder, Marco  |d 700000  |d 708000  |e 700000PS128295699X  |e 708000PS128295699X  |k 0/700000/  |k 1/700000/708000/  |p 1  |x j 
999 |a KXP-PPN1838783741  |e 4285956462 
BIB |a Y 
JSO |a {"person":[{"role":"aut","family":"Schröder","given":"Marco","display":"Schröder, Marco"},{"given":"Stefan","display":"Machmeier, Stefan","family":"Machmeier","role":"aut"},{"given":"Vincent","display":"Heuveline, Vincent","role":"aut","family":"Heuveline"}],"recId":"1838783741","note":["Gesehen am 09.03.2023"],"name":{"displayForm":["Marco Schröder, Stefan Machmeier, Vincent Heuveline"]},"language":["eng"],"relMultPart":[{"corporate":[{"display":"Engineering Mathematics and Computing Lab","role":"aut"}],"disp":"Preprint series of the Engineering Mathematics and Computing Lab (EMCL)","type":{"bibl":"serial","media":"Online-Ressource"},"part":{"number":["Preprint no. 2023-01"],"number_sort":["2023,1"]},"language":["eng"],"pubHistory":["2009 -"],"dispAlt":"Engineering Mathematics and Computing Lab: Preprint series of the Engineering Mathematics and Computing Lab (EMCL)","physDesc":[{"extent":"Online-Ressource"}],"id":{"eki":["776852515"],"issn":["2191-0693"],"zdb":["2750748-8"]},"title":[{"title":"Preprint series of the Engineering Mathematics and Computing Lab (EMCL)","title_sort":"Preprint series of the Engineering Mathematics and Computing Lab (EMCL)"}],"origin":[{"publisher":"Univ.-Bibliothek","dateIssuedDisp":"2009-","dateIssuedKey":"2009","publisherPlace":"Heidelberg"}],"recId":"776852515"}],"origin":[{"dateIssuedDisp":"March 2, 2023","publisher":"Universitätsbibliothek","publisherPlace":"Heidelberg","dateIssuedKey":"2023"}],"type":{"bibl":"book","media":"Online-Ressource"},"title":[{"title":"Vtable hijacking","subtitle":"object type integrity for run-time type information","title_sort":"Vtable hijacking"}],"physDesc":[{"extent":"1 Online-Ressource (15 Seiten)"}],"id":{"eki":["1838783741"],"doi":["10.11588/emclpp.2023.1.94354"]}} 
SRT |a SCHROEDERMVTABLEHIJA2202