{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,19]],"date-time":"2025-03-19T11:51:49Z","timestamp":1742385109165,"version":"3.37.3"},"reference-count":62,"publisher":"Institute of Electrical and Electronics Engineers (IEEE)","license":[{"start":{"date-parts":[[2020,1,1]],"date-time":"2020-01-01T00:00:00Z","timestamp":1577836800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/legalcode"}],"funder":[{"DOI":"10.13039\/501100003725","name":"National Research Foundation of Korea","doi-asserted-by":"publisher","award":["2018R1D1A1B07047395"],"award-info":[{"award-number":["2018R1D1A1B07047395"]}],"id":[{"id":"10.13039\/501100003725","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["IEEE Access"],"published-print":{"date-parts":[[2020]]},"DOI":"10.1109\/access.2020.2975037","type":"journal-article","created":{"date-parts":[[2020,2,19]],"date-time":"2020-02-19T21:32:17Z","timestamp":1582147937000},"page":"36267-36280","source":"Crossref","is-referenced-by-count":8,"title":["A CFI Countermeasure Against GOT Overwrite Attacks"],"prefix":"10.1109","volume":"8","author":[{"given":"Seunghoon","family":"Jeong","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jaejoon","family":"Hwang","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Hyukjin","family":"Kwon","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-2665-3339","authenticated-orcid":false,"given":"Dongkyoo","family":"Shin","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"263","reference":[{"key":"ref39","article-title":"Lockdown: Dynamic control-flow integrity","author":"payer","year":"2014","journal-title":"arXiv 1407 0549"},{"key":"ref38","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2013.45"},{"key":"ref33","doi-asserted-by":"publisher","DOI":"10.1109\/TCAD.2017.2748000"},{"key":"ref32","doi-asserted-by":"publisher","DOI":"10.1145\/2897937.2898061"},{"key":"ref31","doi-asserted-by":"publisher","DOI":"10.1145\/2897937.2898098"},{"key":"ref30","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-26362-5_4"},{"key":"ref37","article-title":"Methodologies for quantifying (Re-)randomization security and timing under JIT-ROP","author":"salman ahmed","year":"2019","journal-title":"arXiv 1910 03034"},{"journal-title":"Control Flow Integrity Design Documentation","year":"0","key":"ref36"},{"key":"ref35","doi-asserted-by":"publisher","DOI":"10.2991\/iccsee.2013.250"},{"key":"ref34","doi-asserted-by":"publisher","DOI":"10.1109\/JIOT.2018.2866164"},{"key":"ref60","doi-asserted-by":"publisher","DOI":"10.1145\/356603.356605"},{"article-title":"Too much PIE is bad for performance","year":"2012","author":"payer","key":"ref62"},{"key":"ref61","doi-asserted-by":"publisher","DOI":"10.14722\/ndss.2017.23199"},{"key":"ref28","doi-asserted-by":"publisher","DOI":"10.1145\/2593069.2596656"},{"key":"ref27","first-page":"161","article-title":"Control-flow bending: On the effectiveness of control-flow integrity","author":"carlini","year":"2015","journal-title":"Proc 24th Secur Symp (USENIX Secur )"},{"key":"ref29","doi-asserted-by":"publisher","DOI":"10.1145\/2744769.2744847"},{"journal-title":"Squeezing the Dynamic Loader for Fun and Profit","year":"2015","author":"zhang","key":"ref2"},{"journal-title":"How to Hijack the Global Offset Table With Pointers for Root Shells","year":"2020","key":"ref1"},{"key":"ref20","first-page":"401","article-title":"Stitching the gadgets: On the ineffectiveness of coarse-grained control-flow integrity protection","author":"davi","year":"2014","journal-title":"Proc 23rd USENIX Secur Symp (USENIX Secur )"},{"key":"ref22","first-page":"941","article-title":"Enforcing forward-edge control-flow integrity in GCC & LLVM","author":"tice","year":"2014","journal-title":"Proc 23rd USENIX Secur Symp (USENIX Secur )"},{"key":"ref21","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2014.43"},{"key":"ref24","doi-asserted-by":"publisher","DOI":"10.14722\/ndss.2015.23271"},{"key":"ref23","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-20550-2_8"},{"key":"ref26","doi-asserted-by":"publisher","DOI":"10.1145\/2810103.2813646"},{"key":"ref25","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2015.51"},{"key":"ref50","doi-asserted-by":"publisher","DOI":"10.1145\/3274694.3274739"},{"key":"ref51","doi-asserted-by":"publisher","DOI":"10.1145\/3243734.3243797"},{"journal-title":"Chronobiologia","year":"2020","key":"ref59"},{"journal-title":"LLVM Language Reference Manual","year":"2020","key":"ref58"},{"journal-title":"Cross DSO CFI&#x2014;LLVM and Android","year":"2020","author":"rohlf","key":"ref57"},{"journal-title":"LLVM Link Time Optimization Design and Implementation","year":"2020","key":"ref56"},{"journal-title":"LLD&#x2014;The LLVM Linker","year":"2020","key":"ref55"},{"journal-title":"Writing an LLVM Pass","year":"2020","key":"ref54"},{"journal-title":"Name Mangling Demystified","year":"2007","author":"kefallonitis","key":"ref53"},{"journal-title":"Symbol Versioning","year":"2020","key":"ref52"},{"journal-title":"gdb and Binutils","year":"2020","key":"ref10"},{"key":"ref11","doi-asserted-by":"publisher","DOI":"10.1145\/1102120.1102165"},{"journal-title":"PaX address space layout randomization (ASLR)","year":"2020","key":"ref40"},{"key":"ref12","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2016.62"},{"key":"ref13","doi-asserted-by":"publisher","DOI":"10.1145\/3134600.3134640"},{"key":"ref14","doi-asserted-by":"publisher","DOI":"10.1109\/SecDev.2019.00022"},{"key":"ref15","doi-asserted-by":"publisher","DOI":"10.1145\/3054924"},{"journal-title":"Data Execution Prevention (DEP)","year":"2019","key":"ref16"},{"key":"ref17","first-page":"27","article-title":"MoCFI: A framework to mitigate control-flow attacks on smartphones","volume":"26","author":"davi","year":"2012","journal-title":"Proc NDSS"},{"key":"ref18","first-page":"559","article-title":"Practical control flow integrity and randomization for binary executables","author":"zhang","year":"2013","journal-title":"Proc IEEE Symp Secur Privacy"},{"key":"ref19","first-page":"385","article-title":"ROP is still dangerous: Breaking modern defenses","author":"carlini","year":"2014","journal-title":"Proc 23rd Secur Symp (USENIX Secur )"},{"key":"ref4","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2004.1281665"},{"journal-title":"Dynamic Linking With Large Number of DSOs Degrades Into Linear Lookup","year":"2020","author":"pluzhnikov","key":"ref3"},{"journal-title":"Control flow guard","year":"2020","key":"ref6"},{"key":"ref5","first-page":"552","article-title":"The geometry of innocent flesh on the bone: Return-into-libc without function calls (on the x86)","author":"shacham","year":"2007","journal-title":"Proc ACM Conf Comput Commun Secur"},{"key":"ref8","first-page":"337","article-title":"Control flow integrity for COTS binaries","author":"zhang","year":"2013","journal-title":"Proc Usenix Secur Symp"},{"journal-title":"Control-flow integrity","year":"2020","key":"ref7"},{"key":"ref49","first-page":"367","article-title":"Shuffler: Fast and deployable continuous code re-randomization","author":"williams-king","year":"2016","journal-title":"Proc of USENIX Symp on Operating Systems Design and Implementation (OSDI)"},{"key":"ref9","doi-asserted-by":"publisher","DOI":"10.1145\/2666356.2594295"},{"key":"ref46","doi-asserted-by":"publisher","DOI":"10.1145\/2382196.2382216"},{"key":"ref45","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2018.00029"},{"key":"ref48","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2013.6494997"},{"key":"ref47","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2012.39"},{"key":"ref42","first-page":"475","article-title":"Enhanced operating system security through efficient and fine-grained address space randomization","author":"giuffrida","year":"2012","journal-title":"Proc 21st Secur Symp (USENIX Secur )"},{"key":"ref41","doi-asserted-by":"publisher","DOI":"10.1515\/popets-2016-0050"},{"key":"ref44","doi-asserted-by":"publisher","DOI":"10.1145\/2857705.2857726"},{"key":"ref43","doi-asserted-by":"publisher","DOI":"10.1109\/ACSAC.2006.9"}],"container-title":["IEEE Access"],"original-title":[],"link":[{"URL":"http:\/\/xplorestaging.ieee.org\/ielx7\/6287639\/8948470\/09003251.pdf?arnumber=9003251","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,12,17]],"date-time":"2021-12-17T19:51:45Z","timestamp":1639770705000},"score":1,"resource":{"primary":{"URL":"https:\/\/ieeexplore.ieee.org\/document\/9003251\/"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020]]},"references-count":62,"URL":"https:\/\/doi.org\/10.1109\/access.2020.2975037","relation":{},"ISSN":["2169-3536"],"issn-type":[{"type":"electronic","value":"2169-3536"}],"subject":[],"published":{"date-parts":[[2020]]}}}