The Secret Life of CVEs - code and dataset
收藏资源简介:
The Secret Life of CVEs - code and dataset. <br> Code is also available on https://github.com/ncusi/secret_life_of_CVEs <br> Code requires python 3 to run. Results of each script are saved in data directory, files without extension are pandas dataframes saved with parquet. <br> To replicate the results only, without recreating all dataset files use Jupyter notebooks from "notebooks" directory. <br> To recreate data extraction from WoC servers: Run "projects_stats/with_CVS_in_commit_message_ignore_case.sh" on WoC servers Run "cat search.CVE_in_commit_message_ignore_case.lstCmt_9.out |cut -d';' -f1 | ~/lookup/getValues c2P 1 > projects_with_CVE_fix.txt" on WoC servers Run "cve_search_parser.py search.CVE_in_commit_message.lstCmt_9.out projects_with_CVE_fix.txt cve_df_filename" on WoC servers Copy the result cve_df_filename to local machine and replace cve_df_filename in data folder To recreate data processing and filtering on local machine use "dvc repro" in main directory, which will run all scripts according to "dvc.yaml", replacing data folder content when needed.
《通用漏洞披露项的隐秘世界》(The Secret Life of CVEs):代码与数据集。<br>相关代码可通过https://github.com/ncusi/secret_life_of_CVEs 获取。<br>本代码需基于Python 3运行。<br>各脚本的运行结果均保存至data目录,无扩展名的文件为采用Parquet格式存储的Pandas数据框。<br>若仅需复现实验结果而无需重新生成全部数据集文件,可使用"notebooks"目录下的Jupyter Notebook文件。<br>若需从WoC服务器复现数据提取流程,请执行以下操作:<br>1. 在WoC服务器上运行脚本`projects_stats/with_CVS_in_commit_message_ignore_case.sh`<br>2. 在WoC服务器上执行命令:`cat search.CVE_in_commit_message_ignore_case.lstCmt_9.out |cut -d';' -f1 | ~/lookup/getValues c2P 1 > projects_with_CVE_fix.txt`<br>3. 在WoC服务器上执行命令:`cve_search_parser.py search.CVE_in_commit_message.lstCmt_9.out projects_with_CVE_fix.txt cve_df_filename`<br>4. 将生成的结果文件`cve_df_filename`复制至本地,并替换data目录下的同名文件。<br>若需在本地复现数据处理与过滤流程,可在主目录下执行`dvc repro`命令,该命令将依据`dvc.yaml`运行全部脚本,并按需更新data目录中的文件内容。




