{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,21]],"date-time":"2026-07-21T16:50:10Z","timestamp":1784652610438,"version":"3.55.0"},"reference-count":63,"publisher":"IEEE","license":[{"start":{"date-parts":[[2019,2,1]],"date-time":"2019-02-01T00:00:00Z","timestamp":1548979200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/ieeexplore.ieee.org\/Xplorehelp\/downloads\/license-information\/IEEE.html"},{"start":{"date-parts":[[2019,2,1]],"date-time":"2019-02-01T00:00:00Z","timestamp":1548979200000},"content-version":"stm-asf","delay-in-days":0,"URL":"https:\/\/doi.org\/10.15223\/policy-029"},{"start":{"date-parts":[[2019,2,1]],"date-time":"2019-02-01T00:00:00Z","timestamp":1548979200000},"content-version":"stm-asf","delay-in-days":0,"URL":"https:\/\/doi.org\/10.15223\/policy-037"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2019,2]]},"DOI":"10.1109\/cgo.2019.8661198","type":"proceedings-article","created":{"date-parts":[[2019,3,7]],"date-time":"2019-03-07T19:01:46Z","timestamp":1551985306000},"page":"50-60","source":"Crossref","is-referenced-by-count":3,"title":["CSOD: Context-Sensitive Overflow Detection"],"prefix":"10.1109","author":[{"given":"Hongyu","family":"Liu","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Sam","family":"Silvestro","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Xiaoyin","family":"Wang","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Lide","family":"Duan","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Tongping","family":"Liu","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"263","reference":[{"key":"ref39","doi-asserted-by":"publisher","DOI":"10.1145\/1542476.1542504"},{"key":"ref38","year":"2011"},{"key":"ref33","doi-asserted-by":"publisher","DOI":"10.1145\/1287624.1287703"},{"key":"ref32","doi-asserted-by":"publisher","DOI":"10.1145\/2884781.2884784"},{"key":"ref31","author":"liu","year":"0","journal-title":"Idealreplay Identical and efficient record-and-replay"},{"key":"ref30","article-title":"Linux Comunity","year":"2015","journal-title":"time - time a simple command or give resource usage"},{"key":"ref37","author":"mazieres","year":"1996","journal-title":"Arc4random(3)"},{"key":"ref36","year":"0"},{"key":"ref35","doi-asserted-by":"publisher","DOI":"10.1145\/1065010.1065034"},{"key":"ref34","article-title":"Bugbench: Benchmarks for evaluating bug detection tools","author":"lu","year":"2005","journal-title":"Workshop on the Evaluation of Software Defect Detection Tools"},{"key":"ref60","year":"0"},{"key":"ref62","doi-asserted-by":"publisher","DOI":"10.1145\/1993498.1993541"},{"key":"ref61","doi-asserted-by":"publisher","DOI":"10.1109\/ICST.2016.21"},{"key":"ref63","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2015.54"},{"key":"ref28","author":"lea","year":"0","journal-title":"GNU C Library"},{"key":"ref27","first-page":"1","article-title":"Hardware breakpoint (or watchpoint) usage in linux kernel","author":"krishnan","year":"2009","journal-title":"IBM Linux Technology Center"},{"key":"ref29","doi-asserted-by":"publisher","DOI":"10.1109\/ACSAC.2007.23"},{"key":"ref2","year":"2014"},{"key":"ref1","year":"0"},{"key":"ref20","year":"2017"},{"key":"ref22","doi-asserted-by":"publisher","DOI":"10.1145\/2259016.2259034"},{"key":"ref21","article-title":"Mudflap: pointer use checking for C\/C++","author":"eigler","year":"2003","journal-title":"Red Hat Inc"},{"key":"ref24","doi-asserted-by":"publisher","DOI":"10.1145\/1024393.1024412"},{"key":"ref23","first-page":"125","article-title":"Purify: Fast detection of memory leaks and access errors","author":"hastings","year":"1991","journal-title":"Proc USENIX Winter 1992 Conference"},{"key":"ref26","doi-asserted-by":"publisher","DOI":"10.1145\/2815400.2815412"},{"key":"ref25","year":"2012"},{"key":"ref50","author":"sarubbo","year":"2016","journal-title":"libdwarf heap-based buffer overflow in dwarf_get_aranges_list"},{"key":"ref51","author":"sarubbo","year":"2017","journal-title":"zziplib heap-based buffer overflow in __zzip_get32 (fetch c)"},{"key":"ref59","article-title":"Linux perf_event features and overhead","volume":"13","author":"weaver","year":"2013","journal-title":"In The 2nd International Workshop on Performance Analysis of Workload Optimized Systems"},{"key":"ref58","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2015.9"},{"key":"ref57","year":"2016","journal-title":"memcached server sasl autentication remote code execution vulnerability"},{"key":"ref56","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2013.13"},{"key":"ref55","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2013.13"},{"key":"ref54","doi-asserted-by":"publisher","DOI":"10.1109\/TR.2016.2570538"},{"key":"ref53","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2018.00027"},{"key":"ref52","first-page":"28","article-title":"AddressSanitizer: a fast address sanity checker","author":"serebryany","year":"2012","journal-title":"2012 USENIX Conference on Annual Technical Conference"},{"key":"ref10","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2011.5764689"},{"key":"ref11","year":"2010"},{"key":"ref40","article-title":"National Institute of Standards and Technology","year":"0","journal-title":"National Vulnerability Database"},{"key":"ref12","year":"2013"},{"key":"ref13","doi-asserted-by":"publisher","DOI":"10.1145\/2338965.2336769"},{"key":"ref14","doi-asserted-by":"publisher","DOI":"10.1145\/1755913.1755945"},{"key":"ref15","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-77560-7_8"},{"key":"ref16","first-page":"820","article-title":"Retracer: Triaging crashes by reverse execution from partial memory dumps","author":"cui","year":"2016","journal-title":"Proc of Intl Conference on Software Engineering"},{"key":"ref17","doi-asserted-by":"publisher","DOI":"10.1145\/2663716.2663755"},{"key":"ref18","first-page":"151","article-title":"Effective data-race detection for the kernel","author":"erickson","year":"2010","journal-title":"Proc USENIX Conf Operating System Design and Implementations"},{"key":"ref19","year":"2014","journal-title":"Exploit &#x201C;openssl heartbeat poc with starttls support&#x201D;"},{"key":"ref4","first-page":"340","author":"abadi","year":"2005","journal-title":"Controlflow integrity In Proceedings of the 12th ACM Conference on Computer and Communications Security"},{"key":"ref3","year":"0"},{"key":"ref6","author":"ayguen","year":"0","journal-title":"DUMA- Detect Unintended Memory Access"},{"key":"ref5","first-page":"51","article-title":"Baggy bounds checking: an efficient and backwards-compatible defense against out-of-bounds errors","author":"akritidis","year":"2009","journal-title":"Proceedings of the 18th conference on USENIX security symposium SSYM&#x2019;09"},{"key":"ref8","doi-asserted-by":"publisher","DOI":"10.1145\/1168857.1168866"},{"key":"ref7","article-title":"Parsec 2.0: A new benchmark suite for chip-multiprocessors","author":"bienia","year":"2009","journal-title":"Proceedings of the 5th Annual Workshop on Modeling"},{"key":"ref49","first-page":"159","article-title":"A practical dynamic buffer overflow detector","author":"ruwase","year":"2004","journal-title":"Proc 11th Annu Netw Distrib Syst Security Symp"},{"key":"ref9","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2003.1191551"},{"key":"ref46","year":"0"},{"key":"ref45","doi-asserted-by":"publisher","DOI":"10.1145\/3219617.3219662"},{"key":"ref48","author":"perens","year":"0","journal-title":"Electric Fence"},{"key":"ref47","article-title":"parasoft Company","year":"2013","journal-title":"Runtime Analysis and Memory Error Detection for C and C++"},{"key":"ref42","doi-asserted-by":"publisher","DOI":"10.1145\/1250734.1250746"},{"key":"ref41","first-page":"128","article-title":"Ccured: Type-safe retrofitting of legacy code","author":"george","year":"2002","journal-title":"Proc Conf Principles of Programming Languages"},{"key":"ref44","doi-asserted-by":"publisher","DOI":"10.1145\/1542476.1542521"},{"key":"ref43","doi-asserted-by":"publisher","DOI":"10.1145\/1250734.1250736"}],"event":{"name":"2019 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO)","location":"Washington, DC, USA","start":{"date-parts":[[2019,2,16]]},"end":{"date-parts":[[2019,2,20]]}},"container-title":["2019 IEEE\/ACM International Symposium on Code Generation and Optimization (CGO)"],"original-title":[],"link":[{"URL":"http:\/\/xplorestaging.ieee.org\/ielx7\/8653576\/8661160\/08661198.pdf?arnumber=8661198","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,7,19]],"date-time":"2022-07-19T16:17:40Z","timestamp":1658247460000},"score":1,"resource":{"primary":{"URL":"https:\/\/ieeexplore.ieee.org\/document\/8661198\/"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,2]]},"references-count":63,"URL":"https:\/\/doi.org\/10.1109\/cgo.2019.8661198","relation":{},"subject":[],"published":{"date-parts":[[2019,2]]}}}