{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,25]],"date-time":"2025-03-25T14:42:43Z","timestamp":1742913763340,"version":"3.40.3"},"publisher-location":"Cham","reference-count":32,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319934105"},{"type":"electronic","value":"9783319934112"}],"license":[{"start":{"date-parts":[[2018,1,1]],"date-time":"2018-01-01T00:00:00Z","timestamp":1514764800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2018]]},"DOI":"10.1007\/978-3-319-93411-2_15","type":"book-chapter","created":{"date-parts":[[2018,6,7]],"date-time":"2018-06-07T07:49:28Z","timestamp":1528357768000},"page":"326-348","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["Bytecode Corruption Attacks Are Real\u2014And How to Defend Against Them"],"prefix":"10.1007","author":[{"given":"Taemin","family":"Park","sequence":"first","affiliation":[]},{"given":"Julian","family":"Lettner","sequence":"additional","affiliation":[]},{"given":"Yeoul","family":"Na","sequence":"additional","affiliation":[]},{"given":"Stijn","family":"Volckaert","sequence":"additional","affiliation":[]},{"given":"Michael","family":"Franz","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2018,6,8]]},"reference":[{"key":"15_CR1","doi-asserted-by":"crossref","unstructured":"Snow, K.Z., Monrose, F., Davi, L., Dmitrienko, A., Liebchen, C., Sadeghi, A.: Just-in-time code reuse: on the effectiveness of fine-grained address space layout randomization. In: IEEE Symposium on Security and Privacy (S&P) (2013)","DOI":"10.1109\/SP.2013.45"},{"key":"15_CR2","doi-asserted-by":"crossref","unstructured":"Song, C., Zhang, C., Wang, T., Lee, W., Melski, D.: Exploiting and protecting dynamic code generation. In: Symposium on Network and Distributed System Security (NDSS) (2015)","DOI":"10.14722\/ndss.2015.23233"},{"key":"15_CR3","unstructured":"Theori: Chakra JIT CFG bypass (2016). \n                      http:\/\/theori.io\/research\/chakra-jit-cfg-bypass"},{"key":"15_CR4","doi-asserted-by":"crossref","unstructured":"Frassetto, T., Gens, D., Liebchen, C., Sadeghi, A.R.: JITGuard: hardening just-in-time compilers with SGX. In: ACM Conference on Computer and Communications Security (CCS) (2017)","DOI":"10.1145\/3133956.3134037"},{"key":"15_CR5","unstructured":"Willam Forbes: The PyPI Python Package Hack (2017). \n                      https:\/\/www.bytelion.com\/pypi-python-package-hack"},{"key":"15_CR6","doi-asserted-by":"crossref","unstructured":"Rieck, K., Krueger, T., Dewald, A.: Cujo: efficient detection and prevention of drive-by-download attacks. In: Annual Computer Security Applications Conference (ACSAC) (2010)","DOI":"10.1145\/1920261.1920267"},{"key":"15_CR7","unstructured":"Oracle Corporation: Securitymanager (java platform se 8) (2018). \n                      https:\/\/docs.oracle.com\/javase\/8\/docs\/api\/java\/lang\/SecurityManager.html"},{"key":"15_CR8","unstructured":"GitBook: Lua sandbox library (1.2.7) (2017). \n                      http:\/\/mozilla-services.github.io\/lua_sandbox"},{"key":"15_CR9","unstructured":"Google Developers: Introduction\u2014Caja (2018). \n                      https:\/\/developers.google.com\/caja\/"},{"key":"15_CR10","unstructured":"GitHub: zopefoundation\/restrictedpython: a restricted execution environment for python to run untrusted code (2018). \n                      https:\/\/github.com\/zopefoundation\/RestrictedPython"},{"key":"15_CR11","unstructured":"Google Cloud: Google app engine: build scalable web and mobile backends in any language on Google\u2019s infrastructure. \n                      https:\/\/cloud.google.com\/appengine\/\n                      \n                     (2018)"},{"key":"15_CR12","unstructured":"Blazakis, D.: Interpreter exploitation: pointer inference and JIT spraying. BlackHat DC (2010)"},{"key":"15_CR13","doi-asserted-by":"crossref","unstructured":"Abadi, M., Budiu, M., Erlingsson, U., Ligatti, J.: Control-flow integrity. In: ACM Conference on Computer and Communications Security (CCS) (2005)","DOI":"10.1145\/1102120.1102165"},{"key":"15_CR14","unstructured":"Tice, C., Roeder, T., Collingbourne, P., Checkoway, S., Erlingsson, \u00da., Lozano, L., Pike, G.: Enforcing forward-edge control-flow integrity in GCC & LLVM. In: USENIX Security Symposium (2014)"},{"key":"15_CR15","doi-asserted-by":"crossref","unstructured":"Niu, B., Tan, G.: Per-input control-flow integrity. In: ACM Conference on Computer and Communications Security (CCS) (2015)","DOI":"10.1145\/2810103.2813644"},{"key":"15_CR16","unstructured":"Lua: Lua: uses (2018). \n                      https:\/\/www.lua.org\/uses.html"},{"key":"15_CR17","doi-asserted-by":"crossref","unstructured":"van der Veen, V., Andriesse, D., Stamatogiannakis, M., Chen, X., Bos, H., Giuffrida, C.: The dynamics of innocent flesh on the bone: code reuse ten years later. In: ACM Conference on Computer and Communications Security (CCS) (2017)","DOI":"10.1145\/3133956.3134026"},{"key":"15_CR18","unstructured":"Lettner, J., Kollenda, B., Homescu, A., Larsen, P., Schuster, F., Davi, L., Sadeghi, A.R., Holz, T., Franz, M., Irvine, U.: Subversive-c: abusing and protecting dynamic message dispatch. In: USENIX Annual Technical Conference (2016)"},{"key":"15_CR19","unstructured":"Python Performance Benchmark Suite 0.6.1 Documentation: The python performance benchmark suite (2017). \n                      http:\/\/pyperformance.readthedocs.io"},{"key":"15_CR20","unstructured":"Alioth: The computer language benchmarks game (2017). \n                      http:\/\/benchmarksgame.alioth.debian.org"},{"key":"15_CR21","doi-asserted-by":"crossref","unstructured":"Mashtizadeh, A.J., Bittau, A., Boneh, D., Mazi\u00e8res, D.: CCFI: cryptographically enforced control flow integrity. In: ACM Conference on Computer and Communications Security (CCS) (2015)","DOI":"10.1145\/2810103.2813676"},{"key":"15_CR22","unstructured":"Rohlf, C., Ivnitskiy, Y.: Attacking clientside JIT compilers. Black Hat USA (2011)"},{"key":"15_CR23","doi-asserted-by":"crossref","unstructured":"Athanasakis, M., Athanasopoulos, E., Polychronakis, M., Portokalidis, G., Ioannidis, S.: The devil is in the constants: bypassing defenses in browser JIT engines. In: NDSS (2015)","DOI":"10.14722\/ndss.2015.23209"},{"key":"15_CR24","unstructured":"Maisuradze, G., Backes, M., Rossow, C.: What cannot be read, cannot be leveraged? Revisiting assumptions of JIT-ROP defenses. In: USENIX Security Symposium (2016)"},{"key":"15_CR25","doi-asserted-by":"crossref","unstructured":"Homescu, A., Brunthaler, S., Larsen, P., Franz, M.: Librando: transparent code randomization for just-in-time compilers. In: ACM Conference on Computer and Communications Security (CCS) (2013)","DOI":"10.1145\/2508859.2516675"},{"key":"15_CR26","doi-asserted-by":"crossref","unstructured":"Backes, M., Holz, T., Kollenda, B., Koppe, P., N\u00fcrnberger, S., Pewny, J.: You can run but you can\u2019t read: preventing disclosure exploits in executable code. In: ACM Conference on Computer and Communications Security (CCS) (2014)","DOI":"10.1145\/2660267.2660378"},{"key":"15_CR27","doi-asserted-by":"crossref","unstructured":"Crane, S., Liebchen, C., Homescu, A., Davi, L., Larsen, P., Sadeghi, A.R., Brunthaler, S., Franz, M.: Readactor: practical code randomization resilient to memory disclosure. In: IEEE Symposium on Security and Privacy (S&P) (2015)","DOI":"10.1109\/SP.2015.52"},{"key":"15_CR28","doi-asserted-by":"crossref","unstructured":"Tang, A., Sethumadhavan, S., Stolfo, S.: Heisenbyte: thwarting memory disclosure attacks using destructive code reads. In: ACM Conference on Computer and Communications Security (CCS) (2015)","DOI":"10.1145\/2810103.2813685"},{"key":"15_CR29","doi-asserted-by":"crossref","unstructured":"Werner, J., Baltas, G., Dallara, R., Otterness, N., Snow, K.Z., Monrose, F., Polychronakis, M.: No-execute-after-read: preventing code disclosure in commodity software. In: ACM Symposium on Information, Computer and Communications Security (ASIACCS) (2016)","DOI":"10.1145\/2897845.2897891"},{"key":"15_CR30","doi-asserted-by":"crossref","unstructured":"Snow, K.Z., Rogowski, R., Werner, J., Koo, H., Monrose, F., Polychronakis, M.: Return to the zombie gadgets: undermining destructive code reads via code inference attacks. In: IEEE Symposium on Security and Privacy (S&P) (2016)","DOI":"10.1109\/SP.2016.61"},{"key":"15_CR31","doi-asserted-by":"crossref","unstructured":"Schuster, F., Tendyck, T., Liebchen, C., Davi, L., Sadeghi, A.R., Holz, T.: Counterfeit object-oriented programming: on the difficulty of preventing code reuse attacks in C++ applications. In: IEEE Symposium on Security and Privacy (S&P) (2015)","DOI":"10.1109\/SP.2015.51"},{"key":"15_CR32","doi-asserted-by":"crossref","unstructured":"Crane, S., Volckaert, S., Schuster, F., Liebchen, C., Larsen, P., Davi, L., Sadeghi, A.R., Holz, T., Sutter, B.D., Franz, M.: It\u2019s a TRaP: table randomization and protection against function reuse attacks. In: ACM Conference on Computer and Communications Security (CCS) (2015)","DOI":"10.1145\/2810103.2813682"}],"container-title":["Lecture Notes in Computer Science","Detection of Intrusions and Malware, and Vulnerability Assessment"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-93411-2_15","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,3,3]],"date-time":"2020-03-03T03:19:55Z","timestamp":1583205595000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-93411-2_15"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018]]},"ISBN":["9783319934105","9783319934112"],"references-count":32,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-93411-2_15","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2018]]},"assertion":[{"value":"8 June 2018","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"DIMVA","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Saclay","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"France","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2018","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"28 June 2018","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"29 June 2018","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"15","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"dimva2018","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/www.dimva2018.org\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}