There is a newer version of the record available.

Published 2023 | Version v3
Dataset Open

PatchDiscovery: Patch Presence Test for Identifying Binary Vulnerabilities Based on Key Basic Blocks

Authors/Creators

  • 1. Xi'an JiaoTong University

Description

PatchDiscovery: Patch Presence Test for Identifying Binary Vulnerabilities Based on Key Basic Blocks


The source code is structured in the following way:
1.    Preprocessing:PatchDiscovery preprocesses each input binary function (i.e., VF, PF and TF) by distilling each function's semantics into a CFG and applying
instruction normalization and simplification to deal with the syntax gaps on instructions. 
2.    PatchAnalysis: PatchDiscovery identifies the scope of patch in PF and the scope of vulnerability in VF and selects the key basic blocks in PF and VF as their signatures for patch presence discovery, respectively.
3.    PatchPresenceDscovery:PatchDiscovery determines whether a TF has been patched or not.

The dataset is structured in the following way:
1.  Bin:the compiled binaries 
2. _config.csv : There are four parts in the file, which are CVE id , the last vulnerable version , the first patched version , involved functions in order.
3. _func.csv : All involved functions in _config.cvs.
4. _version.csv : All binary versions to be analyzed.
5. gt.csv : optional , you can mark V and P for functions in target binary as ground truth.

Files

Dataset-1.zip

Files (2.0 GB)

Name Size Download all
md5:341a250cf6a2000dae506523ac9e3cc4
24.4 kB Preview Download
md5:97d6d4f1cae1fcacc6e7237de94c6ead
1.9 GB Preview Download
md5:664da83dfab4d9d6edf6911584d56fe9
33.1 MB Preview Download
md5:2138a3b7214c9aec499010ba6cff555d
68.1 MB Preview Download
md5:32f6341f7cfe57df4ce37b415e7694a2
57.2 kB Preview Download