vfGuard: Strict Protection for Virtual Function Calls in COTS C plus plus Binaries

被引:39
|
作者
Prakash, Aravind [1 ]
Hu, Xunchao [1 ]
Yin, Heng [1 ]
机构
[1] Syracuse Univ, Dept EECS, Syracuse, NY 13244 USA
基金
美国国家科学基金会;
关键词
D O I
10.14722/ndss.2015.23297
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Control-Flow Integrity (CFI) is an important security property that needs to be enforced to prevent control-flow hijacking attacks. Recent attacks have demonstrated that existing CFI protections for COTS binaries are too permissive, and vulnerable to sophisticated code reusing attacks. Accounting for control flow restrictions imposed at higher levels of semantics is key to increasing CFI precision. In this paper, we aim to provide more stringent protection for virtual function calls in COTS C++ binaries by recovering C++ level semantics. To achieve this goal, we recover C++ semantics, including VTables and virtual callsites. With the extracted C++ semantics, we construct a sound CFI policy and further improve the policy precision by devising two filters, namely "Nested Call Filter" and "Calling Convention Filter". We implement a prototype system called vfGuard, and evaluate its accuracy, precision, effectiveness, coverage and performance overhead against a test set including complex C++ binary modules used by Internet Explorer. Our experiments show a runtime overhead of 18.3% per module. On SpiderMonkey, an open-source JavaScript engine used by Firefox, vfGuard generated 199 call targets per virtual callsite - within the same order of magnitude as those generated from a source code based solution. The policies constructed by vfGuard are sound and of higher precision when compared to state-of-the-art binary-only CFI solutions.
引用
收藏
页数:15
相关论文
共 50 条
  • [41] Effects of atorvastatin plus trimetazidine for patients with coronary heart disease on myocardial protection and renal function
    Xiang, Peng
    Zhong, Ze
    Hu, Bin
    Liu, Ying
    INTERNATIONAL JOURNAL OF CLINICAL AND EXPERIMENTAL MEDICINE, 2019, 12 (05): : 5572 - 5580
  • [42] Practical heuristics to improve precision for erroneous function argument swapping detection in C and C plus
    Szalay, Richard
    Sinkovics, Abel
    Porkolab, Zoltan
    JOURNAL OF SYSTEMS AND SOFTWARE, 2021, 181
  • [43] Anaerobic glycolysis protection against MPP plus toxicity in C-6 glioma cells
    Williams, Z
    Chen, H
    Soliman, KFA
    FASEB JOURNAL, 2005, 19 (04): : A488 - A488
  • [44] Patient (pt)-reported function and symptoms in APHINITY: A randomized comparison of chemotherapy (C) plus trastuzumab (H) plus placebo (Pla) versus C plus H plus pertuzumab (P) as adjuvant therapy in pts with HER2-positive early breast cancer (EBC).
    Baselga, Jose
    Petersen, Jennifer A.
    Clark, Emma
    Barton, Claire
    Restuccia, Eleonora
    Procter, Marion Jennifer
    Sonnenblick, Amir
    Fumagalli, Debora
    Parlier, Damian
    Arahmani, Amal
    Viale, Giuseppe
    Reaby, Linda L.
    Frank, Elizabeth
    Gelber, Richard D.
    Piccart-Gebhart, Martine J.
    Bines, Jose
    von Minckwitz, Gunter
    Gasper, Sabina McGarrahan
    JOURNAL OF CLINICAL ONCOLOGY, 2018, 36 (15)
  • [45] Algorithm 987: MANBIS-A C plus plus Mathematical Software Package for Locating and Computing Efficiently Many Roots of a Function: Theoretical Issues
    Zottou, Dimitra-Nefeli A.
    Kavvadias, Dimitris J.
    Makri, Frosso S.
    Vrahatis, Michael N.
    ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2018, 44 (03):
  • [46] Algorithm 992: An OpenGL- and C plus plus -based Function Library for Curve and Surface Modeling in a Large Class of Extended Chebyshev Spaces
    Roth, Agoston
    ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2019, 45 (01):
  • [47] RATIONAL PERIODIC POINTS OF THE QUADRADIT FUNCTION QC(X)=X(2) PLUS C
    WALDE, R
    RUSSO, P
    AMERICAN MATHEMATICAL MONTHLY, 1994, 101 (04): : 318 - 331
  • [48] Remark on Algorithm 992: An OpenGL- and C plus plus -based Function Library for Curve and Surface Modeling in a Large Class of Extended Chebyshev Spaces
    Roth, Agoston
    ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE, 2021, 47 (04):
  • [49] Enabling Service Level Agreement-Differentiated Protection in C plus L Multiband Optical Networks
    Hosseini, Soheil
    De Miguel, Ignacio
    Merayo, Noemi
    De Dios, Oscar Gonzalez
    Lorenzo, Ruben M.
    Barroso, Ramon J. Duran
    IEEE OPEN JOURNAL OF THE COMMUNICATIONS SOCIETY, 2025, 6 : 316 - 331
  • [50] A Low-Level Virtual Machine Just-In-Time Prototype for Running an Energy-Saving Hardware-Aware Mapping Algorithm on C/C plus plus Applications That Use Pthreads
    Stirb, Iulia
    Gillich, Gilbert-Rainer
    ENERGIES, 2023, 16 (19)