{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,31]],"date-time":"2026-07-31T15:42:58Z","timestamp":1785512578417,"version":"3.56.0"},"reference-count":43,"publisher":"Springer Science and Business Media LLC","issue":"1","license":[{"start":{"date-parts":[[2019,1,14]],"date-time":"2019-01-14T00:00:00Z","timestamp":1547424000000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/501100012166","name":"National Key Research and Development Program of China","doi-asserted-by":"crossref","award":["2016YFB1000104"],"award-info":[{"award-number":["2016YFB1000104"]}],"id":[{"id":"10.13039\/501100012166","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/501100003816","name":"Huawei Technologies","doi-asserted-by":"publisher","award":["not applicable"],"award-info":[{"award-number":["not applicable"]}],"id":[{"id":"10.13039\/501100003816","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Cybersecur"],"published-print":{"date-parts":[[2019,12]]},"DOI":"10.1186\/s42400-018-0018-3","type":"journal-article","created":{"date-parts":[[2019,1,14]],"date-time":"2019-01-14T14:04:46Z","timestamp":1547474686000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":23,"title":["DTrace: fine-grained and efficient data integrity checking with hardware instruction tracing"],"prefix":"10.1186","volume":"2","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-6717-3051","authenticated-orcid":false,"given":"Xiayang","family":"Wang","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Fuqian","family":"Huang","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Haibo","family":"Chen","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2019,1,14]]},"reference":[{"key":"18_CR1","doi-asserted-by":"publisher","unstructured":"Abadi, M, Budiu M, Erlingsson U, Ligatti J (2005) Control-flow integrity In: Proceedings of the 12th ACM Conference on Computer and Communications Security, CCS \u201905, 340\u2013353. https:\/\/doi.org\/10.1145\/1102120.1102165 .","DOI":"10.1145\/1102120.1102165"},{"key":"18_CR2","doi-asserted-by":"publisher","unstructured":"Akritidis, P, Cadar C, Raiciu C, Costa M, Castro M (2008) Preventing memory error exploits with wit In: 2008 IEEE Symposium on Security and Privacy, S&P\u201908, 263\u2013277. https:\/\/doi.org\/10.1109\/SP.2008.30 .","DOI":"10.1109\/SP.2008.30"},{"key":"18_CR3","unstructured":"Amazon (2018) Amazon elastic compute cloud. http:\/\/aws.amazon.com\/ec2\/ ."},{"key":"18_CR4","unstructured":"ARM (2016) ARM Embedded Trace Macrocell Architecture Specification ETMv4.0 to ETMv4.2. ARM Limited. https:\/\/static.docs.arm.com\/ihi0064\/d\/IHI0064D_etm_v4_ar\u066achitecture_spec.pdf . Accessed 23 Sep 2018."},{"key":"18_CR5","doi-asserted-by":"publisher","first-page":"90","DOI":"10.1145\/2660267\/2660350","volume-title":"Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security, CCS \u201914","author":"AM Azab","year":"2014","unstructured":"Azab, AM, Ning P, Shah J, Chen Q, Bhutkar R, Ganesh G, Ma J, Shen W (2014) Hypervision across worlds: Real-time kernel protection from the arm trustzone secure world In: Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security, CCS \u201914, 90\u2013102.. ACM, New York, NY, USA. https:\/\/doi.org\/10.1145\/2660267\/2660350 ."},{"key":"18_CR6","first-page":"267","volume-title":"11th USENIX Symposium on Operating Systems Design and Implementation, OSDI\u201914","author":"A Baumann","year":"2014","unstructured":"Baumann, A, Peinado M, Hunt G (2014) Shielding applications from an untrusted cloud with haven In: 11th USENIX Symposium on Operating Systems Design and Implementation, OSDI\u201914, 267\u2013283.. USENIX Association, Broomfield, CO."},{"key":"18_CR7","unstructured":"Beeman, S (2017) Supported processors for ptwrite instruction?. https:\/\/software.intel.com\/en-us\/forums\/intel-isa-extensions\/\u066atopic\/704356 . Accessed 23 Sep 2018."},{"key":"18_CR8","doi-asserted-by":"crossref","first-page":"30","DOI":"10.1145\/1966913.1966919","volume-title":"Proceedings of the 6th ACM Symposium on Information, Computer and Communications Security","author":"T Bletsch","year":"2011","unstructured":"Bletsch, T, Jiang X, Freeh VW, Liang Z (2011) Jump-oriented programming: a new class of code-reuse attack In: Proceedings of the 6th ACM Symposium on Information, Computer and Communications Security, 30\u201340.. ACM, New York. http:\/\/doi.acm.org\/10.1145\/1966913.1966919 ."},{"key":"18_CR9","first-page":"147","volume-title":"Proceedings of the 7th Symposium on Operating Systems Design and Implementation, OSDI \u201906","author":"M Castro","year":"2006","unstructured":"Castro, M, Costa M, Harris T (2006) Securing software by enforcing data-flow integrity In: Proceedings of the 7th Symposium on Operating Systems Design and Implementation, OSDI \u201906, 147\u2013160.. USENIX Association, Berkeley, CA, USA."},{"key":"18_CR10","doi-asserted-by":"publisher","first-page":"559","DOI":"10.1145\/1866307.1866370","volume-title":"Proceedings of the 17th ACM Conference on Computer and Communications Security, CCS \u201910","author":"S Checkoway","year":"2010","unstructured":"Checkoway, S, Davi L, Dmitrienko A, Sadeghi AR, Shacham H, Winandy M (2010) Return-oriented programming without returns In: Proceedings of the 17th ACM Conference on Computer and Communications Security, CCS \u201910, 559\u2013572.. ACM, New York, NY, USA. https:\/\/doi.org\/10.1145\/1866307.1866370 . http:\/\/doi.acm.org\/10.1145\/1866307.1866370 ."},{"key":"18_CR11","first-page":"12","volume-title":"Proceedings of the 14th Conference on USENIX Security Symposium - Volume 14, SSYM\u201905","author":"S Chen","year":"2005","unstructured":"Chen, S, Xu J, Sezer EC, Gauriar P, Iyer RK (2005) Non-control-data attacks are realistic threats In: Proceedings of the 14th Conference on USENIX Security Symposium - Volume 14, SSYM\u201905, 12\u201312.. USENIX Association, Berkeley, CA, USA."},{"key":"18_CR12","doi-asserted-by":"publisher","unstructured":"Chen, Y, Reymondjohnson S, Sun Z, Lu L (2016) Shreds: Fine-grained execution units with private memory In: 2016 IEEE Symposium on Security and Privacy, S&P\u201916, 56\u201371. https:\/\/doi.org\/10.1109\/SP.2016.12 .","DOI":"10.1109\/SP.2016.12"},{"key":"18_CR13","first-page":"17","volume-title":"13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18)","author":"W Cui","year":"2018","unstructured":"Cui, W, Ge X, Kasikci B, Niu B, Sharma U, Wang R, Yun I (2018) REPT: Reverse debugging of failures in deployed software In: 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18), 17\u201332.. USENIX Association, Carlsbad, CA. https:\/\/www.usenix.org\/conference\/osdi18\/presentation\/weidong ."},{"key":"18_CR14","unstructured":"CVE (2000) Cve-2000-0573 details. http:\/\/www.cvedetails.com\/cve\/cve-2000-0573 . Accessed 23 Sep 2018."},{"key":"18_CR15","unstructured":"CVE (2012) Cve-2012-0809. https:\/\/cve.mitre.org\/cgi-bin\/cvename.cgi?name=CVE-2012-0809 ."},{"key":"18_CR16","unstructured":"CVE (2013) Cve-2013-2028. https:\/\/cve.mitre.org\/cgi-bin\/cvename.cgi?name=cve-2013-2028 . Accessed 2 Dec 2018."},{"key":"18_CR17","unstructured":"CVE (2014) Cve-2014-0133. https:\/\/www.cvedetails.com\/cve\/cve-2014-0133 . Accessed 2 Dec 2018."},{"key":"18_CR18","first-page":"131","volume-title":"26th USENIX Security Symposium, Security\u201917","author":"R Ding","year":"2017","unstructured":"Ding, R, Qian C, Song C, Harris B, Kim T, Lee W (2017) Efficient protection of path-sensitive control security In: 26th USENIX Security Symposium, Security\u201917, 131\u2013148.. USENIX Association, Vancouver, BC."},{"key":"18_CR19","first-page":"75","volume-title":"Proceedings of the 7th Symposium on Operating Systems Design and Implementation, OSDI \u201906","author":"U Erlingsson","year":"2006","unstructured":"Erlingsson, U, Abadi M, Vrable M, Budiu M, Necula GC (2006) Xfi: Software guards for system address spaces In: Proceedings of the 7th Symposium on Operating Systems Design and Implementation, OSDI \u201906, 75\u201388.. USENIX Association, Berkeley, CA, USA."},{"issue":"1","key":"18_CR20","doi-asserted-by":"publisher","first-page":"585","DOI":"10.1145\/3093337.3037716","volume":"45","author":"X Ge","year":"2017","unstructured":"Ge, X, Cui W, Jaeger T (2017) Griffin: Guarding control flows using intel processor trace. SIGARCH Comput Archit News 45(1):585\u2013598. https:\/\/doi.org\/10.1145\/3093337.3037716 .","journal-title":"SIGARCH Comput Archit News"},{"key":"18_CR21","first-page":"177","volume-title":"24th USENIX Security Symposium, Security\u201915","author":"H Hu","year":"2015","unstructured":"Hu, H, Chua ZL, Adrian S, Saxena P, Liang Z (2015) Automatic generation of data-oriented exploits In: 24th USENIX Security Symposium, Security\u201915, 177\u2013192.. USENIX Association, Washington, D.C."},{"key":"18_CR22","doi-asserted-by":"publisher","unstructured":"Hu, H, Shinde S, Adrian S, Chua ZL, Saxena P, Liang Z (2016) Data-oriented programming: On the expressiveness of non-control data attacks In: 2016 IEEE Symposium on Security and Privacy, S&P\u201916, 969\u2013986. https:\/\/doi.org\/10.1109\/SP.2016.62 .","DOI":"10.1109\/SP.2016.62"},{"key":"18_CR23","first-page":"533","volume-title":"12th USENIX Symposium on Operating Systems Design and Implementation, OSDI\u201916","author":"T Hunt","year":"2016","unstructured":"Hunt, T, Zhu Z, Xu Y, Peter S, Witchel E (2016) Ryoan: A distributed sandbox for untrusted computation on secret data In: 12th USENIX Symposium on Operating Systems Design and Implementation, OSDI\u201916, 533\u2013549.. USENIX Association, Savannah, GA."},{"key":"18_CR24","unstructured":"Hunter, A (2017) Lkml: Adrian hunter: [patch 00\/37] perf intel-pt: Power events and ptwrite. https:\/\/lkml.org\/lkml\/2017\/5\/19\/230 . Accessed 23 Sep 2018."},{"key":"18_CR25","unstructured":"Intel (2018) Intel 64 and ia-32 architectures software developer\u2019s manual. https:\/\/software.intel.com\/en-us\/articles\/intel-sdm ."},{"key":"18_CR26","doi-asserted-by":"publisher","first-page":"582","DOI":"10.1145\/3132747.3132767","volume-title":"Proceedings of the 26th Symposium on Operating Systems Principles, SOSP \u201917","author":"B Kasikci","year":"2017","unstructured":"Kasikci, B, Cui W, Ge X, Niu B (2017) Lazy diagnosis of in-production concurrency bugs In: Proceedings of the 26th Symposium on Operating Systems Principles, SOSP \u201917, 582\u2013598.. ACM, New York, NY, USA. https:\/\/doi.org\/10.1145\/3132747.3132767 ."},{"key":"18_CR27","first-page":"145","volume-title":"Proceedings of the 14th USENIX Conference on Networked Systems Design and Implementation, NSDI\u201917","author":"S Kim","year":"2017","unstructured":"Kim, S, Han J, Ha J, Kim T, Han D (2017) Enhancing security and privacy of tor\u2019s ecosystem by using trusted execution environments In: Proceedings of the 14th USENIX Conference on Networked Systems Design and Implementation, NSDI\u201917, 145\u2013161.. USENIX Association, Berkeley, CA, USA."},{"key":"18_CR28","doi-asserted-by":"publisher","first-page":"437","DOI":"10.1145\/3064176.3064217","volume-title":"Proceedings of the Twelfth European Conference on Computer Systems, EuroSys \u201917","author":"K Koning","year":"2017","unstructured":"Koning, K, Chen X, Bos H, Giuffrida C, Athanasopoulos E (2017) No need to hide: Protecting safe regions on commodity hardware In: Proceedings of the Twelfth European Conference on Computer Systems, EuroSys \u201917, 437\u2013452.. ACM, New York, NY, USA. https:\/\/doi.org\/10.1145\/3064176.3064217 ."},{"key":"18_CR29","first-page":"147","volume-title":"11th USENIX Symposium on Operating Systems Design and Implementation (OSDI 14)","author":"V Kuznetsov","year":"2014","unstructured":"Kuznetsov, V, Szekeres L, Payer M, Candea G, Sekar R, Song D (2014) Code-pointer integrity In: 11th USENIX Symposium on Operating Systems Design and Implementation (OSDI 14), 147\u2013163.. USENIX Association, Broomfield, CO. https:\/\/www.usenix.org\/conference\/osdi14\/technical-sessions\/presentation\/kuznetsov ."},{"key":"18_CR30","doi-asserted-by":"publisher","unstructured":"Liu, Y, Shi P, Wang X, Chen H, Zang B, Guan H (2017) Transparent and efficient cfi enforcement with intel processor trace In: 2017 IEEE International Symposium on High Performance Computer Architecture (HPCA), 529\u2013540. https:\/\/doi.org\/10.1109\/HPCA.2017.18 .","DOI":"10.1109\/HPCA.2017.18"},{"key":"18_CR31","doi-asserted-by":"publisher","first-page":"941","DOI":"10.1145\/2810103.2813676","volume-title":"Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, CCS \u201915","author":"AJ Mashtizadeh","year":"2015","unstructured":"Mashtizadeh, AJ, Bittau A, Boneh D, Mazi\u00e8res D (2015) CCFI: Cryptographically enforced control flow integrity In: Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, CCS \u201915, 941\u2013951.. ACM, New York, NY, USA. https:\/\/doi.org\/10.1145\/2810103.2813676 ."},{"key":"18_CR32","unstructured":"Microsoft (2018) A detailed description of the data execution prevention (DEP) feature. https:\/\/support.microsoft.com\/en-us\/help\/875352\/a-detailed-description-of-the-data-execution-prevention-dep-feature-in . Accessed 23 Sep 2018."},{"key":"18_CR33","unstructured":"Oleksenko, O, Kuvaiskii D, Bhatotia P, Felber P, Fetzer C (2017) Intel MPX explained: An empirical study of intel MPX and software-based bounds checking approaches. CoRR abs\/1702.00719, http:\/\/arxiv.org\/abs\/1702.00719. Accessed 23 Sep 2018. 1702.00719."},{"key":"18_CR34","volume-title":"15th Workshop on Hot Topics in Operating Systems","author":"J Paupore","year":"2015","unstructured":"Paupore, J, Fernandes E, Prakash A, Roy S, Ou X (2015) Practical always-on taint tracking on mobile devices In: 15th Workshop on Hot Topics in Operating Systems.. USENIX Association, Kartause Ittingen, Switzerland. HotOS XV."},{"key":"18_CR35","unstructured":"Reinders, J (2013) Processor tracing. https:\/\/software.intel.com\/en-us\/blogs\/2013\/09\/18\/processor-tracing . Accessed 23 Sep 2018."},{"key":"18_CR36","doi-asserted-by":"publisher","first-page":"923","DOI":"10.1145\/2884781.2884817","volume-title":"Proceedings of the 38th International Conference on Software Engineering, ICSE \u201916","author":"K Rubinov","year":"2016","unstructured":"Rubinov, K, Rosculete L, Mitra T, Roychoudhury A (2016) Automated partitioning of android applications for trusted execution environments In: Proceedings of the 38th International Conference on Software Engineering, ICSE \u201916, 923\u2013934.. ACM, New York, NY, USA. https:\/\/doi.org\/10.1145\/2884781.2884817 ."},{"key":"18_CR37","doi-asserted-by":"crossref","unstructured":"Song, C, Lee B, Lu K, Harris W, Kim T, Lee W (2016) Enforcing kernel security invariants with data flow integrity In: 22th Annual Network and Distributed System Security Symposium, NDSS\u201918.","DOI":"10.14722\/ndss.2016.23218"},{"key":"18_CR38","unstructured":"Strong, BC, Brandt JW, Lachner P, Kleen A, Crossland JB, Opferman T (2015) Software-initiated trace integrated with hardware trace. US Patent 20160378636A1. 26 June 2015."},{"key":"18_CR39","doi-asserted-by":"publisher","unstructured":"Tuck, N, Calder B, Varghese G (2004) Hardware and binary modification support for code pointer protection from buffer overflow In: Microarchitecture, 2004. MICRO-37 2004. 37th International Symposium on, 209\u2013220. https:\/\/doi.org\/10.1109\/MICRO.2004.20 .","DOI":"10.1109\/MICRO.2004.20"},{"key":"18_CR40","doi-asserted-by":"crossref","unstructured":"Wang, H, Shi P, Zhang Y (2017) Jointcloud: A cross-cloud cooperation architecture for integrated internet service customization In: Proceedings of The 37th IEEE International Conference on Distributed Computing Systems (ICDCS 2017), ICDCS\u201917.","DOI":"10.1109\/ICDCS.2017.237"},{"issue":"2","key":"18_CR41","doi-asserted-by":"publisher","first-page":"389","DOI":"10.1145\/3093315.3037744","volume":"51","author":"K Wang","year":"2017","unstructured":"Wang, K, Hussain A, Zuo Z, Xu G, Amiri Sani A (2017) Graspan: A single-machine disk-based graph system for interprocedural static analyses of large-scale systems code. SIGOPS Oper Syst Rev 51(2):389\u2013404. https:\/\/doi.org\/10.1145\/3093315.3037744 . http:\/\/doi.acm.org\/10.1145\/3093315.3037744 .","journal-title":"SIGOPS Oper Syst Rev"},{"key":"18_CR42","doi-asserted-by":"publisher","unstructured":"Wang, Z, Jiang X (2010) Hypersafe: A lightweight approach to provide lifetime hypervisor control-flow integrity In: 2010 IEEE Symposium on Security and Privacy, 380\u2013395. https:\/\/doi.org\/10.1109\/SP.2010.30 .","DOI":"10.1109\/SP.2010.30"},{"key":"18_CR43","doi-asserted-by":"publisher","first-page":"559","DOI":"10.1109\/SP.2013.44","volume-title":"Proceedings of the 2013 IEEE Symposium on Security and Privacy. SP \u201913","author":"C Zhang","year":"2013","unstructured":"Zhang, C, Wei T, Chen Z, Duan L, Szekeres L, McCamant S, Song D, Zou W (2013) Practical control flow integrity and randomization for binary executables In: Proceedings of the 2013 IEEE Symposium on Security and Privacy. SP \u201913, 559\u2013573.. IEEE Computer Society, Washington, DC, USA. https:\/\/doi.org\/10.1109\/SP.2013.44 ."}],"container-title":["Cybersecurity"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1186\/s42400-018-0018-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1186\/s42400-018-0018-3\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1186\/s42400-018-0018-3.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,9,10]],"date-time":"2022-09-10T05:50:46Z","timestamp":1662789046000},"score":1,"resource":{"primary":{"URL":"https:\/\/cybersecurity.springeropen.com\/articles\/10.1186\/s42400-018-0018-3"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,1,14]]},"references-count":43,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2019,12]]}},"alternative-id":["18"],"URL":"https:\/\/doi.org\/10.1186\/s42400-018-0018-3","relation":{},"ISSN":["2523-3246"],"issn-type":[{"value":"2523-3246","type":"electronic"}],"subject":[],"published":{"date-parts":[[2019,1,14]]},"assertion":[{"value":"1 November 2018","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"14 December 2018","order":2,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"14 January 2019","order":3,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"No conflict of interest exists in the submission of this manuscript. The manuscript is approved by all authors for publication.","order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Competing interests"}},{"value":"Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Publisher\u2019s Note"}}],"article-number":"1"}}