Evaluation of Static Vulnerability Detection Tools With Java']Java Cryptographic API Benchmarks

被引:15
|
作者
Afrose, Sharmin [1 ]
Xiao, Ya [1 ]
Rahaman, Sazzadur [2 ]
Miller, Barton P. P. [3 ]
Yao, Danfeng [1 ]
机构
[1] Virginia Tech, Dept Comp Sci, Blacksburg, VA 24060 USA
[2] Univ Arizona, Dept Comp Sci, Tucson, AZ 85721 USA
[3] Univ Wisconsin Madison, Comp Sci Dept, Madison, WI 53706 USA
基金
美国国家科学基金会;
关键词
Cryptographic API misuses; benchmark; !text type='Java']Java[!/text;
D O I
10.1109/TSE.2022.3154717
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Several studies showed that misuses of cryptographic APIs are common in real-world code (e.g., Apache projects and Android apps). There exist several open-sourced and commercial security tools that automatically screen Java programs to detect misuses. To compare their accuracy and security guarantees, we develop two comprehensive benchmarks named CryptoAPI-Bench and ApacheCryptoAPI-Bench. CryptoAPI-Bench consists of 181 unit test cases that cover basic cases, as well as complex cases, including interprocedural, field sensitive, multiple class test cases, and path sensitive data flow of misuse cases. The benchmark also includes correct cases for testing false-positive rates. The ApacheCryptoAPI-Bench consists of 121 cryptographic cases from 10 Apache projects. We evaluate four tools, namely, SpotBugs, CryptoGuard, CrySL, and another tool (anonymous) using both benchmarks. We present their performance and comparative analysis. The ApacheCryptoAPI-Bench also examines the scalability of the tools. Our benchmarks are useful for advancing state-of-the-art solutions in the space of misuse detection.
引用
收藏
页码:485 / 497
页数:13
相关论文
共 50 条
  • [1] Automatic Detection of Java']Java Cryptographic API Misuses: Are We There Yet?
    Zhang, Ying
    Kabir, Md Mahir Asef
    Xiao, Ya
    Yao, Danfeng
    Meng, Na
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2023, 49 (01) : 288 - 303
  • [2] A Comprehensive Benchmark on Java']Java Cryptographic API Misuses
    Afrose, Sharmin
    Rahaman, Sazzadur
    Yao, Danfeng
    [J]. PROCEEDINGS OF THE TENTH ACM CONFERENCE ON DATA AND APPLICATION SECURITY AND PRIVACY, CODASPY 2020, 2020, : 177 - 178
  • [3] Static vulnerability detection in Java']Java service-oriented components
    Goichon, Francois
    Salagnac, Guillaume
    Parrend, Pierre
    Frenot, Stephane
    [J]. JOURNAL OF COMPUTER VIROLOGY AND HACKING TECHNIQUES, 2013, 9 (01): : 15 - 26
  • [4] CRYPTOAPI-BENCH: A Comprehensive Benchmark on Java']Java Cryptographic API Misuses
    Afrose, Sharmin
    Rahaman, Sazzadur
    Yao, Danfeng
    [J]. 2019 IEEE SECURE DEVELOPMENT (SECDEV 2019), 2019, : 49 - 61
  • [5] Comparison and Evaluation on Static Application Security Testing (SAST) Tools for Java']Java
    Li, Kaixuan
    Chen, Sen
    Fan, Lingling
    Feng, Ruitao
    Liu, Han
    Liu, Chengwei
    Liu, Yang
    Chen, Yixiang
    [J]. PROCEEDINGS OF THE 31ST ACM JOINT MEETING EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, ESEC/FSE 2023, 2023, : 921 - 933
  • [6] Bug detection in Java']Java code: An extensive evaluation of static analysis tools using Juliet Test Suites
    Amankwah, Richard
    Chen, Jinfu
    Song, Heping
    Kudjo, Patrick Kwaku
    [J]. SOFTWARE-PRACTICE & EXPERIENCE, 2023, 53 (05): : 1125 - 1143
  • [7] Detecting Java']Java Theft Based on Static API Trace Birthmark
    Park, Heewan
    Choi, Seokwoo
    Lim, Hyun-il
    Han, Taisook
    [J]. ADVANCES IN INFORMATION AND COMPUTER SECURITY, PROCEEDINGS, 2008, 5312 : 121 - 135
  • [8] Comprehensive Evaluation of Static Analysis Tools for Their Performance in Finding Vulnerabilities in Java']Java Code
    Alqaradaghi, Midya
    Kozsik, Tamas
    [J]. IEEE ACCESS, 2024, 12 : 55824 - 55842
  • [9] Static deadlock detection for Java']Java libraries
    Williams, A
    Thies, W
    Ernst, MD
    [J]. ECOOP 2005 - OBJECT-ORIENTED PROGRAMMING, PROCEEDINGS, 2005, 3586 : 602 - 629
  • [10] Effective static race detection for Java']Java
    Naik, Mayur
    Aiken, Alex
    Whaley, John
    [J]. ACM SIGPLAN NOTICES, 2006, 41 (06) : 308 - 319