{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,10]],"date-time":"2025-10-10T07:08:01Z","timestamp":1760080081163},"publisher-location":"Cham","reference-count":31,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319598697"},{"type":"electronic","value":"9783319598703"}],"license":[{"start":{"date-parts":[[2017,1,1]],"date-time":"2017-01-01T00:00:00Z","timestamp":1483228800000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2017]]},"DOI":"10.1007\/978-3-319-59870-3_6","type":"book-chapter","created":{"date-parts":[[2017,5,29]],"date-time":"2017-05-29T22:14:17Z","timestamp":1496096057000},"page":"95-112","source":"Crossref","is-referenced-by-count":1,"title":["SafeStack $$^+$$ : Enhanced Dual Stack to Combat Data-Flow Hijacking"],"prefix":"10.1007","author":[{"given":"Yan","family":"Lin","sequence":"first","affiliation":[]},{"given":"Xiaoxiao","family":"Tang","sequence":"additional","affiliation":[]},{"given":"Debin","family":"Gao","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2017,5,31]]},"reference":[{"key":"6_CR1","unstructured":"Clang: a C language family frontend for LLVM. \nhttps:\/\/clang.llvm.org\/"},{"key":"6_CR2","unstructured":"SafeStack.cpp. \nhttp:\/\/llvm.org\/docs\/doxygen\/html\/SafeStack_8cpp_source.html"},{"key":"6_CR3","unstructured":"Pax ASLR (Address Space Layout Randomiztion) (2003). \nhttps:\/\/pax.grsecurity.net\/docs\/aslr.txt"},{"key":"6_CR4","unstructured":"MiniUPnPd 1.0 Stack Buffer Overflow Remote Code Execution (2013). \nhttp:\/\/www.cvedetails.com\/cve\/cve-2013-0230"},{"key":"6_CR5","unstructured":"The LLVM Compiler Infrastructure (2016). \nhttp:\/\/llvm.org\/"},{"key":"6_CR6","doi-asserted-by":"crossref","unstructured":"Abadi, M., Budiu, M., Erlingsson, U., Ligatti, J.: Control-flow integrity. In: Proceedings of the 12th ACM Conference on Computer and Communications Security, pp. 340\u2013353. ACM (2005)","DOI":"10.1145\/1102120.1102165"},{"key":"6_CR7","unstructured":"Akritidis, P., Costa, M., Castro, M., Hand, S.: Baggy bounds checking: an efficient and backwards-compatible defense against out-of-bounds errors. In: Proceedings of the 18th USENIX Security Symposium, pp. 51\u201366 (2009)"},{"key":"6_CR8","unstructured":"Andersen, S., Abella, V.: Data execution prevention. Changes to functionality in microsoft windows xp service pack, 2 (2004)"},{"key":"6_CR9","unstructured":"Bhatkar, S., DuVarney, D.C., Sekar, R.: Efficient techniques for comprehensive protection from memory error exploits. In: Proceedings of the 14th USENIX Security Symposium (2005)"},{"key":"6_CR10","unstructured":"Carlini, N., Wagner, D.: Rop is still dangerous: breaking modern defenses. In: Proceedings of the 23rd USENIX Security Symposium, vol. 14 (2014)"},{"key":"6_CR11","doi-asserted-by":"crossref","unstructured":"Chen, X., Slowinska, A., Andriesse, D., Bos, H., Giuffrida, C.: Stackarmor: comprehensive protection from stack-based memory error vulnerabilities for binaries. In: Symposium on Network and Distributed System Security (2015)","DOI":"10.14722\/ndss.2015.23248"},{"key":"6_CR12","unstructured":"Cowan, C., Beattie, S., Johansen, J., Wagle, P.: Pointguard tm: protecting pointers from buffer overflow vulnerabilities. In: Proceedings of the 12th USENIX Security Symposium, vol. 12, pp. 91\u2013104 (2003)"},{"key":"6_CR13","unstructured":"Cowan, C., Pu, C., Maier, D., Walpole, J., Bakke, P., Beattie, S., Grier, A., Wagle, P., Zhang, Q., Hinton, H.: Stackguard: automatic adaptive detection and prevention of buffer-overflow attacks. In: Proceedings of the 7th USENIX Security Symposium, vol. 98, pp. 63\u201378 (1998)"},{"key":"6_CR14","doi-asserted-by":"crossref","unstructured":"Dang, T.H., Maniatis, P., Wagner, D.: The performance cost of shadow stacks and stack canaries. In: Proceedings of the 10th ACM Symposium on Information, Computer and Communications Security, pp. 555\u2013566. ACM (2015)","DOI":"10.1145\/2714576.2714635"},{"key":"6_CR15","doi-asserted-by":"crossref","unstructured":"Ding, B., He, Y., Wu, Y., Miller, A., Criswell, J.: Baggy bounds with accurate checking. In: International Symposium on Software Reliability Engineering Workshops, pp. 195\u2013200. IEEE (2012)","DOI":"10.1109\/ISSREW.2012.24"},{"key":"6_CR16","doi-asserted-by":"crossref","unstructured":"Duck, G.J., Yap, R.H., Cavallaro, L.: Stack bounds protection with low fat pointers. In: Symposium on Network and Distributed System Security (2017)","DOI":"10.14722\/ndss.2017.23287"},{"key":"6_CR17","unstructured":"Erlingsson, \u00da., Abadi, M., Vrable, M., Budiu, M., Necula, G.C.: Xfi: software guards for system address spaces. In: Proceedings of the 7th Symposium on Operating Systems Design and Implementation, pp. 75\u201388. USENIX Association (2006)"},{"key":"6_CR18","doi-asserted-by":"crossref","unstructured":"Fu, J., Lin, Y., Zhang, X.: Code reuse attack mitigation based on function randomization without symbol table. In: Proceeding of the 15th IEEE International Conference on Trust, Security and Privacy in Computing and Communications, pp. 394\u2013401. IEEE (2016)","DOI":"10.1109\/TrustCom.2016.0089"},{"key":"6_CR19","doi-asserted-by":"crossref","unstructured":"G\u00f6ktas, E., Athanasopoulos, E., Bos, H., Portokalidis, G.: Out of control: overcoming control-flow integrity. In: Proceedings of the 35th IEEE Symposium on Security and Privacy, pp. 575\u2013589. IEEE (2014)","DOI":"10.1109\/SP.2014.43"},{"key":"6_CR20","doi-asserted-by":"crossref","unstructured":"Hiser, J., Nguyen-Tuong, A., Co, M., Hall, M., Davidson, J.W.: Ilr: where\u2019d my gadgets go? In: Proceedings of the 33rd IEEE Symposium on Security and Privacy, pp. 571\u2013585. IEEE (2012)","DOI":"10.1109\/SP.2012.39"},{"key":"6_CR21","unstructured":"Jim, T., Morrisett, J.G., Grossman, D., Hicks, M.W., Cheney, J., Wang, Y.: Cyclone: a safe dialect of C. In: Proceedings of the USENIX Annual Technical Conference, pp. 275\u2013288 (2002)"},{"key":"6_CR22","unstructured":"Kuznetsov, V., Szekeres, L., Payer, M., Candea, G., Sekar, R., Song, D.: Code-pointer integrity. In: Proceedings of the 11th USENIX Symposium on Operating Systems Design and Implementation, vol. 14, pp. 147\u2013163 (2014)"},{"key":"6_CR23","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"366","DOI":"10.1007\/978-3-319-45871-7_22","volume-title":"Information Security","author":"Y Lin","year":"2016","unstructured":"Lin, Y., Tang, X., Gao, D., Fu, J.: Control flow integrity enforcement with dynamic code optimization. In: Bishop, M., Nascimento, A.C.A. (eds.) ISC 2016. LNCS, vol. 9866, pp. 366\u2013385. Springer, Cham (2016). doi:\n10.1007\/978-3-319-45871-7_22"},{"key":"6_CR24","doi-asserted-by":"crossref","unstructured":"Nagarakatte, S., Zhao, J., Martin, M.M., Zdancewic, S.: Softbound: highly compatible and complete spatial memory safety for C. In: ACM Conference on Programming Language Design and Implementation, vol. 44(6), pp. 245\u2013258 (2009)","DOI":"10.1145\/1542476.1542504"},{"key":"6_CR25","doi-asserted-by":"crossref","unstructured":"Necula, G.C., McPeak, S., Weimer, W.: Ccured: type-safe retrofitting of legacy code. In: Proceedings of the 29th ACM Symposium on Principles of Programming Languages, vol. 37, pp. 128\u2013139. ACM (2002)","DOI":"10.1145\/503272.503286"},{"key":"6_CR26","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"144","DOI":"10.1007\/978-3-319-20550-2_8","volume-title":"Detection of Intrusions and Malware, and Vulnerability Assessment","author":"M Payer","year":"2015","unstructured":"Payer, M., Barresi, A., Gross, T.R.: Fine-grained control-flow integrity through binary hardening. In: Almgren, M., Gulisano, V., Maggi, F. (eds.) DIMVA 2015. LNCS, vol. 9148, pp. 144\u2013164. Springer, Cham (2015). doi:\n10.1007\/978-3-319-20550-2_8"},{"key":"6_CR27","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"88","DOI":"10.1007\/978-3-319-11379-1_5","volume-title":"Research in Attacks, Intrusions and Defenses","author":"F Schuster","year":"2014","unstructured":"Schuster, F., Tendyck, T., Pewny, J., Maa\u00df, A., Steegmanns, M., Contag, M., Holz, T.: Evaluating the effectiveness of current Anti-ROP defenses. In: Stavrou, A., Bos, H., Portokalidis, G. (eds.) RAID 2014. LNCS, vol. 8688, pp. 88\u2013108. Springer, Cham (2014). doi:\n10.1007\/978-3-319-11379-1_5"},{"key":"6_CR28","doi-asserted-by":"crossref","unstructured":"Wartell, R., Mohan, V., Hamlen, K.W., Lin, Z.: Binary stirring: self-randomizing instruction addresses of legacy x86 binary code. In: Proceedings of the 2012 ACM Conference on Computer and Communications Security, pp. 157\u2013168. ACM (2012)","DOI":"10.1145\/2382196.2382216"},{"key":"6_CR29","doi-asserted-by":"crossref","unstructured":"Wilander, J., Nikiforakis, N., Younan, Y., Kamkar, M., Joosen, W.: Ripe: runtime intrusion prevention evaluator. In: Proceedings of the 27th Annual Computer Security Applications Conference, pp. 41\u201350. ACM (2011)","DOI":"10.1145\/2076732.2076739"},{"key":"6_CR30","doi-asserted-by":"crossref","unstructured":"Younan, Y., Pozza, D., Piessens, F., Joosen, W.: Extended protection against stack smashing attacks without performance loss. In: Proceedings of the 22nd Annual Computer Security Applications Conference, pp. 429\u2013438. IEEE (2006)","DOI":"10.1109\/ACSAC.2006.27"},{"key":"6_CR31","unstructured":"Zhang, M., Sekar, R.: Control flow integrity for cots binaries. In: Proceedings of the 22nd USENIX Security Symposium, vol. 13 (2013)"}],"container-title":["Lecture Notes in Computer Science","Information Security and Privacy"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-59870-3_6","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2017,5,29]],"date-time":"2017-05-29T22:16:52Z","timestamp":1496096212000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-59870-3_6"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017]]},"ISBN":["9783319598697","9783319598703"],"references-count":31,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-59870-3_6","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2017]]}}}