{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,8,22]],"date-time":"2025-08-22T05:04:13Z","timestamp":1755839053333,"version":"3.41.0"},"reference-count":97,"publisher":"Association for Computing Machinery (ACM)","issue":"OOPSLA","license":[{"start":{"date-parts":[[2020,11,13]],"date-time":"2020-11-13T00:00:00Z","timestamp":1605225600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Proc. ACM Program. Lang."],"published-print":{"date-parts":[[2020,11,13]]},"abstract":"<jats:p>\n            As one of the fundamental optimizations in modern processors, the\n            <jats:italic>out-of-order<\/jats:italic>\n            execution boosts the pipeline throughput by executing independent instructions in parallel rather than in their program orders. However, due to the side effects introduced by such microarchitectural optimization to the CPU cache, secret-critical applications may suffer from timing side-channel leaks. This paper presents a symbolic execution-based technique, named SymO\n            <jats:sub>3<\/jats:sub>\n            , for exposing cache timing leaks under the context of\n            <jats:italic>out-of-order<\/jats:italic>\n            execution. SymO\n            <jats:sub>3<\/jats:sub>\n            proposes new components that address the modeling, reduction, and reasoning challenges of accommodating program analysis to the software code\n            <jats:italic>out-of-order<\/jats:italic>\n            analysis. We implemented SymO\n            <jats:sub>3<\/jats:sub>\n            upon KLEE and conducted three evaluations on it. Experimental results show that SymO\n            <jats:sub>3<\/jats:sub>\n            successfully uncovers a set of cache timing leaks in five real-world programs. Also, SymO\n            <jats:sub>3<\/jats:sub>\n            finds that, in general, program transformation from compiler optimizations shrink the surface to timing leaks. Furthermore, augmented with a speculative execution modeling, SymO\n            <jats:sub>3<\/jats:sub>\n            identifies five more leaky programs based on the compound analysis.\n          <\/jats:p>","DOI":"10.1145\/3428215","type":"journal-article","created":{"date-parts":[[2020,11,24]],"date-time":"2020-11-24T23:40:14Z","timestamp":1606261214000},"page":"1-32","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":6,"title":["Exposing cache timing side-channel leaks through out-of-order symbolic execution"],"prefix":"10.1145","volume":"4","author":[{"given":"Shengjian","family":"Guo","sequence":"first","affiliation":[{"name":"Baidu Security, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yueqi","family":"Chen","sequence":"additional","affiliation":[{"name":"Pennsylvania State University, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jiyong","family":"Yu","sequence":"additional","affiliation":[{"name":"University of Illinois at Urbana-Champaign, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Meng","family":"Wu","sequence":"additional","affiliation":[{"name":"Ant Group, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Zhiqiang","family":"Zuo","sequence":"additional","affiliation":[{"name":"Nanjing University, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Peng","family":"Li","sequence":"additional","affiliation":[{"name":"Baidu Security, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Yueqiang","family":"Cheng","sequence":"additional","affiliation":[{"name":"Baidu Security, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Huibo","family":"Wang","sequence":"additional","affiliation":[{"name":"Baidu Security, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2020,11,13]]},"reference":[{"key":"e_1_2_2_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/3297858.3304062"},{"key":"e_1_2_2_2_1","doi-asserted-by":"publisher","DOI":"10.13154\/tches.v2019.i4.213-242"},{"key":"e_1_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/3062341.3062378"},{"key":"e_1_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/2950290.2950362"},{"key":"e_1_2_2_5_1","doi-asserted-by":"publisher","DOI":"10.1109\/EuroSP.2018.00029"},{"key":"e_1_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-54792-8_8"},{"key":"e_1_2_2_7_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSTW.2017.16"},{"key":"e_1_2_2_8_1","volume-title":"Verif. Reliab., 30 ( 1 )","author":"Basu T.","year":"2020","unstructured":"T. Basu , K. Aggarwal , C. Wang , and S. Chattopadhyay . An exploration of efective fuzzing for side-channel cache leakage. Softw. Test ., Verif. Reliab., 30 ( 1 ) , 2020 . T. Basu, K. Aggarwal, C. Wang, and S. Chattopadhyay. An exploration of efective fuzzing for side-channel cache leakage. Softw. Test., Verif. Reliab., 30 ( 1 ), 2020."},{"key":"e_1_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2660193.2660200"},{"key":"e_1_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2019.00022"},{"key":"e_1_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/1966445.1966463"},{"key":"e_1_2_2_12_1","first-page":"991","volume-title":"27th USENIX Security Symposium, USENIX Security 2018","author":"Bulck J. V.","year":"2018","unstructured":"J. V. Bulck , M. Minkin , O. Weisse , D. Genkin , B. Kasikci , F. Piessens , M. Silberstein , T. F. Wenisch , Y. Yarom , and R. Strackx . Foreshadow: Extracting the keys to the intel SGX kingdom with transient out-of-order execution . In 27th USENIX Security Symposium, USENIX Security 2018 , Baltimore, MD, USA , August 15-17, 2018 ., pages 991 - 1008 , 2018. J. V. Bulck, M. Minkin, O. Weisse, D. Genkin, B. Kasikci, F. Piessens, M. Silberstein, T. F. Wenisch, Y. Yarom, and R. Strackx. Foreshadow: Extracting the keys to the intel SGX kingdom with transient out-of-order execution. In 27th USENIX Security Symposium, USENIX Security 2018, Baltimore, MD, USA, August 15-17, 2018., pages 991-1008, 2018."},{"key":"e_1_2_2_13_1","volume-title":"The simplescalar tool set, version 2.0. ACM SIGARCH computer architecture news, 25 ( 3 ):  13-25","author":"Burger D.","year":"1997","unstructured":"D. Burger and T. M. Austin . The simplescalar tool set, version 2.0. ACM SIGARCH computer architecture news, 25 ( 3 ): 13-25 , 1997 . D. Burger and T. M. Austin. The simplescalar tool set, version 2.0. ACM SIGARCH computer architecture news, 25 ( 3 ): 13-25, 1997."},{"key":"e_1_2_2_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/2786805.2803205"},{"key":"e_1_2_2_15_1","first-page":"209","volume-title":"8th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2008, December 8-10, 2008, San Diego, California, USA","author":"Cadar C.","year":"2008","unstructured":"C. Cadar , D. Dunbar , and D. R. Engler . KLEE: unassisted and automatic generation of high-coverage tests for complex systems programs . In 8th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2008, December 8-10, 2008, San Diego, California, USA , Proceedings , pages 209 - 224 , 2008 . C. Cadar, D. Dunbar, and D. R. Engler. KLEE: unassisted and automatic generation of high-coverage tests for complex systems programs. In 8th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2008, December 8-10, 2008, San Diego, California, USA, Proceedings, pages 209-224, 2008."},{"key":"e_1_2_2_16_1","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2012.31"},{"key":"e_1_2_2_17_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-662-54580-5_3"},{"key":"e_1_2_2_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/3127041.3127044"},{"key":"e_1_2_2_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/3133956.3134058"},{"key":"e_1_2_2_20_1","volume-title":"32nd European Conference on Object-Oriented Programming, ECOOP 2018","author":"Chen J.","year":"2018","unstructured":"J. Chen , W. Hu , L. Zhang , D. Hao , S. Khurshid , and L. Zhang . Learning to accelerate symbolic execution via code transformation . In 32nd European Conference on Object-Oriented Programming, ECOOP 2018 , July 16-21, 2018 , Amsterdam, The Netherlands, pages 6 : 1-6 : 27 , 2018. J. Chen, W. Hu, L. Zhang, D. Hao, S. Khurshid, and L. Zhang. Learning to accelerate symbolic execution via code transformation. In 32nd European Conference on Object-Oriented Programming, ECOOP 2018, July 16-21, 2018, Amsterdam, The Netherlands, pages 6 : 1-6 : 27, 2018."},{"key":"e_1_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.1109\/RTAS.2016.7461358"},{"key":"e_1_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1713254.1713257"},{"key":"e_1_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/800191.805647"},{"key":"e_1_2_2_24_1","doi-asserted-by":"publisher","DOI":"10.1023\/A:1008149332687"},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2009.19"},{"key":"e_1_2_2_26_1","volume-title":"chronos. Chronos linux: a bestefort real-time multiprocessor linux kernel","author":"Dellinger M.","year":"2011","unstructured":"M. Dellinger , P. Garyali , and B. Ravindran . chronos. Chronos linux: a bestefort real-time multiprocessor linux kernel , 2011 . M. Dellinger, P. Garyali, and B. Ravindran. chronos. Chronos linux: a bestefort real-time multiprocessor linux kernel, 2011."},{"key":"e_1_2_2_27_1","first-page":"167","volume-title":"This International Conference, CARDIS '98, Louvain-la-Neuve, Belgium, September 14-16, 1998","author":"Dhem J.","year":"1998","unstructured":"J. Dhem , F. Koeune , P. Leroux , P. Mestr\u00e9 , J. Quisquater , and J. Willems . A practical implementation of the timing attack. In Smart Card Research and Applications , This International Conference, CARDIS '98, Louvain-la-Neuve, Belgium, September 14-16, 1998 , Proceedings , pages 167 - 182 , 1998 . J. Dhem, F. Koeune, P. Leroux, P. Mestr\u00e9, J. Quisquater, and J. Willems. A practical implementation of the timing attack. In Smart Card Research and Applications, This International Conference, CARDIS '98, Louvain-la-Neuve, Belgium, September 14-16, 1998, Proceedings, pages 167-182, 1998."},{"key":"e_1_2_2_28_1","volume-title":"triathlon. Triathlon of lightweight block ciphers for the internet of things","author":"Dinu D.","year":"2015","unstructured":"D. Dinu , Y. L. Corre , D. Khovratovich , L. Perrin , J. Gro\u00dfsch\u00e4dl , and A. Biryukov . triathlon. Triathlon of lightweight block ciphers for the internet of things ., 2015 . D. Dinu, Y. L. Corre, D. Khovratovich, L. Perrin, J. Gro\u00dfsch\u00e4dl, and A. Biryukov. triathlon. Triathlon of lightweight block ciphers for the internet of things., 2015."},{"key":"e_1_2_2_29_1","first-page":"51","volume-title":"26th USENIX Security Symposium, USENIX Security 2017","author":"Disselkoen C.","year":"2017","unstructured":"C. Disselkoen , D. Kohlbrenner , L. Porter , and D. M. Tullsen . Prime+abort: A timer-free high-precision L3 cache attack using intel TSX . In 26th USENIX Security Symposium, USENIX Security 2017 , Vancouver, BC, Canada , August 16-18, 2017 ., pages 51 - 67 , 2017. C. Disselkoen, D. Kohlbrenner, L. Porter, and D. M. Tullsen. Prime+abort: A timer-free high-precision L3 cache attack using intel TSX. In 26th USENIX Security Symposium, USENIX Security 2017, Vancouver, BC, Canada, August 16-18, 2017., pages 51-67, 2017."},{"key":"e_1_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.1109\/ISSRE.2015.7381814"},{"key":"e_1_2_2_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/3062341.3062388"},{"key":"e_1_2_2_32_1","first-page":"431","volume-title":"Proceedings of the 22th USENIX Security Symposium","author":"Doychev G.","year":"2013","unstructured":"G. Doychev , D. Feld , B. K\u00f6pf , L. Mauborgne , and J. Reineke . Cacheaudit: A tool for the static analysis of cache side channels . In Proceedings of the 22th USENIX Security Symposium , Washington, DC, USA , August 14-16, 2013 , pages 431 - 446 , 2013. G. Doychev, D. Feld, B. K\u00f6pf, L. Mauborgne, and J. Reineke. Cacheaudit: A tool for the static analysis of cache side channels. In Proceedings of the 22th USENIX Security Symposium, Washington, DC, USA, August 14-16, 2013, pages 431-446, 2013."},{"key":"e_1_2_2_33_1","volume-title":"Computer Architecture: Out-of-order Execution. https:\/\/iis-people.ee.ethz.ch\/~gmichi\/asocd\/addinfo\/Out-ofOrder_execution.pdf","author":"Etsion Y.","year":"2013","unstructured":"Y. Etsion . Computer Architecture: Out-of-order Execution. https:\/\/iis-people.ee.ethz.ch\/~gmichi\/asocd\/addinfo\/Out-ofOrder_execution.pdf , 2013 . Y. Etsion. Computer Architecture: Out-of-order Execution. https:\/\/iis-people.ee.ethz.ch\/~gmichi\/asocd\/addinfo\/Out-ofOrder_execution.pdf, 2013."},{"key":"e_1_2_2_34_1","first-page":"110","volume-title":"Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2005","author":"Flanagan C.","year":"2005","unstructured":"C. Flanagan and P. Godefroid . Dynamic partial-order reduction for model checking software. In J. Palsberg and M. Abadi, editors , Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2005 , Long Beach, California, USA , January 12-14, 2005 , pages 110 - 121 . ACM, 2005. C. Flanagan and P. Godefroid. Dynamic partial-order reduction for model checking software. In J. Palsberg and M. Abadi, editors, Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2005, Long Beach, California, USA, January 12-14, 2005, pages 110-121. ACM, 2005."},{"volume-title":"https:\/\/github.com\/Microsoft\/FourQlib\/","year":"2020","key":"e_1_2_2_35_1","unstructured":"FourQLib. FourQLib. https:\/\/github.com\/Microsoft\/FourQlib\/ , 2020 . FourQLib. FourQLib. https:\/\/github.com\/Microsoft\/FourQlib\/, 2020."},{"volume-title":"freeradius. https:\/\/freeradius.org\/","year":"2020","key":"e_1_2_2_36_1","unstructured":"freeradius. freeradius. https:\/\/freeradius.org\/ , 2020 . freeradius. freeradius. https:\/\/freeradius.org\/, 2020."},{"key":"e_1_2_2_37_1","volume-title":"GDK Library https:\/\/developer.gnome. org\/gdk3\/3.22\/","author":"GDK.","year":"2018","unstructured":"GDK. GDK. GDK Library https:\/\/developer.gnome. org\/gdk3\/3.22\/ , 2018 . GDK. GDK. GDK Library https:\/\/developer.gnome. org\/gdk3\/3.22\/, 2018."},{"volume-title":"glibc-2. 29.9000. https:\/\/www.gnu.org\/software\/libc\/","year":"2019","key":"e_1_2_2_38_1","unstructured":"glibc. glibc-2. 29.9000. https:\/\/www.gnu.org\/software\/libc\/ , 2019 . glibc. glibc-2. 29.9000. https:\/\/www.gnu.org\/software\/libc\/, 2019."},{"key":"e_1_2_2_39_1","doi-asserted-by":"publisher","DOI":"10.14722\/ndss.2017.23271"},{"key":"e_1_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-40667-1_14"},{"key":"e_1_2_2_41_1","doi-asserted-by":"publisher","DOI":"10.1109\/SP40000.2020.00011"},{"key":"e_1_2_2_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/2786805.2786841"},{"key":"e_1_2_2_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/3236024.3236028"},{"key":"e_1_2_2_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/3377811.3380428"},{"key":"e_1_2_2_45_1","volume-title":"Present and Future","author":"Gustafsson J.","year":"2010","unstructured":"J. Gustafsson , A. Betts , A. Ermedahl , and B. Lisper . WCET@mdh. The M\u00e4lardalen WCET Benchmarks-Past , Present and Future , 2010 . J. Gustafsson, A. Betts, A. Ermedahl, and B. Lisper. WCET@mdh. The M\u00e4lardalen WCET Benchmarks-Past, Present and Future, 2010."},{"key":"e_1_2_2_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/3314221.3314606"},{"key":"e_1_2_2_47_1","volume-title":"ct-fuzz: Fuzzing for timing leaks. CoRR, abs\/","author":"He S.","year":"1904","unstructured":"S. He , M. Emmi , and G. F. Ciocarlie . ct-fuzz: Fuzzing for timing leaks. CoRR, abs\/ 1904 .07280, 2019. S. He, M. Emmi, and G. F. Ciocarlie. ct-fuzz: Fuzzing for timing leaks. CoRR, abs\/ 1904.07280, 2019."},{"volume-title":"The SkyLake Microarchitecture. https:\/\/www.intel.com\/content\/dam\/www\/public\/us\/en\/documents\/manuals\/64-ia-32-architectures-optimization-manual.pdf","year":"2016","key":"e_1_2_2_48_1","unstructured":"Intel. The SkyLake Microarchitecture. https:\/\/www.intel.com\/content\/dam\/www\/public\/us\/en\/documents\/manuals\/64-ia-32-architectures-optimization-manual.pdf , 2016 . Intel. The SkyLake Microarchitecture. https:\/\/www.intel.com\/content\/dam\/www\/public\/us\/en\/documents\/manuals\/64-ia-32-architectures-optimization-manual.pdf, 2016."},{"key":"e_1_2_2_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/360248.360252"},{"volume-title":"Binary Symbolic Execution with KLEE-Native. https:\/\/github.com\/lifting-bits\/klee#klee-native","year":"2019","key":"e_1_2_2_50_1","unstructured":"KLEE-Native. Binary Symbolic Execution with KLEE-Native. https:\/\/github.com\/lifting-bits\/klee#klee-native , 2019 . KLEE-Native. Binary Symbolic Execution with KLEE-Native. https:\/\/github.com\/lifting-bits\/klee#klee-native, 2019."},{"key":"e_1_2_2_51_1","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2019.00002"},{"key":"e_1_2_2_52_1","first-page":"104","volume-title":"Advances in Cryptology-CRYPTO '96, 16th Annual International Cryptology Conference, Santa Barbara, California, USA, August 18-22, 1996","author":"Kocher P. C.","year":"1996","unstructured":"P. C. Kocher . Timing attacks on implementations of difie-hellman, rsa, dss, and other systems . In Advances in Cryptology-CRYPTO '96, 16th Annual International Cryptology Conference, Santa Barbara, California, USA, August 18-22, 1996 , Proceedings , pages 104 - 113 , 1996 . P. C. Kocher. Timing attacks on implementations of difie-hellman, rsa, dss, and other systems. In Advances in Cryptology-CRYPTO '96, 16th Annual International Cryptology Conference, Santa Barbara, California, USA, August 18-22, 1996, Proceedings, pages 104-113, 1996."},{"key":"e_1_2_2_53_1","doi-asserted-by":"publisher","DOI":"10.1145\/3106237.3106243"},{"key":"e_1_2_2_54_1","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-36126-X_9"},{"key":"e_1_2_2_55_1","doi-asserted-by":"publisher","DOI":"10.1109\/CGO.2004.1281665"},{"key":"e_1_2_2_56_1","volume-title":"mediabench. MediaBench: a tool for evaluating and synthesizing multimedia and communications systems","author":"Lee C.","year":"1997","unstructured":"C. Lee , M. Potkonjak , and W. Mangione-Smith . mediabench. MediaBench: a tool for evaluating and synthesizing multimedia and communications systems , 1997 . C. Lee, M. Potkonjak, and W. Mangione-Smith. mediabench. MediaBench: a tool for evaluating and synthesizing multimedia and communications systems, 1997."},{"key":"e_1_2_2_57_1","doi-asserted-by":"publisher","DOI":"10.1109\/REAL.2004.33"},{"key":"e_1_2_2_58_1","doi-asserted-by":"publisher","DOI":"10.1007\/s11241-006-9205-5"},{"volume-title":"libfixedtimefixedpoint. A library for doing constant-time fixed-point numeric operations: https:\/\/github.com\/kmowery\/libfixedtimefixedpoint\/","year":"2017","key":"e_1_2_2_59_1","unstructured":"libfixedtimefixedpoint. libfixedtimefixedpoint. A library for doing constant-time fixed-point numeric operations: https:\/\/github.com\/kmowery\/libfixedtimefixedpoint\/ , 2017 . libfixedtimefixedpoint. libfixedtimefixedpoint. A library for doing constant-time fixed-point numeric operations: https:\/\/github.com\/kmowery\/libfixedtimefixedpoint\/, 2017."},{"volume-title":"https:\/\/gnupg.org\/software\/libgcrypt\/index.html","year":"2018","key":"e_1_2_2_60_1","unstructured":"Libgcrypt. Libgcrypt-1.8.4. https:\/\/gnupg.org\/software\/libgcrypt\/index.html , 2018 . Libgcrypt. Libgcrypt-1.8.4. https:\/\/gnupg.org\/software\/libgcrypt\/index.html, 2018."},{"volume-title":"http:\/\/www.libtom.net\/LibTomCrypt\/","year":"2019","key":"e_1_2_2_61_1","unstructured":"LibTomCrypt. LibTomCrypt. http:\/\/www.libtom.net\/LibTomCrypt\/ , 2019 . LibTomCrypt. LibTomCrypt. http:\/\/www.libtom.net\/LibTomCrypt\/, 2019."},{"key":"e_1_2_2_62_1","first-page":"973","volume-title":"27th USENIX Security Symposium, USENIX Security 2018","author":"Lipp M.","year":"2018","unstructured":"M. Lipp , M. Schwarz , D. Gruss , T. Prescher , W. Haas , A. Fogh , J. Horn , S. Mangard , P. Kocher , D. Genkin , Y. Yarom , and M. Hamburg . Meltdown: Reading kernel memory from user space . In 27th USENIX Security Symposium, USENIX Security 2018 , Baltimore, MD, USA , August 15-17, 2018 , pages 973 - 990 , 2018. M. Lipp, M. Schwarz, D. Gruss, T. Prescher, W. Haas, A. Fogh, J. Horn, S. Mangard, P. Kocher, D. Genkin, Y. Yarom, and M. Hamburg. Meltdown: Reading kernel memory from user space. In 27th USENIX Security Symposium, USENIX Security 2018, Baltimore, MD, USA, August 15-17, 2018, pages 973-990, 2018."},{"key":"e_1_2_2_63_1","volume-title":"mbedTLS. https:\/\/tls.mbed.org\/code\/releases\/","author":"TLS.","year":"2017","unstructured":"mbed TLS. mbedTLS. https:\/\/tls.mbed.org\/code\/releases\/ , 2017 . mbedTLS. mbedTLS. https:\/\/tls.mbed.org\/code\/releases\/, 2017."},{"key":"e_1_2_2_64_1","doi-asserted-by":"publisher","DOI":"10.1145\/2907950.2907961"},{"key":"e_1_2_2_65_1","first-page":"301","volume-title":"Proceedings of the Sixth International Symposium on High-Performance Computer Architecture","author":"Moshovos A.","year":"2000","unstructured":"A. Moshovos and G. S. Sohi . Memory dependence speculation tradeofs in centralized, continuous-window superscalar processors . In Proceedings of the Sixth International Symposium on High-Performance Computer Architecture , Toulouse, France , January 8-12, 2000 , pages 301 - 312 , 2000. A. Moshovos and G. S. Sohi. Memory dependence speculation tradeofs in centralized, continuous-window superscalar processors. In Proceedings of the Sixth International Symposium on High-Performance Computer Architecture, Toulouse, France, January 8-12, 2000, pages 301-312, 2000."},{"key":"e_1_2_2_66_1","first-page":"176","volume-title":"Proceedings of the 41st International Conference on Software Engineering, ICSE 2019, Montreal, QC","author":"Nilizadeh S.","year":"2019","unstructured":"S. Nilizadeh , Y. Noller , and C. S. Pasareanu . Difuzz: diferential fuzzing for side-channel analysis . In Proceedings of the 41st International Conference on Software Engineering, ICSE 2019, Montreal, QC , Canada , May 25-31, 2019 , pages 176 - 187 , 2019. S. Nilizadeh, Y. Noller, and C. S. Pasareanu. Difuzz: diferential fuzzing for side-channel analysis. In Proceedings of the 41st International Conference on Software Engineering, ICSE 2019, Montreal, QC, Canada, May 25-31, 2019, pages 176-187, 2019."},{"key":"e_1_2_2_67_1","first-page":"1481","volume-title":"29th USENIX Security Symposium, USENIX Security 2020, August 12-14, 2020","author":"Oleksenko O.","year":"2020","unstructured":"O. Oleksenko , B. Trach , M. Silberstein , and C. Fetzer . Specfuzz: Bringing spectre-type vulnerabilities to the surface. In S. Capkun and F. Roesner, editors , 29th USENIX Security Symposium, USENIX Security 2020, August 12-14, 2020 , pages 1481 - 1498 . USENIX Association , 2020 . O. Oleksenko, B. Trach, M. Silberstein, and C. Fetzer. Specfuzz: Bringing spectre-type vulnerabilities to the surface. In S. Capkun and F. Roesner, editors, 29th USENIX Security Symposium, USENIX Security 2020, August 12-14, 2020, pages 1481-1498. USENIX Association, 2020."},{"key":"e_1_2_2_68_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.1999.809454"},{"key":"e_1_2_2_69_1","volume-title":"https:\/\/mta.openssl.org\/pipermail\/openssl-announce\/2019-May\/000153.html","author":"SSL.","year":"2019","unstructured":"Open SSL. OpenSSL-1. 1.1c. https:\/\/mta.openssl.org\/pipermail\/openssl-announce\/2019-May\/000153.html , 2019 . OpenSSL. OpenSSL-1. 1.1c. https:\/\/mta.openssl.org\/pipermail\/openssl-announce\/2019-May\/000153.html, 2019."},{"key":"e_1_2_2_70_1","doi-asserted-by":"publisher","DOI":"10.1145\/2810103.2813708"},{"key":"e_1_2_2_71_1","volume-title":"USA","author":"Osvik D. A.","year":"2006","unstructured":"D. A. Osvik , A. Shamir , and E. Tromer . Cache attacks and countermeasures: The case of AES. In Topics in Cryptology-CT-RSA 2006, The Cryptographers' Track at the RSA Conference 2006, San Jose, CA , USA , February 13-17, 2006 , Proceedings, pages 1-20 , 2006. D. A. Osvik, A. Shamir, and E. Tromer. Cache attacks and countermeasures: The case of AES. In Topics in Cryptology-CT-RSA 2006, The Cryptographers' Track at the RSA Conference 2006, San Jose, CA, USA, February 13-17, 2006, Proceedings, pages 1-20, 2006."},{"key":"e_1_2_2_72_1","author":"Pai V. S.","year":"1997","unstructured":"V. S. Pai , P. Ranganathan , and S. V. Adve . Rsim: An execution-driven simulator for ilp-based shared-memory multiprocessors and uniprocessors. IEEE Technical Committee on Computer Architecture Newsletter , 1997 . V. S. Pai, P. Ranganathan, and S. V. Adve. Rsim: An execution-driven simulator for ilp-based shared-memory multiprocessors and uniprocessors. IEEE Technical Committee on Computer Architecture Newsletter, 1997.","journal-title":"IEEE Technical Committee on Computer Architecture Newsletter"},{"key":"e_1_2_2_73_1","doi-asserted-by":"publisher","DOI":"10.1145\/1858996.1859035"},{"key":"e_1_2_2_74_1","first-page":"401","volume":"2017","author":"Phan Q.","year":"2017","unstructured":"Q. Phan , L. Bang , C. S. Pasareanu , P. Malacaria , and T. Bultan . Synthesis of adaptive side-channel attacks. IACR Cryptology ePrint Archive , 2017 : 401 , 2017 . Q. Phan, L. Bang, C. S. Pasareanu, P. Malacaria, and T. Bultan. Synthesis of adaptive side-channel attacks. IACR Cryptology ePrint Archive, 2017 : 401, 2017.","journal-title":"Synthesis of adaptive side-channel attacks. IACR Cryptology ePrint Archive"},{"key":"e_1_2_2_75_1","doi-asserted-by":"publisher","DOI":"10.1145\/3359789.3359796"},{"key":"e_1_2_2_76_1","first-page":"181","volume-title":"29th USENIX Security Symposium, USENIX Security 2020, August 12-14, 2020","author":"Poeplau S.","year":"2020","unstructured":"S. Poeplau and A. Francillon . Symbolic execution with symcc: Don't interpret, compile! In S. Capkun and F. Roesner, editors , 29th USENIX Security Symposium, USENIX Security 2020, August 12-14, 2020 , pages 181 - 198 . USENIX Association , 2020 . S. Poeplau and A. Francillon. Symbolic execution with symcc: Don't interpret, compile! In S. Capkun and F. Roesner, editors, 29th USENIX Security Symposium, USENIX Security 2020, August 12-14, 2020, pages 181-198. USENIX Association, 2020."},{"key":"e_1_2_2_77_1","doi-asserted-by":"crossref","unstructured":"C. Rapier and B. Bennett. High speed bulk data transfer using the SSH protocol. In Proceedings of the 15th ACM Mardi Gras conference: From lightweight mash-ups to lambda grids: Understanding the spectrum of distributed computing requirements applications tools infrastructures interoperability and the incremental adoption of key capabilities Baton Rouge Louisiana USA January 29-February 3 2008 page 11 2008.  C. Rapier and B. Bennett. High speed bulk data transfer using the SSH protocol. In Proceedings of the 15th ACM Mardi Gras conference: From lightweight mash-ups to lambda grids: Understanding the spectrum of distributed computing requirements applications tools infrastructures interoperability and the incremental adoption of key capabilities Baton Rouge Louisiana USA January 29-February 3 2008 page 11 2008.","DOI":"10.1145\/1341811.1341824"},{"key":"e_1_2_2_78_1","volume-title":"Triton: A Dynamic Binary Analysis Framework. https:\/\/triton.quarkslab.com\/","author":"Saudel F.","year":"2013","unstructured":"F. Saudel and J. Salwan . Triton: A Dynamic Binary Analysis Framework. https:\/\/triton.quarkslab.com\/ , 2013 . F. Saudel and J. Salwan. Triton: A Dynamic Binary Analysis Framework. https:\/\/triton.quarkslab.com\/, 2013."},{"key":"e_1_2_2_79_1","volume-title":"Fast out-of-order processor simulation using memoization. ACM SIGPLAN Notices, 33 ( 11 ):  283-294","author":"Schnarr E.","year":"1998","unstructured":"E. Schnarr and J. R. Larus . Fast out-of-order processor simulation using memoization. ACM SIGPLAN Notices, 33 ( 11 ): 283-294 , 1998 . E. Schnarr and J. R. Larus. Fast out-of-order processor simulation using memoization. ACM SIGPLAN Notices, 33 ( 11 ): 283-294, 1998."},{"key":"e_1_2_2_80_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2005.29"},{"key":"e_1_2_2_81_1","doi-asserted-by":"publisher","DOI":"10.1007\/BFb0028737"},{"key":"e_1_2_2_82_1","doi-asserted-by":"publisher","DOI":"10.5555\/327010.327125"},{"key":"e_1_2_2_83_1","doi-asserted-by":"publisher","DOI":"10.14722\/ndss.2016.23368"},{"volume-title":"Kernel tree for NVIDIA Tegra family SOICs on Android. https:\/\/android.googlesource.com\/kernel\/tegra\/+\/android8.1.0_r0.113\/crypto","year":"2018","key":"e_1_2_2_84_1","unstructured":"Tegra. Kernel tree for NVIDIA Tegra family SOICs on Android. https:\/\/android.googlesource.com\/kernel\/tegra\/+\/android8.1.0_r0.113\/crypto , 2018 . Tegra. Kernel tree for NVIDIA Tegra family SOICs on Android. https:\/\/android.googlesource.com\/kernel\/tegra\/+\/android8.1.0_r0.113\/crypto, 2018."},{"key":"e_1_2_2_85_1","doi-asserted-by":"publisher","DOI":"10.1145\/3385897"},{"key":"e_1_2_2_86_1","first-page":"235","volume-title":"26th USENIX Security Symposium, USENIX Security 2017","author":"Wang S.","year":"2017","unstructured":"S. Wang , P. Wang , X. Liu , D. Zhang , and D. Wu . Cached: Identifying cache-based timing channels in production software. In E. Kirda and T. Ristenpart, editors , 26th USENIX Security Symposium, USENIX Security 2017 , Vancouver, BC, Canada , August 16-18, 2017 , pages 235 - 252 . USENIX Association, 2017. S. Wang, P. Wang, X. Liu, D. Zhang, and D. Wu. Cached: Identifying cache-based timing channels in production software. In E. Kirda and T. Ristenpart, editors, 26th USENIX Security Symposium, USENIX Security 2017, Vancouver, BC, Canada, August 16-18, 2017, pages 235-252. USENIX Association, 2017."},{"key":"e_1_2_2_87_1","first-page":"657","volume-title":"28th USENIX Security Symposium, USENIX Security 2019","author":"Wang S.","year":"2019","unstructured":"S. Wang , Y. Bao , X. Liu , P. Wang , D. Zhang , and D. Wu . Identifying cache-based side channels through secret-augmented abstract interpretation . In 28th USENIX Security Symposium, USENIX Security 2019 , Santa Clara, CA, USA , August 14-16, 2019 , pages 657 - 674 , 2019. S. Wang, Y. Bao, X. Liu, P. Wang, D. Zhang, and D. Wu. Identifying cache-based side channels through secret-augmented abstract interpretation. In 28th USENIX Security Symposium, USENIX Security 2019, Santa Clara, CA, USA, August 14-16, 2019, pages 657-674, 2019."},{"key":"e_1_2_2_88_1","volume-title":"Foreshadow-NG: Breaking the virtual memory abstraction with transient out-of-order execution. Technical report","author":"Weisse O.","year":"2018","unstructured":"O. Weisse , J. Van Bulck , M. Minkin , D. Genkin , B. Kasikci , F. Piessens , M. Silberstein , R. Strackx , T. F. Wenisch , and Y. Yarom . Foreshadow-NG: Breaking the virtual memory abstraction with transient out-of-order execution. Technical report , 2018 . O. Weisse, J. Van Bulck, M. Minkin, D. Genkin, B. Kasikci, F. Piessens, M. Silberstein, R. Strackx, T. F. Wenisch, and Y. Yarom. Foreshadow-NG: Breaking the virtual memory abstraction with transient out-of-order execution. Technical report, 2018."},{"key":"e_1_2_2_89_1","doi-asserted-by":"publisher","DOI":"10.1145\/3274694.3274741"},{"key":"e_1_2_2_90_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-11319-2_3"},{"key":"e_1_2_2_91_1","doi-asserted-by":"publisher","DOI":"10.1145\/3314221.3314647"},{"key":"e_1_2_2_92_1","doi-asserted-by":"publisher","DOI":"10.1145\/3133956.3134016"},{"key":"e_1_2_2_93_1","first-page":"288","volume-title":"15th International SPIN Workshop, Los Angeles, CA, USA, August 10-12, 2008","author":"Yang Y.","year":"2008","unstructured":"Y. Yang , X. Chen , G. Gopalakrishnan , and R. M. Kirby . Eficient stateful dynamic partial order reduction. In Model Checking Software , 15th International SPIN Workshop, Los Angeles, CA, USA, August 10-12, 2008 , Proceedings , pages 288 - 305 , 2008 . Y. Yang, X. Chen, G. Gopalakrishnan, and R. M. Kirby. Eficient stateful dynamic partial order reduction. In Model Checking Software, 15th International SPIN Workshop, Los Angeles, CA, USA, August 10-12, 2008, Proceedings, pages 288-305, 2008."},{"key":"e_1_2_2_94_1","volume-title":"Distributed dynamic partial order reduction. STTT, 12 ( 2 ):  113-122","author":"Yang Y.","year":"2010","unstructured":"Y. Yang , X. Chen , G. Gopalakrishnan , and R. M. Kirby . Distributed dynamic partial order reduction. STTT, 12 ( 2 ): 113-122 , 2010 . Y. Yang, X. Chen, G. Gopalakrishnan, and R. M. Kirby. Distributed dynamic partial order reduction. STTT, 12 ( 2 ): 113-122, 2010."},{"key":"e_1_2_2_95_1","first-page":"719","volume-title":"Proceedings of the 23rd USENIX Security Symposium","author":"Yarom Y.","year":"2014","unstructured":"Y. Yarom and K. Falkner . FLUSH+ RELOAD: A high resolution, low noise, L3 cache side-channel attack . In Proceedings of the 23rd USENIX Security Symposium , San Diego, CA, USA , August 20-22, 2014 ., pages 719 - 732 , 2014. Y. Yarom and K. Falkner. FLUSH+ RELOAD: A high resolution, low noise, L3 cache side-channel attack. In Proceedings of the 23rd USENIX Security Symposium, San Diego, CA, USA, August 20-22, 2014., pages 719-732, 2014."},{"key":"e_1_2_2_96_1","doi-asserted-by":"publisher","DOI":"10.14722\/ndss.2019.23061"},{"key":"e_1_2_2_97_1","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2011.31"}],"container-title":["Proceedings of the ACM on Programming Languages"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3428215","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3428215","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,17]],"date-time":"2025-06-17T22:02:57Z","timestamp":1750197777000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3428215"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,11,13]]},"references-count":97,"journal-issue":{"issue":"OOPSLA","published-print":{"date-parts":[[2020,11,13]]}},"alternative-id":["10.1145\/3428215"],"URL":"https:\/\/doi.org\/10.1145\/3428215","relation":{},"ISSN":["2475-1421"],"issn-type":[{"type":"electronic","value":"2475-1421"}],"subject":[],"published":{"date-parts":[[2020,11,13]]},"assertion":[{"value":"2020-11-13","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}