Litcius/Paper detail

PatchDB: A Large-Scale Security Patch Dataset

Xinda Wang, Shu Wang, Pengbin Feng, Kun Sun, Sushil Jajodia

202158 citationsDOI

Abstract

Security patches, embedding both vulnerable code and the corresponding fixes, are of great significance to vulnerability detection and software maintenance. However, the existing patch datasets suffer from insufficient samples and low varieties. In this paper, we construct a large-scale patch dataset called PatchDB that consists of three components, namely, NVD-based dataset, wild-based dataset, and synthetic dataset. The NVD-based dataset is extracted from the patch hyperlinks indexed by the NVD. The wild-based dataset includes security patches that we collect from the commits on GitHub. To improve the efficiency of data collection and reduce the effort on manual verification, we develop a new nearest link search method to help find the most promising security patch candidates. Moreover, we provide a synthetic dataset that uses a new oversampling method to synthesize patches at the source code level by enriching the control flow variants of original patches. We conduct a set of studies to investigate the effectiveness of the proposed algorithms and evaluate the properties of the collected dataset. The experimental results show that PatchDB can help improve the performance of security patch identification.

Topics & Concepts

Computer scienceData miningOversamplingCode (set theory)EmbeddingScale (ratio)Set (abstract data type)SoftwareSource codeMachine learningArtificial intelligenceBandwidth (computing)Programming languagePhysicsComputer networkOperating systemQuantum mechanicsSoftware Engineering ResearchAdvanced Malware Detection TechniquesSoftware Testing and Debugging Techniques