{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,7,4]],"date-time":"2025-07-04T04:08:38Z","timestamp":1751602118122,"version":"3.41.0"},"publisher-location":"Cham","reference-count":36,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319788128"},{"type":"electronic","value":"9783319788135"}],"license":[{"start":{"date-parts":[[2018,1,1]],"date-time":"2018-01-01T00:00:00Z","timestamp":1514764800000},"content-version":"unspecified","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-78813-5_31","type":"book-chapter","created":{"date-parts":[[2018,4,10]],"date-time":"2018-04-10T10:03:21Z","timestamp":1523354601000},"page":"606-626","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":1,"title":["A Program Manipulation Middleware and Its Applications on System Security"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-9165-8331","authenticated-orcid":false,"given":"Ting","family":"Chen","sequence":"first","affiliation":[]},{"given":"Yang","family":"Xu","sequence":"additional","affiliation":[]},{"given":"Xiaosong","family":"Zhang","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2018,4,11]]},"reference":[{"key":"31_CR1","unstructured":"StackShield: A \u201cstack smashing\u201d technique protection tool for Linux. http:\/\/www.angelfire.com\/sk\/stackshield\/"},{"key":"31_CR2","unstructured":"SourceCounter, August 2016. http:\/\/boomworks.googlecode.com\/files\/SourceCounter-3.5.33.73.zip"},{"issue":"1","key":"31_CR3","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/565816.503274","volume":"37","author":"T Ball","year":"2002","unstructured":"Ball, T., Rajamani, S.: The slam project: debugging system software via static analysis. ACM Sigplan Not. 37(1), 1\u20133 (2002)","journal-title":"ACM Sigplan Not."},{"key":"31_CR4","unstructured":"Bellard, F.: QEMU, a fast and portable dynamic translator. In: USENIX, pp. 41\u201346, April 2005"},{"key":"31_CR5","doi-asserted-by":"crossref","unstructured":"Bernat, A.R., Miller, B.P.: Anywhere, any-time binary instrumentation. In: ACM SIGPLAN-SIGSOFT Workshop on Program Analysis For Software Tools, pp. 9\u201316. ACM, September 2011","DOI":"10.1145\/2024569.2024572"},{"issue":"7","key":"31_CR6","doi-asserted-by":"publisher","first-page":"133","DOI":"10.1145\/2365864.2151043","volume":"47","author":"D Bruening","year":"2012","unstructured":"Bruening, D., Zhao, Q., Amarasinghe, S.: Transparent dynamic instrumentation. ACM Sigplan Not. 47(7), 133\u2013144 (2012)","journal-title":"ACM Sigplan Not."},{"key":"31_CR7","unstructured":"Cadar, C., Dunbar, D., Engler, D.: KLEE: unassisted and automatic generation of high-coverage tests for complex systems programs. In: OSDI, vol. 8, pp. 209\u2013224 (2008)"},{"key":"31_CR8","unstructured":"Cantrill, B., Shapiro, M., Leventhal, A.: Dynamic instrumentation of production systems. In: USENIX, pp. 15\u201328, June 2004"},{"key":"31_CR9","doi-asserted-by":"crossref","unstructured":"Charif-Rubial, A.S., Barthou, D., Valensi, C., Shende, S., Malony, A., Jalby, W.: MIL: a language to build program analysis tools through static binary instrumentation. In: HiPC, pp. 206\u2013215. IEEE, December 2013","DOI":"10.1109\/HiPC.2013.6799106"},{"issue":"7","key":"31_CR10","doi-asserted-by":"publisher","first-page":"1758","DOI":"10.1016\/j.future.2012.02.006","volume":"29","author":"T Chen","year":"2013","unstructured":"Chen, T., Zhang, X., Guo, S., Li, H., Wu, Y.: State of the art: dynamic symbolic execution for automated test generation. Future Gener. Comput. Syst. 29(7), 1758\u20131773 (2013)","journal-title":"Future Gener. Comput. Syst."},{"key":"31_CR11","doi-asserted-by":"crossref","unstructured":"Chipounov, V., Candea, G.: A platform for in-vivo multi-path analysis of software systems. In: ASPLOS, pp. 265\u2013278 (2011)","DOI":"10.1145\/1961295.1950396"},{"key":"31_CR12","doi-asserted-by":"crossref","unstructured":"Clause, J., Li, W., Orso, A.: Dytan: a generic dynamic taint analysis framework. In: ISSTA, pp. 196\u2013206. ACM, July 2007","DOI":"10.1145\/1273463.1273490"},{"issue":"2","key":"31_CR13","doi-asserted-by":"publisher","first-page":"294","DOI":"10.1147\/sj.282.0294","volume":"28","author":"T Corbi","year":"1989","unstructured":"Corbi, T.: Program understanding: challenge for the 1990s. IBM Syst. J. 28(2), 294\u2013306 (1989)","journal-title":"IBM Syst. J."},{"key":"31_CR14","unstructured":"Dinaburg, A., Ruef, A.: Mcsema: static translation of x86 instructions to LLVM. In: ReCon, June 2014"},{"key":"31_CR15","doi-asserted-by":"crossref","unstructured":"Farooqui, N., Kerr, A., Eisenhauer, G., Schwan, K., Yalamanchili, S.: Lynx: a dynamic instrumentation system for data-parallel applications on GPGPU architectures. In: ISPASS, pp. 58\u201367. IEEE, April 2012","DOI":"10.1109\/ISPASS.2012.6189206"},{"key":"31_CR16","unstructured":"Garfinkel, T., Rosenblum, M.: A virtual machine introspection based architecture for intrusion detection. In: NDSS, vol. 3, pp. 191\u2013206, February 2003"},{"issue":"5","key":"31_CR17","doi-asserted-by":"publisher","first-page":"30","DOI":"10.1109\/MS.2008.109","volume":"25","author":"P Godefroid","year":"2008","unstructured":"Godefroid, P., de Halleux, P., Nori, A., Rajamani, S., Schulte, W., Tillmann, N., Levin, M.: Automating software testing using program analysis. IEEE Softw. 25(5), 30\u201337 (2008)","journal-title":"IEEE Softw."},{"key":"31_CR18","doi-asserted-by":"crossref","unstructured":"Hiser, J., Nguyen-Tuong, A., Co, M., Rodes, B., Hall, M., Coleman, C., Knight, J., Davidson, J.: A framework for creating binary rewriting tools (short paper). In: EDCC, pp. 142\u2013145. IEEE, May 2014","DOI":"10.1109\/EDCC.2014.14"},{"key":"31_CR19","doi-asserted-by":"crossref","unstructured":"Hollingsworth, J., Niam, O., Miller, B., Xu, Z., Gon\u00e7alves, M., Zheng, L.: MDL: a language and compiler for dynamic program instrumentation. In: PACT, pp. 201\u2013212. IEEE, November 1997","DOI":"10.1109\/PACT.1997.644016"},{"key":"31_CR20","doi-asserted-by":"crossref","unstructured":"Huang, Y., Yu, F., Hang, C., Tsai, C., Lee, D., Kuo, S.: Securing web application code by static analysis and runtime protection. In: WWW, vol. 17, pp. 40\u201352. ACM, May 2004","DOI":"10.1145\/988672.988679"},{"issue":"6","key":"31_CR21","doi-asserted-by":"publisher","first-page":"635","DOI":"10.1002\/(SICI)1097-024X(199606)26:6<635::AID-SPE26>3.0.CO;2-P","volume":"26","author":"R Ierusalimschy","year":"1996","unstructured":"Ierusalimschy, R., Figueiredo, L.D., Filho, W.C.: Lua-an extensible extension language. Softw. Pract. Exper. 26(6), 635\u2013652 (1996)","journal-title":"Softw. Pract. Exper."},{"key":"31_CR22","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"301","DOI":"10.1007\/11513988_31","volume-title":"Computer Aided Verification","author":"F Ivan\u010di\u0107","year":"2005","unstructured":"Ivan\u010di\u0107, F., Yang, Z., Ganai, M.K., Gupta, A., Shlyakhter, I., Ashar, P.: F-Soft: software verification platform. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 301\u2013306. Springer, Heidelberg (2005). https:\/\/doi.org\/10.1007\/11513988_31"},{"key":"31_CR23","doi-asserted-by":"crossref","unstructured":"Kildall, G.A.: A unified approach to global program optimization. In: POPL, pp. 194\u2013206. ACM, October 1973","DOI":"10.1145\/512927.512945"},{"issue":"7","key":"31_CR24","doi-asserted-by":"publisher","first-page":"385","DOI":"10.1145\/360248.360252","volume":"19","author":"J King","year":"1976","unstructured":"King, J.: Symbolic execution and program testing. Commun. ACM 19(7), 385\u2013394 (1976)","journal-title":"Commun. ACM"},{"key":"31_CR25","doi-asserted-by":"crossref","unstructured":"Lattner, C., Adve, V.: LLVM: a compilation framework for lifelong program analysis & transformation. In: CGO, pp. 75\u201386. IEEE, March 2004","DOI":"10.1109\/CGO.2004.1281665"},{"issue":"6","key":"31_CR26","doi-asserted-by":"publisher","first-page":"190","DOI":"10.1145\/1064978.1065034","volume":"40","author":"C Luk","year":"2005","unstructured":"Luk, C., Cohn, R., Muth, R., Patil, H., Klauser, A., Lowney, G., Wallace, S., Reddi, V., Hazelwood, K.: Pin: building customized program analysis tools with dynamic instrumentation. ACM Sigplan Not. 40(6), 190\u2013200 (2005)","journal-title":"ACM Sigplan Not."},{"key":"31_CR27","doi-asserted-by":"crossref","unstructured":"Makarov, S., Brown, A.D., Goel, A.: An event-based language for dynamic binary translation frameworks. In: PACT, pp. 499\u2013500. ACM, August 2014","DOI":"10.1145\/2628071.2671420"},{"key":"31_CR28","unstructured":"Makarov, S., Brown, A.D., Goel, A.: PACT: U: an event-based language for dynamic binary translation frameworks (2015). https:\/\/src.acm.org\/binaries\/content\/assets\/src\/2014\/sergueimakarov.pdf"},{"key":"31_CR29","doi-asserted-by":"crossref","unstructured":"Marek, L., Villaz\u00f3n, A., Zheng, Y., Ansaloni, D., Binder, W., Qi, Z.: DiSL: a domain-specific language for bytecode instrumentation. In: AOSD, pp. 239\u2013250. ACM, March 2012","DOI":"10.1145\/2162049.2162077"},{"key":"31_CR30","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"65","DOI":"10.1007\/978-3-642-23400-2_7","volume-title":"Euro-Par 2011 Parallel Processing","author":"J Mu\u00dfler","year":"2011","unstructured":"Mu\u00dfler, J., Lorenz, D., Wolf, F.: Reducing the overhead of direct application instrumentation using prior static analysis. In: Jeannot, E., Namyst, R., Roman, J. (eds.) Euro-Par 2011. LNCS, vol. 6852, pp. 65\u201376. Springer, Heidelberg (2011). https:\/\/doi.org\/10.1007\/978-3-642-23400-2_7"},{"key":"31_CR31","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"213","DOI":"10.1007\/3-540-45937-5_16","volume-title":"Compiler Construction","author":"GC Necula","year":"2002","unstructured":"Necula, G.C., McPeak, S., Rahul, S.P., Weimer, W.: CIL: intermediate language and tools for analysis and transformation of C programs. In: Horspool, R.N. (ed.) CC 2002. LNCS, vol. 2304, pp. 213\u2013228. Springer, Heidelberg (2002). https:\/\/doi.org\/10.1007\/3-540-45937-5_16"},{"issue":"6","key":"31_CR32","doi-asserted-by":"publisher","first-page":"89","DOI":"10.1145\/1273442.1250746","volume":"42","author":"Nicholas Nethercote","year":"2007","unstructured":"Nethercote, N., Seward, J.: Valgrind: a framework for heavyweight dynamic binary instrumentation. In: ACM Sigplan Notices, vol. 42, no. 6, pp. 89\u201310, June 2007","journal-title":"ACM SIGPLAN Notices"},{"key":"31_CR33","unstructured":"Reiss, S., Renieris, M.: Lynx: a dynamic instrumentation system for data-parallel applications on GPGPU architectures. In: WODA ICSE, pp. 41\u201344, May 2003"},{"key":"31_CR34","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"9","DOI":"10.1007\/978-3-642-03869-3_5","volume-title":"Euro-Par 2009 Parallel Processing","author":"CA Schaefer","year":"2009","unstructured":"Schaefer, C.A., Pankratius, V., Tichy, W.F.: Atune-IL: an instrumentation language for auto-tuning parallel applications. In: Sips, H., Epema, D., Lin, H.-X. (eds.) Euro-Par 2009. LNCS, vol. 5704, pp. 9\u201320. Springer, Heidelberg (2009). https:\/\/doi.org\/10.1007\/978-3-642-03869-3_5"},{"key":"31_CR35","unstructured":"Sinnadurai, S., Zhao, Q., fai Wong, W.: Transparent runtime shadow stack: protection against malicious return address modifications (2008)"},{"key":"31_CR36","unstructured":"Yin, H., Song, D.: Temu: binary code analysis via whole-system layered annotative execution. Technical report UCB\/EECS-2010-3, EECS Department, University of California, Berkeley (2010)"}],"container-title":["Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering","Security and Privacy in Communication Networks"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-78813-5_31","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,7,3]],"date-time":"2025-07-03T15:11:15Z","timestamp":1751555475000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-78813-5_31"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018]]},"ISBN":["9783319788128","9783319788135"],"references-count":36,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-78813-5_31","relation":{},"ISSN":["1867-8211","1867-822X"],"issn-type":[{"type":"print","value":"1867-8211"},{"type":"electronic","value":"1867-822X"}],"subject":[],"published":{"date-parts":[[2018]]}}}