SQLIFIX: Learning Based Approach to Fix SQL Injection Vulnerabilities in Source Code

被引:2
|
作者
Siddiq, Mohammed Latif [1 ]
Jahin, Md Rezwanur Rahman [1 ]
Ul Islam, Mohammad Rafid [1 ]
Shahriyar, Rifat [1 ]
Iqbal, Anindya [1 ]
机构
[1] Bangladesh Univ Engn & Technol, Dhaka, Bangladesh
关键词
SQL Injection; Prepared Statement; Automatic Fix;
D O I
10.1109/SANER50967.2021.00040
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
SQL Injection attack is one of the oldest yet effective attacks for web applications. Even in 2020, applications are vulnerable to SQL Injection attacks. The developers are supposed to take precautions such as parameterizing SQL queries, escaping special characters, etc. However, developers, especially inexperienced ones, often fail to comply with such guidelines. There are quite a few SQL Injection detection tools to expose any unattended SQL Injection vulnerability in source code. However, to the best of our knowledge, very few works have been done to suggest a fix of these vulnerabilities in the source code. We have developed a learning-based approach that prepares abstraction of SQL Injection vulnerable codes from training dataset and clusters them using hierarchical clustering. The test samples are matched with a cluster of similar samples and a fix suggestion is generated. We have developed a manually validated training and test dataset from real-world projects of Java and PHP to evaluate our language-agnostic approach. The results establish the superiority of our technique over comparable techniques. The code and dataset are released publicly to encourage reproduction.
引用
收藏
页码:354 / 364
页数:11
相关论文
共 50 条
  • [1] Source Code Patterns of SQL Injection Vulnerabilities
    Schuckert, Felix
    Katt, Basel
    Langweg, Hanno
    PROCEEDINGS OF THE 12TH INTERNATIONAL CONFERENCE ON AVAILABILITY, RELIABILITY AND SECURITY (ARES 2017), 2017,
  • [2] A Machine Learning based Approach to Identify SQL Injection Vulnerabilities
    Zhang, Kevin
    34TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2019), 2019, : 1286 - 1288
  • [3] An Improved Approach for SQL Injection Vulnerabilities Detection
    Zhang, Zongzhi
    Wen, Qiaoyan
    Zhang, Zhao
    INFORMATION TECHNOLOGY APPLICATIONS IN INDUSTRY, PTS 1-4, 2013, 263-266 : 3017 - 3020
  • [4] A Mutation Approach of Detecting SQL Injection Vulnerabilities
    Huang, Yanyu
    Fu, Chuan
    Chen, Xuan
    Guo, Hao
    He, Xiaoyu
    Li, Jin
    Liu, Zheli
    CLOUD COMPUTING AND SECURITY, PT II, 2017, 10603 : 175 - 188
  • [5] A Rejection-Based Approach for Detecting SQL Injection Vulnerabilities in Web Applications
    Saoudi, Lalia
    Adi, Kamel
    Boudraa, Younes
    FOUNDATIONS AND PRACTICE OF SECURITY, FPS 2019, 2020, 12056 : 379 - 386
  • [6] Insecurity Refactoring: Automated Injection of Vulnerabilities in Source Code
    Schuckert, Felix
    Katt, Basel
    Langweg, Hanno
    COMPUTERS & SECURITY, 2023, 128
  • [7] Code-motion for API migration: Fixing SQL injection vulnerabilities in Java
    Abadi, Aharon
    Feldman, Yishai A.
    Shomrat, Mati
    WRT 2011 - Proceedings of the 4th Workshop on Refactoring Tools, co-located with ICSE 2011, 2011, : 1 - 7
  • [8] Formal Analysis of Vulnerabilities of Web Applications Based on SQL Injection
    De Meo, Federico
    Rocchetto, Marco
    Vigano, Luca
    SECURITY AND TRUST MANAGEMENT, STM 2016, 2016, 9871 : 179 - 195
  • [9] Security Testing of Web Applications: A Search-Based Approach for Detecting SQL Injection Vulnerabilities
    Liu, Muyang
    Li, Ke
    Chen, Tao
    PROCEEDINGS OF THE 2019 GENETIC AND EVOLUTIONARY COMPUTATION CONFERENCE COMPANION (GECCCO'19 COMPANION), 2019, : 417 - 418
  • [10] Detecting Vulnerabilities in Source Code Using Machine Learning
    Hany, Omar
    Abu-Elkheir, Mervat
    PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON APPLIED CYBER SECURITY (ACS) 2021, 2022, 378 : 35 - 41