SoK: Automated Vulnerability Repair: Methods, Tools, and Assessments
By: Yiwei Hu , Zhen Li , Kedie Shu and more
Potential Business Impact:
Fixes computer bugs automatically, saving time and effort.
The increasing complexity of software has led to the steady growth of vulnerabilities. Vulnerability repair investigates how to fix software vulnerabilities. Manual vulnerability repair is labor-intensive and time-consuming because it relies on human experts, highlighting the importance of Automated Vulnerability Repair (AVR). In this SoK, we present the systematization of AVR methods through the three steps of AVR workflow: vulnerability analysis, patch generation, and patch validation. We assess AVR tools for C/C++ and Java programs as they have been widely studied by the community. Since existing AVR tools for C/C++ programs are evaluated with different datasets, which often consist of a few vulnerabilities, we construct the first C/C++ vulnerability repair benchmark dataset, dubbed Vul4C, which contains 144 vulnerabilities as well as their exploits and patches. We use Vul4C to evaluate seven AVR tools for C/C++ programs and use the third-party Vul4J dataset to evaluate two AVR tools for Java programs. We also discuss future research directions.
Similar Papers
SoK: Towards Effective Automated Vulnerability Repair
Cryptography and Security
Fixes computer bugs automatically.
Vul-R2: A Reasoning LLM for Automated Vulnerability Repair
Artificial Intelligence
Fixes computer bugs automatically using smart programs.
Semantics-Aligned, Curriculum-Driven, and Reasoning-Enhanced Vulnerability Repair Framework
Software Engineering
Fixes computer code errors more reliably.