{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,18]],"date-time":"2025-11-18T12:17:20Z","timestamp":1763468240294},"reference-count":35,"publisher":"IEEE","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2015,2]]},"DOI":"10.1109\/cgo.2015.7054189","type":"proceedings-article","created":{"date-parts":[[2015,3,10]],"date-time":"2015-03-10T21:47:12Z","timestamp":1426024032000},"page":"79-90","source":"Crossref","is-referenced-by-count":9,"title":["Getting in control of your control flow with control-data isolation"],"prefix":"10.1109","author":[{"given":"William","family":"Arthur","sequence":"first","affiliation":[]},{"given":"Ben","family":"Mehne","sequence":"additional","affiliation":[]},{"given":"Reetuparna","family":"Das","sequence":"additional","affiliation":[]},{"given":"Todd","family":"Austin","sequence":"additional","affiliation":[]}],"member":"263","reference":[{"key":"ref33","first-page":"337","article-title":"Control Flow Integrity for COTS Binaries","author":"zhang","year":"2013","journal-title":"USENIX Security Symposium"},{"key":"ref32","doi-asserted-by":"crossref","first-page":"276","DOI":"10.1145\/223982.224438","article-title":"A comparative analysis of schemes for correlated branch prediction","author":"young","year":"1995","journal-title":"Proceedings 22nd Annual International Symposium on Computer Architecture ISCA"},{"key":"ref31","article-title":"Constructing precise control flow graphs from binaries","author":"xu","year":"2009","journal-title":"University of California Davis Tech Rep"},{"key":"ref30","first-page":"1","article-title":"CFIMon: Detecting violation of control flow integrity using performance counters","author":"xia","year":"2012","journal-title":"42nd Annual IEEE\/IFIP International Conference on Dependable Systems and Networks (DSN)"},{"key":"ref35","first-page":"111","article-title":"Security Trend Analysis sith CVE Topic Models","author":"zimmermann","year":"0"},{"key":"ref34","first-page":"559","article-title":"Practical Control Flow Integrity and Randomization for Binary Executables","author":"zhang","year":"0"},{"key":"ref10","article-title":"Point-Guard: Protecting pointers from buffer overflow vulnerabilities","author":"cowan","year":"2003","journal-title":"12th USENIX Security Symposium"},{"key":"ref11","doi-asserted-by":"publisher","DOI":"10.1109\/MC.1999.769438"},{"journal-title":"Gartner","year":"2013","key":"ref12"},{"key":"ref13","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2008.4771784"},{"key":"ref14","doi-asserted-by":"publisher","DOI":"10.1145\/353171.353191"},{"journal-title":"Computer Threats","year":"2013","key":"ref15"},{"key":"ref16","doi-asserted-by":"publisher","DOI":"10.1145\/1250662.1250715"},{"key":"ref17","article-title":"Secure execution via program shepherding","author":"kiriansky","year":"2002","journal-title":"Proc Usenix Symp"},{"key":"ref18","doi-asserted-by":"publisher","DOI":"10.1145\/331119.331419"},{"key":"ref19","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2004.1281665"},{"key":"ref28","doi-asserted-by":"publisher","DOI":"10.1109\/RTCSA.2000.896367"},{"key":"ref4","doi-asserted-by":"publisher","DOI":"10.1145\/2024569.2024572"},{"key":"ref27","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2007.19"},{"key":"ref3","doi-asserted-by":"publisher","DOI":"10.1145\/236337.236371"},{"key":"ref6","doi-asserted-by":"publisher","DOI":"10.1145\/2076732.2076783"},{"key":"ref29","article-title":"Enforcing Forward-Edge Control-Flow Integrity in GCC & LLVM","author":"tice","year":"2014","journal-title":"23rd USENIX Security Symposium"},{"key":"ref5","doi-asserted-by":"publisher","DOI":"10.1109\/WCRE.2012.11"},{"journal-title":"Bypassing Non-Executable Stack during Exploitation Using Return-to-LibC","year":"2012","key":"ref8"},{"key":"ref7","first-page":"42","article-title":"Architectural support for software-based protection","author":"erlingsson","year":"2006","journal-title":"Proceedings of the 1st workshop on Architectural and system support for improving software dependability"},{"key":"ref2","doi-asserted-by":"publisher","DOI":"10.1145\/2465351.2465380"},{"journal-title":"How to Hijack the Global Offset Table with pointers","year":"2011","key":"ref9"},{"key":"ref1","doi-asserted-by":"publisher","DOI":"10.1145\/1609956.1609960"},{"journal-title":"musl-libc","year":"2014","key":"ref20"},{"key":"ref22","doi-asserted-by":"publisher","DOI":"10.1145\/1315245.1315260"},{"key":"ref21","doi-asserted-by":"publisher","DOI":"10.1145\/1920261.1920269"},{"key":"ref24","first-page":"211","article-title":"A binary rewriting defense against stack based buffer overflow attacks","author":"prasad","year":"2003","journal-title":"Proc of Usenix Tech Conf"},{"key":"ref23","doi-asserted-by":"publisher","DOI":"10.1145\/2523649.2523674"},{"key":"ref26","first-page":"506","article-title":"Architectural Support for Run-Time Validation of Control Flow Transfer","author":"shi","year":"2006","journal-title":"International Conference on Computer Design (ICCD)"},{"journal-title":"Global Offset Table Injection Procedure","year":"2011","author":"ramilli","key":"ref25"}],"event":{"name":"2015 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO)","start":{"date-parts":[[2015,2,7]]},"location":"San Francisco, CA, USA","end":{"date-parts":[[2015,2,11]]}},"container-title":["2015 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO)"],"original-title":[],"link":[{"URL":"http:\/\/xplorestaging.ieee.org\/ielx7\/7041249\/7054173\/07054189.pdf?arnumber=7054189","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,8,8]],"date-time":"2023-08-08T17:30:40Z","timestamp":1691515840000},"score":1,"resource":{"primary":{"URL":"http:\/\/ieeexplore.ieee.org\/document\/7054189\/"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,2]]},"references-count":35,"URL":"https:\/\/doi.org\/10.1109\/cgo.2015.7054189","relation":{},"subject":[],"published":{"date-parts":[[2015,2]]}}}