POLYFUZZ: Holistic Greybox Fuzzing of Multi-Language Systems

被引:0
|
作者
Li, Wen [1 ]
Ruan, Jinyang [1 ]
Yi, Guangbei [1 ]
Cheng, Long [2 ]
Luo, Xiapu [3 ]
Cai, Haipeng [1 ]
机构
[1] Washington State Univ, Pullman, WA 99164 USA
[2] Clemson Univ, Clemson, SC 29631 USA
[3] Hong Kong Polytech Univ, Hong Kong, Peoples R China
来源
PROCEEDINGS OF THE 32ND USENIX SECURITY SYMPOSIUM | 2023年
基金
美国国家科学基金会;
关键词
D O I
暂无
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
While offering many advantages during software process, the practice of using multiple programming languages in constructing one software system also introduces additional security vulnerabilities in the resulting code. As this practice becomes increasingly prevalent, securing multi-language systems is of pressing criticality. Fuzzing has been a powerful security testing technique, yet existing fuzzers are commonly limited to single-language software. In this paper, we present POLYFUZZ, a greybox fuzzer that holistically fuzzes a given multi-language system through cross-language coverage feedback and explicit modeling of the semantic relationships between (various segments of) program inputs and branch predicates across languages. POLYFUZZ is extensible for supporting multilingual code written in different language combinations and has been implemented for C, Python, Java, and their combinations. We evaluated POLYFUZZ versus state-of-the-art single-language fuzzers for these languages as baselines against 15 real-world multi-language systems and 15 single-language benchmarks. POLYFUZZ achieved 25.3-52.3% higher code coverage and found 1-10 more bugs than the baselines against the multilingual programs, and even 10-20% higher coverage against the single-language benchmarks. In total, POLYFUZZ has enabled the discovery of 12 previously unknown multilingual vulnerabilities and 2 single-language ones, with 5 CVEs assigned. Our results show great promises of POLYFUZZ for cross-language fuzzing, while justifying the strong need for holistic fuzzing against trivially applying single-language fuzzers to multi-language software.
引用
收藏
页码:1379 / 1396
页数:18
相关论文
共 50 条
  • [1] Greybox Fuzzing of Distributed Systems
    Meng, Ruijie
    Pirlea, George
    Roychoudhury, Abhik
    Sergey, Ilya
    PROCEEDINGS OF THE 2023 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, CCS 2023, 2023, : 1615 - 1629
  • [2] Program comprehension in multi-language systems
    Kullbach, B
    Winter, A
    Dahm, P
    Ebert, J
    FIFTH WORKING CONFERENCE ON REVERSE ENGINEERING, PROCEEDINGS, 1998, : 135 - 143
  • [3] Code Smells for Multi-language Systems
    Abidi, Mouna
    Grichi, Manel
    Khomh, Foutse
    Gueheneuc, Yann-Gael
    PROCEEDINGS OF THE 24TH EUROPEAN CONFERENCE ON PATTERN LANGUAGES OF PROGRAMS (EUROPLOP 2019), 2019,
  • [4] RLTG: Multi-targets directed greybox fuzzing
    He, Yubo
    Zhu, Yuefei
    PLOS ONE, 2023, 18 (04):
  • [5] Titan : Efficient Multi-target Directed Greybox Fuzzing
    Huang, Heqing
    Yao, Peisen
    Chiu, Hung-Chun
    Guo, Yiyuan
    Zhang, Charles
    45TH IEEE SYMPOSIUM ON SECURITY AND PRIVACY, SP 2024, 2024, : 1849 - 1864
  • [6] Anti-Patterns for Multi-language Systems
    Abidi, Mouna
    Khomh, Foutse
    Gueheneuc, Yann-Gael
    PROCEEDINGS OF THE 24TH EUROPEAN CONFERENCE ON PATTERN LANGUAGES OF PROGRAMS (EUROPLOP 2019), 2019,
  • [7] On Multi-language Abstraction Towards a Static Analysis of Multi-language Programs
    Buro, Samuele
    Crole, Roy L.
    Mastroeni, Isabella
    STATIC ANALYSIS (SAS 2020), 2020, 12389 : 310 - 332
  • [8] On the Impact of Inter-language Dependencies in Multi-language Systems
    Grichi, Manel
    Abidi, Mouna
    Jaafar, Fehmi
    Eghan, Ellis E.
    Adams, Bram
    2020 IEEE 20TH INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY, AND SECURITY (QRS 2020), 2020, : 509 - 509
  • [9] On multi-language abstraction: Towards a static analysis of multi-language programs
    Buro, Samuele
    Crole, Roy
    Mastroeni, Isabella
    FORMAL METHODS IN SYSTEM DESIGN, 2023, 65 (1) : 4 - 38
  • [10] Multi-language synchronization
    Ennals, Robert
    Gay, David
    PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2007, 4421 : 475 - +