Today's cat is tomorrow's dog: accounting for time-based changes in the labels of ML vulnerability detection approaches (Replication Package Part 2: Linux dataset)
收藏资源简介:
The Replication Package of "Today's cat is tomorrow's dog: accounting for time-based changes in the labels of ML vulnerability detection approaches" Part 2 (LINUX Dataset) This repository includes: Code.zip that contains the codes to replicate some parts of this study:a. 1_generate_datasets implements our methodology to generate the datasets.b. 2_run_models runs the ML models during the evaluation.c. 3_result_replication generates charts presented in the paper from the ML evaluation results. Datasets.zip that contain 2 folders:a. original datasets: 1 from NVD Vuldeepecker and 3 extracted from BigVul. b. LINUX datasets: train, validation, test sets for each time of observation extracted using our methodology from BigVul dataset for project linux. Pretrained-models.zip that we generated during our evaluation (3 test results for each time point in the timeline [2011-2019]). Results.zip of our evaluation, the folder ALL contains the overall results and other folders are results by model. Documentations INSTALL.pdf : how to install the codes README.pdf: readme file REQUIREMENTS.pdf: hardware and software requirements STATUS.pdf : status for artifact submission LICENSE.pdf: the license of this artifact PAPER.pdf: the camera-ready version of the paper UPDATED version 4- added a GLOBAL_README.md which contains the 3 stages and how they are connected to each other- updated LineVul.ipynb: import AdamW from torch.optim instead of transformers- updated README.md in Code2Vec with the prerequisites of Java to run gradlew for astminer UPDATED version 5- updated CodeBert.ipynb: import AdamW from torch.optim instead of transformers Please refer to the following repositories for the other datasets and pre-trained models: - Part 1 NVD Vuldeeepecker : https://doi.org/10.5281/zenodo.8207883 - Part 3 OPENSSL : https://doi.org/10.5281/zenodo.10966117 - Part 4 POPPLER : https://doi.org/10.5281/zenodo.14713143 This work was partly funded by the EU under the H2020 Program AssureMOSS (Grant n. 952647) and the Horizon Europe Program Sec4AI4Sec (Grant n. 101120393), by the Italian Ministry of University and Research (MUR) under the P.N.R.R. – NextGenerationEU grant n.\ PE00000014 (SERICS subproject COVERT), and by the Dutch Research Council (NWO) under the grant NWA.1215.18.006 (Theseus) and grant KIC1.VE01.20.004 (HEWSTI).
《今日之猫,明日之犬:机器学习漏洞检测方法标签的时间性变化考量》复现套件(第二部分:Linux数据集) 本仓库包含以下内容: 1. Code.zip:包含可复现本研究部分内容的代码,具体如下: a. 1_generate_datasets:实现本研究生成数据集的方法论流程 b. 2_run_models:在评估阶段运行机器学习模型 c. 3_result_replication:基于机器学习评估结果,生成论文中展示的各类图表 2. Datasets.zip:包含2个目录,具体如下: a. 原始数据集:1份取自NVD Vuldeepecker,3份从BigVul数据集抽取 b. Linux数据集:针对Linux项目,基于本研究提出的方法论从BigVul数据集中提取的各观测时间点对应的训练集、验证集与测试集 3. Pretrained-models.zip:本研究评估阶段生成的预训练模型(对应时间线[2011-2019]中每个时间点的3组测试结果) 4. Results.zip:本研究的评估结果,其中ALL目录包含整体评估结果,其余目录为按模型分类的单项评估结果 ### 文档文件 - INSTALL.pdf:代码安装指南 - README.pdf:项目说明文档 - REQUIREMENTS.pdf:硬件与软件环境要求说明 - STATUS.pdf:工件提交状态说明 - LICENSE.pdf:本工件的许可协议文本 - PAPER.pdf:论文的最终定稿版本 ### 更新日志 #### 更新版本4 - 新增GLOBAL_README.md,其中涵盖了本研究的3个执行阶段及其相互关联方式 - 更新LineVul.ipynb:将AdamW的导入来源从transformers库调整为torch.optim - 更新Code2Vec目录下的README.md:补充运行gradlew与astminer所需的Java前置依赖项 #### 更新版本5 - 更新CodeBert.ipynb:将AdamW的导入来源从transformers库调整为torch.optim 其余数据集与预训练模型可参考以下仓库获取: - 第一部分NVD Vuldeepecker:https://doi.org/10.5281/zenodo.8207883 - 第三部分OPENSSL:https://doi.org/10.5281/zenodo.10966117 - 第四部分POPPLER:https://doi.org/10.5281/zenodo.14713143 本研究部分受欧盟H2020计划AssureMOSS项目(资助编号:952647)与地平线欧洲计划Sec4AI4Sec项目(资助编号:101120393)、意大利大学与研究部(MUR)根据《国家复苏与韧性计划(P.N.R.R.)– 下一代欧盟》资助的项目(编号PE00000014,SERICS子项目COVERT),以及荷兰研究委员会(NWO)资助的NWA.1215.18.006(Theseus项目)与KIC1.VE01.20.004(HEWSTI项目)支持。



