Detecting API-Misuse Based on Pattern Mining via API Usage Graph with Parameters

被引:0
|
作者
Wu, Yulin [1 ]
Xu, Zhiwu [1 ]
Qin, Shengchao [2 ]
机构
[1] Shenzhen Univ, Coll Comp Sci & Software Engn, Shenzhen, Peoples R China
[2] Xidian Univ, Sch Comp Sci & Technol, Xian, Peoples R China
基金
中国国家自然科学基金;
关键词
API-Misuse Detection; API Pattern; Static Analysis;
D O I
10.1007/978-3-031-35257-7_21
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
API misuse is a common issue that can trigger software crashes, bugs, and vulnerabilities. To address this problem, researchers have proposed pattern-based violation detectors that automatically extract patterns from code. However, these detectors have demonstrated low precision in detecting API misuses. In this paper, we propose a novel API misuse detector. Our proposed detector initially extracts API usages from the code and represents them as API Usage Graphs with Parameters (AUGPs). Utilizing the association rule algorithm, it then mines the binary rules, which are subsequently employed to detect the possible violations. The experimental results show that, comparing against five state-of-the-art detectors on the public dataset MuBench, our detector achieves the highest precision (1x more precise than the second-best one) and the highest F1-score (50% higher than the second-best one).
引用
收藏
页码:344 / 363
页数:20
相关论文
共 50 条
  • [41] Categorizing and Recommending API Usage Patterns based on Degree Centralities and Pattern Distances
    Lee, Shin-Jie
    Su, Wu-Chen
    Huang, Chi-En
    You, Jie-Lin
    2016 INTERNATIONAL COMPUTER SYMPOSIUM (ICS), 2016, : 583 - 588
  • [42] Mining API usage change rules for software framework evolution
    Ping Yu
    Fei Yang
    Chun Cao
    Hao Hu
    Xiaoxing Ma
    Science China Information Sciences, 2018, 61
  • [43] Mining API usage change rules for software framework evolution
    Yu, Ping
    Yang, Fei
    Cao, Chun
    Hu, Hao
    Ma, Xiaoxing
    SCIENCE CHINA-INFORMATION SCIENCES, 2018, 61 (05)
  • [44] Mining unit test cases to synthesize API usage examples
    Ghafari, Mohammad
    Rubinov, Konstantin
    Pourhashem K, Mohammad Mehdi
    JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2017, 29 (12)
  • [45] Mining Complex Temporal API Usage Patterns: An Evolutionary Approach
    Huppe, Samuel
    Saied, Mohamed Aymen
    Sahraoui, Houari
    PROCEEDINGS OF THE 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C 2017), 2017, : 274 - 276
  • [46] Mining API usage change rules for software framework evolution
    Ping YU
    Fei YANG
    Chun CAO
    Hao HU
    Xiaoxing MA
    Science China(Information Sciences), 2018, 61 (05) : 104 - 106
  • [47] Graph Embedding Based API Graph Search and Recommendation
    Chun-Yang Ling
    Yan-Zhen Zou
    Ze-Qi Lin
    Bing Xie
    Journal of Computer Science and Technology, 2019, 34 : 993 - 1006
  • [48] A novel malware detection method based on API embedding and API parameters
    Bo Zhou
    Hai Huang
    Jun Xia
    Donghai Tian
    The Journal of Supercomputing, 2024, 80 : 2748 - 2766
  • [49] A novel malware detection method based on API embedding and API parameters
    Zhou, Bo
    Huang, Hai
    Xia, Jun
    Tian, Donghai
    JOURNAL OF SUPERCOMPUTING, 2024, 80 (02): : 2748 - 2766
  • [50] MisuseHint: A Service for API Misuse Detection Based on Building Knowledge Graph from Documentation and Codebase
    Liang, Qingmi
    Kuai, Zhirui
    Zhang, Yangqi
    Zhang, Zhiyang
    Kuang, Li
    Zhang, Lingyan
    2022 IEEE INTERNATIONAL CONFERENCE ON WEB SERVICES (IEEE ICWS 2022), 2022, : 246 - 255