diff --git a/prospector/evaluation/analyse.py b/prospector/evaluation/analyse.py index 9572dc86b..61b50f4aa 100644 --- a/prospector/evaluation/analyse.py +++ b/prospector/evaluation/analyse.py @@ -65,7 +65,7 @@ def analyse_prospector_reports(filename: str, selected_cves: str): dataset = load_dataset(file) # dataset = dataset[:100] # Actual line number in D53.csv -2 # dataset = dataset[198:199] # Actual line number in D53.csv -2 - if len(selected_cves) != 0: + if selected_cves != "all" and len(selected_cves) != 0: dataset = [c for c in dataset if c[0] in selected_cves] # Keep track of how many reports were attempted to be analysed diff --git a/prospector/evaluation/data/results/summary_execution_mvi_table.tex b/prospector/evaluation/data/results/summary_execution_mvi_table.tex index 12e81a305..35e8c3848 100644 --- a/prospector/evaluation/data/results/summary_execution_mvi_table.tex +++ b/prospector/evaluation/data/results/summary_execution_mvi_table.tex @@ -3,28 +3,28 @@ % \tiny \begin{tabular}{| l c c c c |} \rowcolor{gray!50} \textbf{Result} & \textbf{Without LLM} & \textbf{\%} & \textbf{With LLM} & \textbf{\%} \\ \hline - High confidence & 960 & 73.56 & 548 & 41.99 \\ + High confidence & 960 & 73.56 & 548 & 41.99 \\ \rowcolor{gray!20} \begin{tabular}{l} \quad Commit in reference* \\ - \end{tabular} & 847 & 88.23 & 413 & 75.36 \\ + \end{tabular} & 847 & 88.23 & 413 & 75.36 \\ \rowcolor{gray!20} \begin{tabular}{l} \quad CVE ID in message* \\ - \end{tabular} & 162 & 16.88 & 69 & 12.59 \\ + \end{tabular} & 162 & 16.88 & 69 & 12.59 \\ \rowcolor{gray!20} \begin{tabular}{l} \quad CVE ID in Issue* \\ - \end{tabular} & 37 & 3.85 & 12 & 2.19 \\ + \end{tabular} & 37 & 3.85 & 12 & 2.19 \\ \rowcolor{gray!20} \begin{tabular}{l} \quad Cross Reference* \\ - \end{tabular} & 339 & 35.31 & 135 & 24.64 \\ + \end{tabular} & 339 & 35.31 & 135 & 24.64 \\ \rowcolor{gray!20} \begin{tabular}{l} \quad Commit is Security Relevant* \\ - \end{tabular} & 0 & 0.0 & 488 & 37.39 \\ - Medium confidence & 179 & 13.72 & 18 & 1.38 \\ - Low confidence & 9 & 0.69 & 6 & 0.46 \\ - Not found (rank $> 10$) & 31 & 2.38 & 11 & 0.84 \\ - Not reported & 103 & 7.89 & 44 & 3.37 \\ - False Positive & 23 & 1.76 & 678 & 51.95 \\ - Aborted (due to exceeding candidate limit) & 14 & 1.07 & 14 & 1.07 \\ + \end{tabular} & 0 & 0.0 & 488 & 37.39 \\ + Medium confidence & 179 & 13.72 & 18 & 1.38 \\ + Low confidence & 9 & 0.69 & 6 & 0.46 \\ + Not found (rank $> 10$) & 31 & 2.38 & 11 & 0.84 \\ + Not reported & 103 & 7.89 & 44 & 3.37 \\ + False Positive & 23 & 1.76 & 678 & 51.95 \\ + Aborted (due to exceeding candidate limit) & 14 & 1.07 & 14 & 1.07 \\ \textbf{Total} & \textbf{1305} & & \textbf{1305} & \\ \hline \end{tabular} \caption{Prospector Evaluation Results (* percentage of high confidence category)} diff --git a/prospector/evaluation/data/results/summary_execution_mvi_with_llm.json b/prospector/evaluation/data/results/summary_execution_mvi_with_llm.json index a5e22b24a..874c41197 100644 --- a/prospector/evaluation/data/results/summary_execution_mvi_with_llm.json +++ b/prospector/evaluation/data/results/summary_execution_mvi_with_llm.json @@ -2480,6 +2480,2487 @@ "CVE-2019-10154" ] } + }, + { + "timestamp": "30-08-2024, 09:37", + "results": { + "high": [ + "CVE-2010-5312", + "CVE-2011-1950", + "CVE-2011-2765", + "CVE-2011-3186", + "CVE-2011-3923", + "CVE-2011-4030", + "CVE-2011-4461", + "CVE-2012-1109", + "CVE-2012-1176", + "CVE-2012-2378", + "CVE-2012-2417", + "CVE-2012-3366", + "CVE-2012-3408", + "CVE-2012-3458", + "CVE-2012-3536", + "CVE-2012-5812", + "CVE-2012-6550", + "CVE-2013-0256", + "CVE-2013-0294", + "CVE-2013-1607", + "CVE-2013-1800", + "CVE-2013-1801", + "CVE-2013-1879", + "CVE-2013-1880", + "CVE-2013-2013", + "CVE-2013-2035", + "CVE-2013-2172", + "CVE-2013-2191", + "CVE-2013-3300", + "CVE-2013-4111", + "CVE-2013-4116", + "CVE-2013-4316", + "CVE-2013-4413", + "CVE-2013-4562", + "CVE-2013-4701", + "CVE-2013-6465", + "CVE-2013-7378", + "CVE-2013-7459", + "CVE-2014-0072", + "CVE-2014-0073", + "CVE-2014-0120", + "CVE-2014-0121", + "CVE-2014-0160", + "CVE-2014-0177", + "CVE-2014-1202", + "CVE-2014-1403", + "CVE-2014-1604", + "CVE-2014-1904", + "CVE-2014-2525", + "CVE-2014-3120", + "CVE-2014-3250", + "CVE-2014-3488", + "CVE-2014-3576", + "CVE-2014-3577", + "CVE-2014-3579", + "CVE-2014-3599", + "CVE-2014-3612", + "CVE-2014-3741", + "CVE-2014-3995", + "CVE-2014-4657", + "CVE-2014-6394", + "CVE-2014-7192", + "CVE-2014-7193", + "CVE-2014-7809", + "CVE-2014-8115", + "CVE-2014-8152", + "CVE-2014-8681", + "CVE-2014-8682", + "CVE-2014-9130", + "CVE-2014-9489", + "CVE-2014-9682", + "CVE-2014-9721", + "CVE-2014-9970", + "CVE-2015-0276", + "CVE-2015-0838", + "CVE-2015-0846", + "CVE-2015-1326", + "CVE-2015-1772", + "CVE-2015-1782", + "CVE-2015-1838", + "CVE-2015-3206", + "CVE-2015-3220", + "CVE-2015-4082", + "CVE-2015-4410", + "CVE-2015-4412", + "CVE-2015-4619", + "CVE-2015-5081", + "CVE-2015-5147", + "CVE-2015-6524", + "CVE-2015-6584", + "CVE-2015-7294", + "CVE-2015-7337", + "CVE-2015-7541", + "CVE-2015-7809", + "CVE-2015-8309", + "CVE-2015-8310", + "CVE-2015-8747", + "CVE-2015-8814", + "CVE-2015-8854", + "CVE-2015-8862", + "CVE-2015-9235", + "CVE-2015-9241", + "CVE-2016-0750", + "CVE-2016-1505", + "CVE-2016-2166", + "CVE-2016-2537", + "CVE-2016-3114", + "CVE-2016-3693", + "CVE-2016-3720", + "CVE-2016-4000", + "CVE-2016-4442", + "CVE-2016-4562", + "CVE-2016-4563", + "CVE-2016-4564", + "CVE-2016-4974", + "CVE-2016-4977", + "CVE-2016-5007", + "CVE-2016-5104", + "CVE-2016-5180", + "CVE-2016-5431", + "CVE-2016-5697", + "CVE-2016-5841", + "CVE-2016-5842", + "CVE-2016-5851", + "CVE-2016-6298", + "CVE-2016-7528", + "CVE-2016-8738", + "CVE-2016-9298", + "CVE-2016-9909", + "CVE-2016-9910", + "CVE-2016-10149", + "CVE-2016-10173", + "CVE-2016-10345", + "CVE-2016-10522", + "CVE-2016-10524", + "CVE-2016-10528", + "CVE-2016-10529", + "CVE-2016-10531", + "CVE-2016-10536", + "CVE-2016-10540", + "CVE-2016-10544", + "CVE-2016-10554", + "CVE-2016-10556", + "CVE-2016-10558", + "CVE-2016-10559", + "CVE-2016-10560", + "CVE-2016-10575", + "CVE-2016-10577", + "CVE-2016-10591", + "CVE-2016-10611", + "CVE-2016-10694", + "CVE-2016-10703", + "CVE-2016-10735", + "CVE-2016-1000236", + "CVE-2016-1000338", + "CVE-2016-1000340", + "CVE-2016-1000343", + "CVE-2016-1000344", + "CVE-2017-0904", + "CVE-2017-2617", + "CVE-2017-2652", + "CVE-2017-2667", + "CVE-2017-2809", + "CVE-2017-3204", + "CVE-2017-4973", + "CVE-2017-5209", + "CVE-2017-5545", + "CVE-2017-5591", + "CVE-2017-5641", + "CVE-2017-5645", + "CVE-2017-5858", + "CVE-2017-5934", + "CVE-2017-5936", + "CVE-2017-5946", + "CVE-2017-7540", + "CVE-2017-7654", + "CVE-2017-7656", + "CVE-2017-7674", + "CVE-2017-8028", + "CVE-2017-8418", + "CVE-2017-8932", + "CVE-2017-9796", + "CVE-2017-11173", + "CVE-2017-11427", + "CVE-2017-11467", + "CVE-2017-11905", + "CVE-2017-11910", + "CVE-2017-12098", + "CVE-2017-12616", + "CVE-2017-12620", + "CVE-2017-12867", + "CVE-2017-12871", + "CVE-2017-13098", + "CVE-2017-14619", + "CVE-2017-14735", + "CVE-2017-15051", + "CVE-2017-15052", + "CVE-2017-15053", + "CVE-2017-15054", + "CVE-2017-15055", + "CVE-2017-15133", + "CVE-2017-15278", + "CVE-2017-15703", + "CVE-2017-15728", + "CVE-2017-15729", + "CVE-2017-15730", + "CVE-2017-15731", + "CVE-2017-15733", + "CVE-2017-15734", + "CVE-2017-15735", + "CVE-2017-15808", + "CVE-2017-15809", + "CVE-2017-15879", + "CVE-2017-15928", + "CVE-2017-16003", + "CVE-2017-16007", + "CVE-2017-16008", + "CVE-2017-16013", + "CVE-2017-16014", + "CVE-2017-16015", + "CVE-2017-16016", + "CVE-2017-16017", + "CVE-2017-16023", + "CVE-2017-16025", + "CVE-2017-16042", + "CVE-2017-16136", + "CVE-2017-16226", + "CVE-2017-16228", + "CVE-2017-16244", + "CVE-2017-16613", + "CVE-2017-16615", + "CVE-2017-16616", + "CVE-2017-16618", + "CVE-2017-16876", + "CVE-2017-16877", + "CVE-2017-16880", + "CVE-2017-17042", + "CVE-2017-18239", + "CVE-2017-18367", + "CVE-2017-1000188", + "CVE-2017-1000189", + "CVE-2017-1000228", + "CVE-2017-1000389", + "CVE-2017-1000486", + "CVE-2017-1000487", + "CVE-2017-1000491", + "CVE-2017-1001002", + "CVE-2017-1001003", + "CVE-2017-1001004", + "CVE-2017-1002150", + "CVE-2018-1098", + "CVE-2018-1099", + "CVE-2018-1260", + "CVE-2018-1261", + "CVE-2018-1263", + "CVE-2018-1309", + "CVE-2018-1320", + "CVE-2018-3712", + "CVE-2018-3714", + "CVE-2018-3715", + "CVE-2018-3721", + "CVE-2018-3726", + "CVE-2018-3731", + "CVE-2018-3732", + "CVE-2018-3733", + "CVE-2018-3740", + "CVE-2018-3741", + "CVE-2018-3750", + "CVE-2018-3759", + "CVE-2018-3769", + "CVE-2018-3774", + "CVE-2018-3778", + "CVE-2018-3786", + "CVE-2018-5968", + "CVE-2018-6333", + "CVE-2018-7260", + "CVE-2018-7408", + "CVE-2018-7560", + "CVE-2018-7651", + "CVE-2018-7753", + "CVE-2018-8013", + "CVE-2018-8016", + "CVE-2018-8128", + "CVE-2018-8177", + "CVE-2018-8178", + "CVE-2018-8381", + "CVE-2018-8390", + "CVE-2018-9109", + "CVE-2018-9110", + "CVE-2018-9206", + "CVE-2018-10092", + "CVE-2018-10094", + "CVE-2018-10095", + "CVE-2018-10188", + "CVE-2018-10366", + "CVE-2018-10903", + "CVE-2018-10936", + "CVE-2018-11093", + "CVE-2018-11771", + "CVE-2018-11798", + "CVE-2018-12043", + "CVE-2018-12418", + "CVE-2018-12541", + "CVE-2018-12557", + "CVE-2018-12615", + "CVE-2018-12976", + "CVE-2018-13447", + "CVE-2018-13448", + "CVE-2018-13449", + "CVE-2018-13450", + "CVE-2018-13797", + "CVE-2018-13818", + "CVE-2018-14041", + "CVE-2018-14637", + "CVE-2018-14718", + "CVE-2018-14719", + "CVE-2018-14720", + "CVE-2018-14721", + "CVE-2018-14840", + "CVE-2018-15178", + "CVE-2018-15531", + "CVE-2018-16329", + "CVE-2018-16459", + "CVE-2018-16462", + "CVE-2018-16470", + "CVE-2018-16472", + "CVE-2018-16490", + "CVE-2018-16492", + "CVE-2018-17104", + "CVE-2018-17187", + "CVE-2018-17193", + "CVE-2018-17194", + "CVE-2018-17195", + "CVE-2018-17197", + "CVE-2018-17419", + "CVE-2018-18389", + "CVE-2018-18476", + "CVE-2018-19048", + "CVE-2018-19184", + "CVE-2018-19360", + "CVE-2018-19361", + "CVE-2018-19362", + "CVE-2018-19992", + "CVE-2018-19993", + "CVE-2018-19994", + "CVE-2018-20028", + "CVE-2018-20059", + "CVE-2018-20433", + "CVE-2018-20594", + "CVE-2018-20595", + "CVE-2018-20677", + "CVE-2018-20801", + "CVE-2018-20835", + "CVE-2018-20962", + "CVE-2018-1000013", + "CVE-2018-1000014", + "CVE-2018-1000089", + "CVE-2018-1000119", + "CVE-2018-1000129", + "CVE-2018-1000134", + "CVE-2018-1000164", + "CVE-2018-1000518", + "CVE-2018-1000525", + "CVE-2018-1000531", + "CVE-2018-1000538", + "CVE-2018-1000620", + "CVE-2018-1000632", + "CVE-2018-1000805", + "CVE-2018-1000807", + "CVE-2018-1000808", + "CVE-2018-1000814", + "CVE-2018-1000843", + "CVE-2018-1000850", + "CVE-2018-1000888", + "CVE-2018-1002201", + "CVE-2018-1002207", + "CVE-2018-1002208", + "CVE-2018-1999024", + "CVE-2019-0911", + "CVE-2019-0912", + "CVE-2019-0917", + "CVE-2019-0922", + "CVE-2019-0924", + "CVE-2019-0925", + "CVE-2019-0933", + "CVE-2019-1052", + "CVE-2019-1062", + "CVE-2019-1092", + "CVE-2019-1103", + "CVE-2019-1106", + "CVE-2019-1107", + "CVE-2019-1139", + "CVE-2019-1195", + "CVE-2019-1196", + "CVE-2019-1197", + "CVE-2019-3564", + "CVE-2019-3826", + "CVE-2019-5413", + "CVE-2019-5484", + "CVE-2019-5884", + "CVE-2019-6798", + "CVE-2019-7164", + "CVE-2019-7548", + "CVE-2019-7617", + "CVE-2019-7722", + "CVE-2019-8331", + "CVE-2019-8457", + "CVE-2019-9212", + "CVE-2019-9658", + "CVE-2019-9844", + "CVE-2019-10131", + "CVE-2019-10157", + "CVE-2019-10217", + "CVE-2019-10240", + "CVE-2019-10241", + "CVE-2019-10248", + "CVE-2019-10642", + "CVE-2019-10643", + "CVE-2019-10682", + "CVE-2019-10745", + "CVE-2019-10748", + "CVE-2019-10749", + "CVE-2019-10750", + "CVE-2019-10751", + "CVE-2019-10752", + "CVE-2019-10760", + "CVE-2019-10762", + "CVE-2019-10764", + "CVE-2019-10767", + "CVE-2019-10776", + "CVE-2019-10778", + "CVE-2019-10780", + "CVE-2019-10781", + "CVE-2019-10787", + "CVE-2019-10792", + "CVE-2019-10793", + "CVE-2019-10795", + "CVE-2019-10797", + "CVE-2019-10799", + "CVE-2019-10867", + "CVE-2019-10904", + "CVE-2019-11272", + "CVE-2019-11358", + "CVE-2019-11512", + "CVE-2019-11514", + "CVE-2019-11767", + "CVE-2019-11768", + "CVE-2019-11777", + "CVE-2019-12277", + "CVE-2019-12402", + "CVE-2019-12404", + "CVE-2019-12407", + "CVE-2019-12616", + "CVE-2019-12741", + "CVE-2019-12814", + "CVE-2019-13127", + "CVE-2019-13135", + "CVE-2019-13173", + "CVE-2019-13209", + "CVE-2019-13295", + "CVE-2019-13574", + "CVE-2019-13644", + "CVE-2019-14540", + "CVE-2019-14668", + "CVE-2019-14669", + "CVE-2019-14671", + "CVE-2019-14672", + "CVE-2019-14751", + "CVE-2019-14806", + "CVE-2019-14837", + "CVE-2019-14862", + "CVE-2019-14863", + "CVE-2019-14893", + "CVE-2019-14980", + "CVE-2019-15481", + "CVE-2019-15532", + "CVE-2019-15657", + "CVE-2019-15658", + "CVE-2019-16197", + "CVE-2019-16317", + "CVE-2019-16318", + "CVE-2019-16335", + "CVE-2019-16676", + "CVE-2019-16761", + "CVE-2019-16762", + "CVE-2019-16763", + "CVE-2019-16766", + "CVE-2019-16769", + "CVE-2019-16771", + "CVE-2019-16778", + "CVE-2019-16779", + "CVE-2019-16784", + "CVE-2019-16785", + "CVE-2019-16786", + "CVE-2019-16789", + "CVE-2019-16792", + "CVE-2019-17267", + "CVE-2019-17496", + "CVE-2019-17513", + "CVE-2019-17531", + "CVE-2019-17541", + "CVE-2019-17592", + "CVE-2019-18622", + "CVE-2019-18656", + "CVE-2019-18848", + "CVE-2019-18857", + "CVE-2019-18874", + "CVE-2019-18889", + "CVE-2019-18978", + "CVE-2019-18981", + "CVE-2019-18982", + "CVE-2019-18985", + "CVE-2019-18986", + "CVE-2019-19010", + "CVE-2019-19212", + "CVE-2019-19275", + "CVE-2019-19507", + "CVE-2019-19576", + "CVE-2019-19619", + "CVE-2019-19687", + "CVE-2019-19703", + "CVE-2019-19794", + "CVE-2019-20330", + "CVE-2019-1000005", + "CVE-2019-1000021", + "CVE-2019-1010266", + "CVE-2019-1020012", + "CVE-2020-1747", + "CVE-2020-1928", + "CVE-2020-5219", + "CVE-2020-5224", + "CVE-2020-5227", + "CVE-2020-5229", + "CVE-2020-5232", + "CVE-2020-5236", + "CVE-2020-5249", + "CVE-2020-5390", + "CVE-2020-5529", + "CVE-2020-6836", + "CVE-2020-7597", + "CVE-2020-7981", + "CVE-2020-8125", + "CVE-2020-8131", + "CVE-2020-9283", + "CVE-2020-10236", + "CVE-2020-10591", + "CVE-2020-10672", + "CVE-2020-10673" + ], + "COMMIT_IN_REFERENCE": [ + "CVE-2010-5312", + "CVE-2011-2765", + "CVE-2011-3186", + "CVE-2011-4030", + "CVE-2011-4461", + "CVE-2012-1109", + "CVE-2012-1176", + "CVE-2012-2417", + "CVE-2012-3366", + "CVE-2012-3408", + "CVE-2012-3458", + "CVE-2012-6550", + "CVE-2013-0256", + "CVE-2013-0294", + "CVE-2013-1800", + "CVE-2013-1801", + "CVE-2013-2013", + "CVE-2013-2035", + "CVE-2013-2191", + "CVE-2013-3300", + "CVE-2013-4116", + "CVE-2013-4413", + "CVE-2013-4562", + "CVE-2013-4701", + "CVE-2013-6465", + "CVE-2013-7378", + "CVE-2013-7459", + "CVE-2014-0072", + "CVE-2014-0073", + "CVE-2014-0120", + "CVE-2014-0121", + "CVE-2014-0160", + "CVE-2014-0177", + "CVE-2014-1202", + "CVE-2014-1403", + "CVE-2014-1604", + "CVE-2014-1904", + "CVE-2014-3120", + "CVE-2014-3488", + "CVE-2014-3579", + "CVE-2014-3599", + "CVE-2014-3741", + "CVE-2014-3995", + "CVE-2014-4657", + "CVE-2014-6394", + "CVE-2014-7192", + "CVE-2014-7193", + "CVE-2014-8115", + "CVE-2014-8681", + "CVE-2014-8682", + "CVE-2014-9130", + "CVE-2014-9489", + "CVE-2014-9682", + "CVE-2014-9721", + "CVE-2015-0846", + "CVE-2015-1326", + "CVE-2015-1838", + "CVE-2015-3206", + "CVE-2015-3220", + "CVE-2015-4082", + "CVE-2015-4410", + "CVE-2015-4412", + "CVE-2015-4619", + "CVE-2015-5081", + "CVE-2015-5147", + "CVE-2015-6584", + "CVE-2015-7294", + "CVE-2015-7337", + "CVE-2015-7541", + "CVE-2015-7809", + "CVE-2015-8309", + "CVE-2015-8310", + "CVE-2015-8747", + "CVE-2015-8814", + "CVE-2015-9235", + "CVE-2015-9241", + "CVE-2016-0750", + "CVE-2016-1505", + "CVE-2016-2166", + "CVE-2016-2537", + "CVE-2016-3693", + "CVE-2016-3720", + "CVE-2016-4442", + "CVE-2016-4562", + "CVE-2016-4563", + "CVE-2016-4564", + "CVE-2016-5104", + "CVE-2016-5431", + "CVE-2016-5697", + "CVE-2016-5841", + "CVE-2016-5842", + "CVE-2016-5851", + "CVE-2016-6298", + "CVE-2016-7528", + "CVE-2016-9298", + "CVE-2016-9909", + "CVE-2016-9910", + "CVE-2016-10149", + "CVE-2016-10345", + "CVE-2016-10522", + "CVE-2016-10524", + "CVE-2016-10531", + "CVE-2016-10536", + "CVE-2016-10540", + "CVE-2016-10544", + "CVE-2016-10554", + "CVE-2016-10556", + "CVE-2016-10577", + "CVE-2016-10703", + "CVE-2016-1000236", + "CVE-2016-1000338", + "CVE-2016-1000340", + "CVE-2016-1000343", + "CVE-2016-1000344", + "CVE-2017-0904", + "CVE-2017-2809", + "CVE-2017-3204", + "CVE-2017-5209", + "CVE-2017-5545", + "CVE-2017-5591", + "CVE-2017-5645", + "CVE-2017-5934", + "CVE-2017-5936", + "CVE-2017-5946", + "CVE-2017-7540", + "CVE-2017-7654", + "CVE-2017-7656", + "CVE-2017-8028", + "CVE-2017-8418", + "CVE-2017-8932", + "CVE-2017-11173", + "CVE-2017-12098", + "CVE-2017-12867", + "CVE-2017-12871", + "CVE-2017-13098", + "CVE-2017-14619", + "CVE-2017-14735", + "CVE-2017-15051", + "CVE-2017-15052", + "CVE-2017-15053", + "CVE-2017-15054", + "CVE-2017-15055", + "CVE-2017-15133", + "CVE-2017-15278", + "CVE-2017-15728", + "CVE-2017-15729", + "CVE-2017-15730", + "CVE-2017-15731", + "CVE-2017-15733", + "CVE-2017-15734", + "CVE-2017-15735", + "CVE-2017-15808", + "CVE-2017-15809", + "CVE-2017-15879", + "CVE-2017-15928", + "CVE-2017-16003", + "CVE-2017-16008", + "CVE-2017-16013", + "CVE-2017-16014", + "CVE-2017-16015", + "CVE-2017-16016", + "CVE-2017-16017", + "CVE-2017-16023", + "CVE-2017-16025", + "CVE-2017-16042", + "CVE-2017-16136", + "CVE-2017-16226", + "CVE-2017-16228", + "CVE-2017-16244", + "CVE-2017-16613", + "CVE-2017-16615", + "CVE-2017-16616", + "CVE-2017-16618", + "CVE-2017-16876", + "CVE-2017-16877", + "CVE-2017-16880", + "CVE-2017-17042", + "CVE-2017-18239", + "CVE-2017-18367", + "CVE-2017-1000188", + "CVE-2017-1000189", + "CVE-2017-1000228", + "CVE-2017-1000486", + "CVE-2017-1000487", + "CVE-2017-1000491", + "CVE-2017-1001002", + "CVE-2017-1001003", + "CVE-2017-1001004", + "CVE-2017-1002150", + "CVE-2018-1099", + "CVE-2018-1320", + "CVE-2018-3712", + "CVE-2018-3715", + "CVE-2018-3721", + "CVE-2018-3726", + "CVE-2018-3732", + "CVE-2018-3733", + "CVE-2018-3740", + "CVE-2018-3741", + "CVE-2018-3750", + "CVE-2018-3759", + "CVE-2018-3769", + "CVE-2018-3774", + "CVE-2018-3778", + "CVE-2018-3786", + "CVE-2018-5968", + "CVE-2018-6333", + "CVE-2018-7260", + "CVE-2018-7408", + "CVE-2018-7560", + "CVE-2018-7651", + "CVE-2018-7753", + "CVE-2018-8016", + "CVE-2018-9109", + "CVE-2018-9110", + "CVE-2018-9206", + "CVE-2018-10092", + "CVE-2018-10094", + "CVE-2018-10095", + "CVE-2018-10188", + "CVE-2018-10366", + "CVE-2018-10903", + "CVE-2018-10936", + "CVE-2018-11771", + "CVE-2018-11798", + "CVE-2018-12043", + "CVE-2018-12418", + "CVE-2018-12541", + "CVE-2018-12557", + "CVE-2018-12615", + "CVE-2018-12976", + "CVE-2018-13447", + "CVE-2018-13448", + "CVE-2018-13449", + "CVE-2018-13450", + "CVE-2018-13797", + "CVE-2018-13818", + "CVE-2018-14041", + "CVE-2018-14718", + "CVE-2018-14719", + "CVE-2018-14720", + "CVE-2018-14721", + "CVE-2018-14840", + "CVE-2018-15178", + "CVE-2018-15531", + "CVE-2018-16329", + "CVE-2018-16470", + "CVE-2018-16472", + "CVE-2018-16492", + "CVE-2018-17104", + "CVE-2018-17187", + "CVE-2018-17419", + "CVE-2018-18389", + "CVE-2018-18476", + "CVE-2018-19048", + "CVE-2018-19184", + "CVE-2018-19360", + "CVE-2018-19361", + "CVE-2018-19362", + "CVE-2018-19992", + "CVE-2018-19993", + "CVE-2018-19994", + "CVE-2018-20059", + "CVE-2018-20433", + "CVE-2018-20594", + "CVE-2018-20595", + "CVE-2018-20677", + "CVE-2018-20801", + "CVE-2018-20835", + "CVE-2018-20962", + "CVE-2018-1000089", + "CVE-2018-1000119", + "CVE-2018-1000129", + "CVE-2018-1000134", + "CVE-2018-1000164", + "CVE-2018-1000518", + "CVE-2018-1000525", + "CVE-2018-1000531", + "CVE-2018-1000538", + "CVE-2018-1000620", + "CVE-2018-1000632", + "CVE-2018-1000805", + "CVE-2018-1000807", + "CVE-2018-1000808", + "CVE-2018-1000814", + "CVE-2018-1000843", + "CVE-2018-1000850", + "CVE-2018-1000888", + "CVE-2018-1002201", + "CVE-2018-1002207", + "CVE-2018-1999024", + "CVE-2019-3564", + "CVE-2019-3826", + "CVE-2019-5413", + "CVE-2019-5484", + "CVE-2019-5884", + "CVE-2019-6798", + "CVE-2019-7164", + "CVE-2019-7548", + "CVE-2019-8457", + "CVE-2019-9658", + "CVE-2019-10131", + "CVE-2019-10157", + "CVE-2019-10217", + "CVE-2019-10241", + "CVE-2019-10682", + "CVE-2019-10749", + "CVE-2019-10751", + "CVE-2019-10752", + "CVE-2019-10762", + "CVE-2019-10767", + "CVE-2019-10776", + "CVE-2019-10781", + "CVE-2019-10787", + "CVE-2019-10792", + "CVE-2019-10793", + "CVE-2019-10795", + "CVE-2019-10799", + "CVE-2019-10867", + "CVE-2019-11272", + "CVE-2019-11358", + "CVE-2019-11514", + "CVE-2019-11768", + "CVE-2019-11777", + "CVE-2019-12277", + "CVE-2019-12402", + "CVE-2019-12616", + "CVE-2019-12741", + "CVE-2019-12814", + "CVE-2019-13127", + "CVE-2019-13135", + "CVE-2019-13173", + "CVE-2019-13295", + "CVE-2019-13574", + "CVE-2019-13644", + "CVE-2019-14540", + "CVE-2019-14668", + "CVE-2019-14669", + "CVE-2019-14671", + "CVE-2019-14672", + "CVE-2019-14751", + "CVE-2019-14806", + "CVE-2019-14837", + "CVE-2019-14862", + "CVE-2019-14863", + "CVE-2019-14893", + "CVE-2019-14980", + "CVE-2019-15481", + "CVE-2019-15532", + "CVE-2019-16317", + "CVE-2019-16318", + "CVE-2019-16335", + "CVE-2019-16676", + "CVE-2019-16761", + "CVE-2019-16762", + "CVE-2019-16763", + "CVE-2019-16766", + "CVE-2019-16769", + "CVE-2019-16771", + "CVE-2019-16778", + "CVE-2019-16779", + "CVE-2019-16784", + "CVE-2019-16785", + "CVE-2019-16786", + "CVE-2019-16789", + "CVE-2019-16792", + "CVE-2019-17267", + "CVE-2019-17496", + "CVE-2019-17513", + "CVE-2019-17531", + "CVE-2019-17541", + "CVE-2019-17592", + "CVE-2019-18622", + "CVE-2019-18656", + "CVE-2019-18848", + "CVE-2019-18857", + "CVE-2019-18874", + "CVE-2019-18978", + "CVE-2019-18981", + "CVE-2019-18982", + "CVE-2019-18985", + "CVE-2019-18986", + "CVE-2019-19010", + "CVE-2019-19275", + "CVE-2019-19507", + "CVE-2019-19576", + "CVE-2019-19619", + "CVE-2019-19687", + "CVE-2019-19703", + "CVE-2019-19794", + "CVE-2019-20330", + "CVE-2019-1000005", + "CVE-2019-1000021", + "CVE-2019-1020012", + "CVE-2020-1747", + "CVE-2020-5219", + "CVE-2020-5224", + "CVE-2020-5227", + "CVE-2020-5229", + "CVE-2020-5232", + "CVE-2020-5236", + "CVE-2020-5249", + "CVE-2020-5390", + "CVE-2020-5529", + "CVE-2020-6836", + "CVE-2020-7597", + "CVE-2020-7981", + "CVE-2020-8131", + "CVE-2020-9283", + "CVE-2020-10236", + "CVE-2020-10591", + "CVE-2020-10672", + "CVE-2020-10673" + ], + "VULN_ID_IN_MESSAGE": [ + "CVE-2013-0256", + "CVE-2013-2191", + "CVE-2014-0160", + "CVE-2014-0177", + "CVE-2014-1403", + "CVE-2014-8152", + "CVE-2015-0276", + "CVE-2015-0838", + "CVE-2015-1326", + "CVE-2015-1782", + "CVE-2015-7541", + "CVE-2015-8309", + "CVE-2016-3114", + "CVE-2016-4974", + "CVE-2016-5180", + "CVE-2016-6298", + "CVE-2016-10173", + "CVE-2017-5934", + "CVE-2017-11427", + "CVE-2017-11905", + "CVE-2017-11910", + "CVE-2017-15133", + "CVE-2017-16613", + "CVE-2017-16876", + "CVE-2018-8128", + "CVE-2018-8177", + "CVE-2018-8178", + "CVE-2018-8381", + "CVE-2018-8390", + "CVE-2018-10092", + "CVE-2018-10094", + "CVE-2018-10095", + "CVE-2018-10936", + "CVE-2018-11093", + "CVE-2018-12541", + "CVE-2018-12976", + "CVE-2018-16470", + "CVE-2018-19992", + "CVE-2018-19993", + "CVE-2018-19994", + "CVE-2018-20028", + "CVE-2018-20433", + "CVE-2019-0911", + "CVE-2019-0912", + "CVE-2019-0917", + "CVE-2019-0922", + "CVE-2019-0924", + "CVE-2019-0925", + "CVE-2019-0933", + "CVE-2019-1052", + "CVE-2019-1062", + "CVE-2019-1092", + "CVE-2019-1103", + "CVE-2019-1106", + "CVE-2019-1107", + "CVE-2019-1139", + "CVE-2019-1195", + "CVE-2019-1196", + "CVE-2019-1197", + "CVE-2019-10642", + "CVE-2019-10643", + "CVE-2019-11512", + "CVE-2019-14751", + "CVE-2019-16784", + "CVE-2019-18622", + "CVE-2019-18848", + "CVE-2020-5219", + "CVE-2020-5390", + "CVE-2020-9283" + ], + "VULN_ID_IN_LINKED_ISSUE": [ + "CVE-2014-3579", + "CVE-2014-3612", + "CVE-2016-4974", + "CVE-2016-6298", + "CVE-2016-10173", + "CVE-2017-5946", + "CVE-2017-8028", + "CVE-2018-1320", + "CVE-2019-3826", + "CVE-2019-14863", + "CVE-2020-1747", + "CVE-2020-8131" + ], + "XREF_BUG": [ + "CVE-2013-1879", + "CVE-2013-1880", + "CVE-2014-3579", + "CVE-2016-2166", + "CVE-2017-15703", + "CVE-2018-1309", + "CVE-2018-1320", + "CVE-2018-8013", + "CVE-2018-8016", + "CVE-2018-11771", + "CVE-2018-17187", + "CVE-2018-17193", + "CVE-2018-17194", + "CVE-2018-17195", + "CVE-2020-1928", + "CVE-2012-1176", + "CVE-2013-4116", + "CVE-2014-3120", + "CVE-2014-6394", + "CVE-2014-9721", + "CVE-2015-4082", + "CVE-2015-7294", + "CVE-2015-8854", + "CVE-2016-3720", + "CVE-2016-5007", + "CVE-2016-6298", + "CVE-2016-9909", + "CVE-2016-9910", + "CVE-2016-10149", + "CVE-2016-10173", + "CVE-2017-2809", + "CVE-2017-5545", + "CVE-2017-5946", + "CVE-2017-7540", + "CVE-2017-8028", + "CVE-2017-8418", + "CVE-2017-8932", + "CVE-2017-12098", + "CVE-2017-14735", + "CVE-2017-15133", + "CVE-2017-15703", + "CVE-2017-15879", + "CVE-2017-16013", + "CVE-2017-16023", + "CVE-2017-16025", + "CVE-2017-16042", + "CVE-2017-16615", + "CVE-2017-16616", + "CVE-2017-16618", + "CVE-2017-18239", + "CVE-2018-1098", + "CVE-2018-1099", + "CVE-2018-1309", + "CVE-2018-3740", + "CVE-2018-3769", + "CVE-2018-3778", + "CVE-2018-3786", + "CVE-2018-5968", + "CVE-2018-7408", + "CVE-2018-7651", + "CVE-2018-7753", + "CVE-2018-9206", + "CVE-2018-10903", + "CVE-2018-12418", + "CVE-2018-12541", + "CVE-2018-13797", + "CVE-2018-14718", + "CVE-2018-14719", + "CVE-2018-14720", + "CVE-2018-14721", + "CVE-2018-14840", + "CVE-2018-15178", + "CVE-2018-17104", + "CVE-2018-17193", + "CVE-2018-17194", + "CVE-2018-17195", + "CVE-2018-17419", + "CVE-2018-18476", + "CVE-2018-19360", + "CVE-2018-19361", + "CVE-2018-19362", + "CVE-2018-20059", + "CVE-2018-20594", + "CVE-2018-20595", + "CVE-2018-20677", + "CVE-2018-20962", + "CVE-2018-1000164", + "CVE-2018-1000525", + "CVE-2018-1000531", + "CVE-2018-1000538", + "CVE-2018-1000620", + "CVE-2018-1000632", + "CVE-2018-1000805", + "CVE-2018-1000807", + "CVE-2018-1000808", + "CVE-2018-1000814", + "CVE-2018-1000843", + "CVE-2018-1002207", + "CVE-2018-1002208", + "CVE-2019-3826", + "CVE-2019-7164", + "CVE-2019-7548", + "CVE-2019-7722", + "CVE-2019-9658", + "CVE-2019-10217", + "CVE-2019-10248", + "CVE-2019-11358", + "CVE-2019-11777", + "CVE-2019-12814", + "CVE-2019-13644", + "CVE-2019-14540", + "CVE-2019-14668", + "CVE-2019-14669", + "CVE-2019-14671", + "CVE-2019-14672", + "CVE-2019-14862", + "CVE-2019-14863", + "CVE-2019-14893", + "CVE-2019-15481", + "CVE-2019-15532", + "CVE-2019-15658", + "CVE-2019-16335", + "CVE-2019-17267", + "CVE-2019-17531", + "CVE-2019-18874", + "CVE-2019-19507", + "CVE-2019-19703", + "CVE-2019-19794", + "CVE-2019-20330", + "CVE-2019-1000005", + "CVE-2020-1747", + "CVE-2020-1928", + "CVE-2020-8131", + "CVE-2020-10672", + "CVE-2020-10673" + ], + "COMMIT_IS_SECURITY_RELEVANT": [ + "CVE-2010-5312", + "CVE-2011-1950", + "CVE-2011-2765", + "CVE-2011-3186", + "CVE-2011-3923", + "CVE-2011-4030", + "CVE-2011-4461", + "CVE-2012-1176", + "CVE-2012-2378", + "CVE-2012-2417", + "CVE-2012-3366", + "CVE-2012-3408", + "CVE-2012-3458", + "CVE-2012-3536", + "CVE-2012-5812", + "CVE-2012-6550", + "CVE-2013-0256", + "CVE-2013-0294", + "CVE-2013-1607", + "CVE-2013-1800", + "CVE-2013-1801", + "CVE-2013-1879", + "CVE-2013-1880", + "CVE-2013-2013", + "CVE-2013-2172", + "CVE-2013-2191", + "CVE-2013-3300", + "CVE-2013-4111", + "CVE-2013-4116", + "CVE-2013-4316", + "CVE-2013-4413", + "CVE-2013-4562", + "CVE-2013-4701", + "CVE-2013-6465", + "CVE-2013-7378", + "CVE-2013-7459", + "CVE-2014-0072", + "CVE-2014-0073", + "CVE-2014-0120", + "CVE-2014-0121", + "CVE-2014-0160", + "CVE-2014-0177", + "CVE-2014-1403", + "CVE-2014-1604", + "CVE-2014-1904", + "CVE-2014-2525", + "CVE-2014-3120", + "CVE-2014-3250", + "CVE-2014-3488", + "CVE-2014-3576", + "CVE-2014-3577", + "CVE-2014-3579", + "CVE-2014-3612", + "CVE-2014-3741", + "CVE-2014-3995", + "CVE-2014-4657", + "CVE-2014-6394", + "CVE-2014-7192", + "CVE-2014-7193", + "CVE-2014-7809", + "CVE-2014-8152", + "CVE-2014-8681", + "CVE-2014-8682", + "CVE-2014-9130", + "CVE-2014-9489", + "CVE-2014-9682", + "CVE-2014-9721", + "CVE-2014-9970", + "CVE-2015-0276", + "CVE-2015-0838", + "CVE-2015-0846", + "CVE-2015-1326", + "CVE-2015-1772", + "CVE-2015-1782", + "CVE-2015-3206", + "CVE-2015-3220", + "CVE-2015-4082", + "CVE-2015-4412", + "CVE-2015-4619", + "CVE-2015-5081", + "CVE-2015-6524", + "CVE-2015-6584", + "CVE-2015-7294", + "CVE-2015-7541", + "CVE-2015-7809", + "CVE-2015-8309", + "CVE-2015-8310", + "CVE-2015-8747", + "CVE-2015-8814", + "CVE-2015-8854", + "CVE-2015-8862", + "CVE-2015-9235", + "CVE-2016-1505", + "CVE-2016-2166", + "CVE-2016-2537", + "CVE-2016-3114", + "CVE-2016-3693", + "CVE-2016-3720", + "CVE-2016-4000", + "CVE-2016-4562", + "CVE-2016-4563", + "CVE-2016-4564", + "CVE-2016-4974", + "CVE-2016-4977", + "CVE-2016-5104", + "CVE-2016-5180", + "CVE-2016-5431", + "CVE-2016-5697", + "CVE-2016-5841", + "CVE-2016-5842", + "CVE-2016-5851", + "CVE-2016-6298", + "CVE-2016-7528", + "CVE-2016-8738", + "CVE-2016-9909", + "CVE-2016-9910", + "CVE-2016-10149", + "CVE-2016-10173", + "CVE-2016-10345", + "CVE-2016-10522", + "CVE-2016-10524", + "CVE-2016-10528", + "CVE-2016-10529", + "CVE-2016-10531", + "CVE-2016-10536", + "CVE-2016-10540", + "CVE-2016-10544", + "CVE-2016-10554", + "CVE-2016-10556", + "CVE-2016-10558", + "CVE-2016-10559", + "CVE-2016-10560", + "CVE-2016-10575", + "CVE-2016-10577", + "CVE-2016-10591", + "CVE-2016-10611", + "CVE-2016-10694", + "CVE-2016-10703", + "CVE-2016-10735", + "CVE-2016-1000338", + "CVE-2016-1000340", + "CVE-2016-1000343", + "CVE-2016-1000344", + "CVE-2017-0904", + "CVE-2017-2617", + "CVE-2017-2652", + "CVE-2017-2667", + "CVE-2017-2809", + "CVE-2017-3204", + "CVE-2017-4973", + "CVE-2017-5209", + "CVE-2017-5545", + "CVE-2017-5591", + "CVE-2017-5641", + "CVE-2017-5645", + "CVE-2017-5858", + "CVE-2017-5934", + "CVE-2017-5936", + "CVE-2017-5946", + "CVE-2017-7540", + "CVE-2017-7654", + "CVE-2017-7656", + "CVE-2017-7674", + "CVE-2017-8028", + "CVE-2017-8418", + "CVE-2017-8932", + "CVE-2017-9796", + "CVE-2017-11173", + "CVE-2017-11427", + "CVE-2017-11467", + "CVE-2017-11905", + "CVE-2017-11910", + "CVE-2017-12098", + "CVE-2017-12616", + "CVE-2017-12620", + "CVE-2017-12867", + "CVE-2017-12871", + "CVE-2017-13098", + "CVE-2017-14619", + "CVE-2017-14735", + "CVE-2017-15051", + "CVE-2017-15054", + "CVE-2017-15055", + "CVE-2017-15133", + "CVE-2017-15278", + "CVE-2017-15728", + "CVE-2017-15729", + "CVE-2017-15730", + "CVE-2017-15731", + "CVE-2017-15733", + "CVE-2017-15734", + "CVE-2017-15735", + "CVE-2017-15808", + "CVE-2017-15809", + "CVE-2017-15928", + "CVE-2017-16003", + "CVE-2017-16007", + "CVE-2017-16008", + "CVE-2017-16013", + "CVE-2017-16014", + "CVE-2017-16015", + "CVE-2017-16016", + "CVE-2017-16017", + "CVE-2017-16025", + "CVE-2017-16042", + "CVE-2017-16226", + "CVE-2017-16228", + "CVE-2017-16244", + "CVE-2017-16613", + "CVE-2017-16615", + "CVE-2017-16616", + "CVE-2017-16618", + "CVE-2017-16876", + "CVE-2017-16880", + "CVE-2017-17042", + "CVE-2017-18239", + "CVE-2017-18367", + "CVE-2017-1000188", + "CVE-2017-1000189", + "CVE-2017-1000228", + "CVE-2017-1000389", + "CVE-2017-1000486", + "CVE-2017-1000487", + "CVE-2017-1000491", + "CVE-2017-1001002", + "CVE-2017-1001003", + "CVE-2017-1001004", + "CVE-2017-1002150", + "CVE-2018-1098", + "CVE-2018-1099", + "CVE-2018-1260", + "CVE-2018-1261", + "CVE-2018-1263", + "CVE-2018-1309", + "CVE-2018-1320", + "CVE-2018-3712", + "CVE-2018-3714", + "CVE-2018-3721", + "CVE-2018-3726", + "CVE-2018-3731", + "CVE-2018-3733", + "CVE-2018-3740", + "CVE-2018-3741", + "CVE-2018-3750", + "CVE-2018-3759", + "CVE-2018-3769", + "CVE-2018-3774", + "CVE-2018-3778", + "CVE-2018-3786", + "CVE-2018-5968", + "CVE-2018-6333", + "CVE-2018-7260", + "CVE-2018-7560", + "CVE-2018-7651", + "CVE-2018-7753", + "CVE-2018-8013", + "CVE-2018-8128", + "CVE-2018-8177", + "CVE-2018-8178", + "CVE-2018-8381", + "CVE-2018-8390", + "CVE-2018-9109", + "CVE-2018-9110", + "CVE-2018-9206", + "CVE-2018-10092", + "CVE-2018-10094", + "CVE-2018-10095", + "CVE-2018-10188", + "CVE-2018-10903", + "CVE-2018-11093", + "CVE-2018-11771", + "CVE-2018-11798", + "CVE-2018-12043", + "CVE-2018-12418", + "CVE-2018-12541", + "CVE-2018-12557", + "CVE-2018-12615", + "CVE-2018-12976", + "CVE-2018-13447", + "CVE-2018-13448", + "CVE-2018-13449", + "CVE-2018-13450", + "CVE-2018-13797", + "CVE-2018-14041", + "CVE-2018-14637", + "CVE-2018-14718", + "CVE-2018-14719", + "CVE-2018-14720", + "CVE-2018-14721", + "CVE-2018-14840", + "CVE-2018-15178", + "CVE-2018-15531", + "CVE-2018-16329", + "CVE-2018-16459", + "CVE-2018-16462", + "CVE-2018-16470", + "CVE-2018-16472", + "CVE-2018-16490", + "CVE-2018-16492", + "CVE-2018-17104", + "CVE-2018-17187", + "CVE-2018-17193", + "CVE-2018-17194", + "CVE-2018-17195", + "CVE-2018-17197", + "CVE-2018-18389", + "CVE-2018-18476", + "CVE-2018-19360", + "CVE-2018-19361", + "CVE-2018-19362", + "CVE-2018-19992", + "CVE-2018-19993", + "CVE-2018-19994", + "CVE-2018-20028", + "CVE-2018-20059", + "CVE-2018-20433", + "CVE-2018-20594", + "CVE-2018-20595", + "CVE-2018-20677", + "CVE-2018-20835", + "CVE-2018-20962", + "CVE-2018-1000013", + "CVE-2018-1000014", + "CVE-2018-1000089", + "CVE-2018-1000119", + "CVE-2018-1000129", + "CVE-2018-1000134", + "CVE-2018-1000164", + "CVE-2018-1000518", + "CVE-2018-1000531", + "CVE-2018-1000538", + "CVE-2018-1000620", + "CVE-2018-1000632", + "CVE-2018-1000805", + "CVE-2018-1000807", + "CVE-2018-1000808", + "CVE-2018-1000814", + "CVE-2018-1000843", + "CVE-2018-1000850", + "CVE-2018-1000888", + "CVE-2018-1002201", + "CVE-2018-1002207", + "CVE-2018-1002208", + "CVE-2019-0911", + "CVE-2019-0912", + "CVE-2019-0917", + "CVE-2019-0922", + "CVE-2019-0924", + "CVE-2019-0925", + "CVE-2019-0933", + "CVE-2019-1052", + "CVE-2019-1062", + "CVE-2019-1092", + "CVE-2019-1103", + "CVE-2019-1106", + "CVE-2019-1107", + "CVE-2019-1139", + "CVE-2019-1195", + "CVE-2019-1197", + "CVE-2019-3564", + "CVE-2019-5413", + "CVE-2019-5484", + "CVE-2019-5884", + "CVE-2019-6798", + "CVE-2019-7617", + "CVE-2019-7722", + "CVE-2019-8331", + "CVE-2019-9212", + "CVE-2019-9658", + "CVE-2019-9844", + "CVE-2019-10131", + "CVE-2019-10217", + "CVE-2019-10240", + "CVE-2019-10248", + "CVE-2019-10642", + "CVE-2019-10643", + "CVE-2019-10745", + "CVE-2019-10748", + "CVE-2019-10750", + "CVE-2019-10760", + "CVE-2019-10762", + "CVE-2019-10764", + "CVE-2019-10767", + "CVE-2019-10776", + "CVE-2019-10778", + "CVE-2019-10780", + "CVE-2019-10787", + "CVE-2019-10792", + "CVE-2019-10793", + "CVE-2019-10795", + "CVE-2019-10797", + "CVE-2019-10799", + "CVE-2019-10904", + "CVE-2019-11272", + "CVE-2019-11358", + "CVE-2019-11512", + "CVE-2019-11514", + "CVE-2019-11767", + "CVE-2019-11768", + "CVE-2019-11777", + "CVE-2019-12277", + "CVE-2019-12404", + "CVE-2019-12407", + "CVE-2019-12616", + "CVE-2019-12741", + "CVE-2019-12814", + "CVE-2019-13127", + "CVE-2019-13135", + "CVE-2019-13173", + "CVE-2019-13209", + "CVE-2019-13295", + "CVE-2019-13574", + "CVE-2019-13644", + "CVE-2019-14540", + "CVE-2019-14668", + "CVE-2019-14669", + "CVE-2019-14671", + "CVE-2019-14672", + "CVE-2019-14751", + "CVE-2019-14863", + "CVE-2019-14893", + "CVE-2019-14980", + "CVE-2019-15481", + "CVE-2019-15532", + "CVE-2019-15657", + "CVE-2019-15658", + "CVE-2019-16197", + "CVE-2019-16317", + "CVE-2019-16318", + "CVE-2019-16335", + "CVE-2019-16676", + "CVE-2019-16763", + "CVE-2019-16766", + "CVE-2019-16769", + "CVE-2019-16771", + "CVE-2019-16778", + "CVE-2019-16779", + "CVE-2019-16784", + "CVE-2019-16785", + "CVE-2019-16786", + "CVE-2019-16789", + "CVE-2019-16792", + "CVE-2019-17267", + "CVE-2019-17513", + "CVE-2019-17531", + "CVE-2019-17541", + "CVE-2019-17592", + "CVE-2019-18622", + "CVE-2019-18656", + "CVE-2019-18848", + "CVE-2019-18857", + "CVE-2019-18874", + "CVE-2019-18889", + "CVE-2019-18978", + "CVE-2019-18982", + "CVE-2019-18985", + "CVE-2019-18986", + "CVE-2019-19010", + "CVE-2019-19212", + "CVE-2019-19275", + "CVE-2019-19576", + "CVE-2019-19619", + "CVE-2019-19687", + "CVE-2019-19703", + "CVE-2019-19794", + "CVE-2019-20330", + "CVE-2019-1000005", + "CVE-2019-1000021", + "CVE-2019-1010266", + "CVE-2019-1020012", + "CVE-2020-1747", + "CVE-2020-1928", + "CVE-2020-5224", + "CVE-2020-5227", + "CVE-2020-5229", + "CVE-2020-5236", + "CVE-2020-5249", + "CVE-2020-5390", + "CVE-2020-5529", + "CVE-2020-7597", + "CVE-2020-7981", + "CVE-2020-8125", + "CVE-2020-8131", + "CVE-2020-9283", + "CVE-2020-10236", + "CVE-2020-10591", + "CVE-2020-10672", + "CVE-2020-10673" + ], + "medium": [ + "CVE-2013-3567", + "CVE-2013-4002", + "CVE-2014-5277", + "CVE-2014-7189", + "CVE-2016-10100", + "CVE-2016-10574", + "CVE-2017-2638", + "CVE-2017-12622", + "CVE-2017-1000451", + "CVE-2018-3738", + "CVE-2018-6591", + "CVE-2019-0207", + "CVE-2019-3772", + "CVE-2019-10089", + "CVE-2019-10090", + "CVE-2019-10756", + "CVE-2019-10757", + "CVE-2020-9281" + ], + "low": [ + "CVE-2016-4438", + "CVE-2016-10543", + "CVE-2016-10564", + "CVE-2016-10569", + "CVE-2017-7688", + "CVE-2019-10077" + ], + "not_found": [ + "CVE-2012-0881", + "CVE-2014-7143", + "CVE-2015-0250", + "CVE-2015-3627", + "CVE-2016-9962", + "CVE-2018-1196", + "CVE-2018-7576", + "CVE-2018-8031", + "CVE-2019-0219", + "CVE-2019-3792", + "CVE-2019-14537" + ], + "not_reported": [ + "CVE-2010-2245", + "CVE-2011-2730", + "CVE-2013-0248", + "CVE-2013-4204", + "CVE-2013-4286", + "CVE-2013-4322", + "CVE-2013-6235", + "CVE-2014-0050", + "CVE-2016-8739", + "CVE-2016-10532", + "CVE-2016-10562", + "CVE-2016-10566", + "CVE-2016-10567", + "CVE-2016-10568", + "CVE-2016-10570", + "CVE-2016-10571", + "CVE-2016-10572", + "CVE-2016-10573", + "CVE-2016-10576", + "CVE-2016-10586", + "CVE-2016-10587", + "CVE-2016-10588", + "CVE-2016-10626", + "CVE-2017-4971", + "CVE-2017-5638", + "CVE-2017-8046", + "CVE-2017-16029", + "CVE-2017-16083", + "CVE-2017-16084", + "CVE-2017-16107", + "CVE-2017-1000431", + "CVE-2018-3757", + "CVE-2018-6341", + "CVE-2018-6873", + "CVE-2018-8026", + "CVE-2018-14732", + "CVE-2018-16485", + "CVE-2018-17184", + "CVE-2018-20094", + "CVE-2019-5444", + "CVE-2019-5479", + "CVE-2019-10771", + "CVE-2019-10777", + "CVE-2019-12405" + ], + "false_positive": [ + "CVE-2010-0156", + "CVE-2010-0684", + "CVE-2010-2076", + "CVE-2010-4534", + "CVE-2010-4535", + "CVE-2010-5142", + "CVE-2011-1772", + "CVE-2011-2732", + "CVE-2011-2929", + "CVE-2011-2930", + "CVE-2011-2931", + "CVE-2011-2932", + "CVE-2011-3848", + "CVE-2011-3869", + "CVE-2011-3870", + "CVE-2011-3871", + "CVE-2011-3872", + "CVE-2011-4104", + "CVE-2011-4838", + "CVE-2011-5036", + "CVE-2011-5097", + "CVE-2011-5098", + "CVE-2012-0392", + "CVE-2012-0394", + "CVE-2012-1054", + "CVE-2012-1098", + "CVE-2012-1099", + "CVE-2012-1906", + "CVE-2012-1986", + "CVE-2012-1987", + "CVE-2012-2098", + "CVE-2012-2139", + "CVE-2012-2379", + "CVE-2012-2660", + "CVE-2012-2661", + "CVE-2012-3451", + "CVE-2012-3865", + "CVE-2012-3867", + "CVE-2012-4386", + "CVE-2012-4387", + "CVE-2012-4449", + "CVE-2012-4520", + "CVE-2012-5055", + "CVE-2012-5633", + "CVE-2012-6662", + "CVE-2012-6684", + "CVE-2012-6685", + "CVE-2012-6708", + "CVE-2013-0262", + "CVE-2013-0263", + "CVE-2013-0285", + "CVE-2013-1654", + "CVE-2013-1812", + "CVE-2013-2115", + "CVE-2013-2132", + "CVE-2013-2134", + "CVE-2013-2135", + "CVE-2013-2254", + "CVE-2013-2275", + "CVE-2013-4152", + "CVE-2013-4249", + "CVE-2013-4251", + "CVE-2013-4353", + "CVE-2013-4428", + "CVE-2013-4477", + "CVE-2013-4761", + "CVE-2013-5093", + "CVE-2013-5123", + "CVE-2013-6044", + "CVE-2013-6348", + "CVE-2013-6429", + "CVE-2013-6430", + "CVE-2013-7315", + "CVE-2013-7370", + "CVE-2013-7397", + "CVE-2013-7398", + "CVE-2014-0012", + "CVE-2014-0014", + "CVE-2014-0035", + "CVE-2014-0075", + "CVE-2014-0086", + "CVE-2014-0097", + "CVE-2014-0107", + "CVE-2014-0109", + "CVE-2014-0110", + "CVE-2014-0116", + "CVE-2014-0193", + "CVE-2014-0224", + "CVE-2014-0225", + "CVE-2014-0228", + "CVE-2014-1402", + "CVE-2014-1829", + "CVE-2014-1830", + "CVE-2014-1832", + "CVE-2014-1858", + "CVE-2014-1859", + "CVE-2014-1869", + "CVE-2014-1932", + "CVE-2014-1933", + "CVE-2014-2053", + "CVE-2014-2235", + "CVE-2014-2538", + "CVE-2014-3007", + "CVE-2014-3505", + "CVE-2014-3506", + "CVE-2014-3509", + "CVE-2014-3511", + "CVE-2014-3572", + "CVE-2014-3578", + "CVE-2014-3600", + "CVE-2014-3625", + "CVE-2014-3630", + "CVE-2014-3709", + "CVE-2014-3994", + "CVE-2014-4172", + "CVE-2014-4658", + "CVE-2014-4678", + "CVE-2014-7202", + "CVE-2014-7203", + "CVE-2014-7205", + "CVE-2014-8176", + "CVE-2014-8547", + "CVE-2014-8548", + "CVE-2014-8549", + "CVE-2014-8650", + "CVE-2014-8991", + "CVE-2014-9720", + "CVE-2014-10068", + "CVE-2014-10077", + "CVE-2015-0204", + "CVE-2015-0205", + "CVE-2015-0206", + "CVE-2015-0208", + "CVE-2015-0209", + "CVE-2015-0286", + "CVE-2015-0287", + "CVE-2015-0288", + "CVE-2015-0289", + "CVE-2015-0290", + "CVE-2015-0292", + "CVE-2015-0293", + "CVE-2015-1208", + "CVE-2015-1788", + "CVE-2015-1789", + "CVE-2015-1791", + "CVE-2015-1792", + "CVE-2015-1793", + "CVE-2015-1830", + "CVE-2015-2068", + "CVE-2015-2156", + "CVE-2015-2296", + "CVE-2015-2912", + "CVE-2015-2913", + "CVE-2015-3010", + "CVE-2015-3192", + "CVE-2015-3193", + "CVE-2015-3195", + "CVE-2015-3196", + "CVE-2015-3197", + "CVE-2015-3253", + "CVE-2015-3395", + "CVE-2015-3996", + "CVE-2015-4053", + "CVE-2015-4706", + "CVE-2015-5159", + "CVE-2015-5207", + "CVE-2015-5211", + "CVE-2015-5241", + "CVE-2015-5250", + "CVE-2015-5253", + "CVE-2015-5254", + "CVE-2015-5305", + "CVE-2015-5344", + "CVE-2015-5349", + "CVE-2015-5607", + "CVE-2015-6748", + "CVE-2015-6818", + "CVE-2015-6821", + "CVE-2015-6822", + "CVE-2015-6823", + "CVE-2015-6824", + "CVE-2015-6918", + "CVE-2015-7314", + "CVE-2015-7315", + "CVE-2015-7316", + "CVE-2015-7528", + "CVE-2015-7559", + "CVE-2015-8213", + "CVE-2015-8216", + "CVE-2015-8217", + "CVE-2015-8218", + "CVE-2015-8618", + "CVE-2015-8748", + "CVE-2015-8861", + "CVE-2015-8968", + "CVE-2015-9243", + "CVE-2015-9251", + "CVE-2016-0762", + "CVE-2016-1905", + "CVE-2016-2108", + "CVE-2016-2160", + "CVE-2016-2177", + "CVE-2016-2512", + "CVE-2016-2513", + "CVE-2016-2788", + "CVE-2016-3081", + "CVE-2016-3092", + "CVE-2016-3094", + "CVE-2016-3959", + "CVE-2016-4009", + "CVE-2016-4055", + "CVE-2016-4425", + "CVE-2016-4465", + "CVE-2016-4855", + "CVE-2016-4970", + "CVE-2016-4972", + "CVE-2016-5388", + "CVE-2016-6186", + "CVE-2016-6304", + "CVE-2016-6519", + "CVE-2016-6580", + "CVE-2016-6581", + "CVE-2016-6652", + "CVE-2016-6793", + "CVE-2016-6794", + "CVE-2016-6796", + "CVE-2016-6797", + "CVE-2016-6801", + "CVE-2016-6814", + "CVE-2016-6816", + "CVE-2016-6817", + "CVE-2016-6823", + "CVE-2016-7036", + "CVE-2016-7569", + "CVE-2016-8568", + "CVE-2016-8569", + "CVE-2016-8579", + "CVE-2016-8610", + "CVE-2016-8629", + "CVE-2016-8640", + "CVE-2016-8745", + "CVE-2016-8747", + "CVE-2016-8750", + "CVE-2016-8867", + "CVE-2016-9015", + "CVE-2016-9121", + "CVE-2016-9122", + "CVE-2016-9189", + "CVE-2016-9190", + "CVE-2016-9243", + "CVE-2016-9814", + "CVE-2016-9878", + "CVE-2016-9879", + "CVE-2016-10033", + "CVE-2016-10127", + "CVE-2016-10129", + "CVE-2016-10190", + "CVE-2016-10191", + "CVE-2016-10192", + "CVE-2016-10193", + "CVE-2016-10526", + "CVE-2016-10538", + "CVE-2016-10542", + "CVE-2016-10550", + "CVE-2016-10555", + "CVE-2016-10557", + "CVE-2016-10579", + "CVE-2016-10582", + "CVE-2016-10745", + "CVE-2016-10750", + "CVE-2016-1000232", + "CVE-2016-1000282", + "CVE-2017-0224", + "CVE-2017-0905", + "CVE-2017-0906", + "CVE-2017-0907", + "CVE-2017-0909", + "CVE-2017-0929", + "CVE-2017-2582", + "CVE-2017-2592", + "CVE-2017-2649", + "CVE-2017-2670", + "CVE-2017-3156", + "CVE-2017-4952", + "CVE-2017-4995", + "CVE-2017-5537", + "CVE-2017-5594", + "CVE-2017-5637", + "CVE-2017-5954", + "CVE-2017-7481", + "CVE-2017-7525", + "CVE-2017-7536", + "CVE-2017-7545", + "CVE-2017-7653", + "CVE-2017-7657", + "CVE-2017-7660", + "CVE-2017-7661", + "CVE-2017-7662", + "CVE-2017-7666", + "CVE-2017-7675", + "CVE-2017-7860", + "CVE-2017-7861", + "CVE-2017-7957", + "CVE-2017-8045", + "CVE-2017-8109", + "CVE-2017-8342", + "CVE-2017-8359", + "CVE-2017-9096", + "CVE-2017-9214", + "CVE-2017-9265", + "CVE-2017-9841", + "CVE-2017-10910", + "CVE-2017-11424", + "CVE-2017-11428", + "CVE-2017-11503", + "CVE-2017-11610", + "CVE-2017-12158", + "CVE-2017-12159", + "CVE-2017-12160", + "CVE-2017-12605", + "CVE-2017-12624", + "CVE-2017-12629", + "CVE-2017-12631", + "CVE-2017-12868", + "CVE-2017-12873", + "CVE-2017-14063", + "CVE-2017-14136", + "CVE-2017-14506", + "CVE-2017-14623", + "CVE-2017-14683", + "CVE-2017-15103", + "CVE-2017-15288", + "CVE-2017-15612", + "CVE-2017-15720", + "CVE-2017-15914", + "CVE-2017-16006", + "CVE-2017-16010", + "CVE-2017-16018", + "CVE-2017-16026", + "CVE-2017-16031", + "CVE-2017-16138", + "CVE-2017-16558", + "CVE-2017-16570", + "CVE-2017-16759", + "CVE-2017-16762", + "CVE-2017-16792", + "CVE-2017-17485", + "CVE-2017-17760", + "CVE-2017-17835", + "CVE-2017-17837", + "CVE-2017-18076", + "CVE-2017-18077", + "CVE-2017-18361", + "CVE-2017-18635", + "CVE-2017-1000001", + "CVE-2017-1000042", + "CVE-2017-1000056", + "CVE-2017-1000069", + "CVE-2017-1000070", + "CVE-2017-1000209", + "CVE-2017-1000246", + "CVE-2017-1000248", + "CVE-2017-1000427", + "CVE-2017-1000433", + "CVE-2017-1000450", + "CVE-2018-0737", + "CVE-2018-0953", + "CVE-2018-1067", + "CVE-2018-1114", + "CVE-2018-1193", + "CVE-2018-1199", + "CVE-2018-1259", + "CVE-2018-1272", + "CVE-2018-1273", + "CVE-2018-1274", + "CVE-2018-1284", + "CVE-2018-1304", + "CVE-2018-1314", + "CVE-2018-1336", + "CVE-2018-1339", + "CVE-2018-3711", + "CVE-2018-3728", + "CVE-2018-3743", + "CVE-2018-3758", + "CVE-2018-3777", + "CVE-2018-5773", + "CVE-2018-6517", + "CVE-2018-6596", + "CVE-2018-7212", + "CVE-2018-7489", + "CVE-2018-7575", + "CVE-2018-7711", + "CVE-2018-7750", + "CVE-2018-8006", + "CVE-2018-8008", + "CVE-2018-8009", + "CVE-2018-8014", + "CVE-2018-8017", + "CVE-2018-8025", + "CVE-2018-8027", + "CVE-2018-8030", + "CVE-2018-8037", + "CVE-2018-8038", + "CVE-2018-8039", + "CVE-2018-8088", + "CVE-2018-8097", + "CVE-2018-8315", + "CVE-2018-8359", + "CVE-2018-8416", + "CVE-2018-8465", + "CVE-2018-8473", + "CVE-2018-8510", + "CVE-2018-8541", + "CVE-2018-8899", + "CVE-2018-9856", + "CVE-2018-10237", + "CVE-2018-10862", + "CVE-2018-10912", + "CVE-2018-11039", + "CVE-2018-11040", + "CVE-2018-11087", + "CVE-2018-11248", + "CVE-2018-11307", + "CVE-2018-11627", + "CVE-2018-11647", + "CVE-2018-11758", + "CVE-2018-11761", + "CVE-2018-11762", + "CVE-2018-11775", + "CVE-2018-11777", + "CVE-2018-11784", + "CVE-2018-11786", + "CVE-2018-11787", + "CVE-2018-11788", + "CVE-2018-11797", + "CVE-2018-12022", + "CVE-2018-12023", + "CVE-2018-12537", + "CVE-2018-12540", + "CVE-2018-12544", + "CVE-2018-12608", + "CVE-2018-13790", + "CVE-2018-13863", + "CVE-2018-14040", + "CVE-2018-14042", + "CVE-2018-14371", + "CVE-2018-14574", + "CVE-2018-14635", + "CVE-2018-14642", + "CVE-2018-14731", + "CVE-2018-14774", + "CVE-2018-15727", + "CVE-2018-15756", + "CVE-2018-15758", + "CVE-2018-16468", + "CVE-2018-16471", + "CVE-2018-16733", + "CVE-2018-16837", + "CVE-2018-16859", + "CVE-2018-16876", + "CVE-2018-16886", + "CVE-2018-16984", + "CVE-2018-17057", + "CVE-2018-17175", + "CVE-2018-17246", + "CVE-2018-18074", + "CVE-2018-18206", + "CVE-2018-18854", + "CVE-2018-18893", + "CVE-2018-18926", + "CVE-2018-19133", + "CVE-2018-19351", + "CVE-2018-19352", + "CVE-2018-19370", + "CVE-2018-19620", + "CVE-2018-19787", + "CVE-2018-20000", + "CVE-2018-20227", + "CVE-2018-20745", + "CVE-2018-20756", + "CVE-2018-20834", + "CVE-2018-20975", + "CVE-2018-1000060", + "CVE-2018-1000088", + "CVE-2018-1000096", + "CVE-2018-1000118", + "CVE-2018-1000159", + "CVE-2018-1000539", + "CVE-2018-1000559", + "CVE-2018-1000613", + "CVE-2018-1000644", + "CVE-2018-1000665", + "CVE-2018-1000803", + "CVE-2018-1000809", + "CVE-2018-1000820", + "CVE-2018-1000822", + "CVE-2018-1000854", + "CVE-2018-1000855", + "CVE-2018-1000872", + "CVE-2018-1002101", + "CVE-2018-1002105", + "CVE-2018-1002150", + "CVE-2018-1002200", + "CVE-2018-1002203", + "CVE-2018-1002204", + "CVE-2018-1002205", + "CVE-2019-0194", + "CVE-2019-0201", + "CVE-2019-0210", + "CVE-2019-0226", + "CVE-2019-0228", + "CVE-2019-1001", + "CVE-2019-1552", + "CVE-2019-3465", + "CVE-2019-3498", + "CVE-2019-3774", + "CVE-2019-3799", + "CVE-2019-3808", + "CVE-2019-3810", + "CVE-2019-3847", + "CVE-2019-3850", + "CVE-2019-3888", + "CVE-2019-3894", + "CVE-2019-5018", + "CVE-2019-5421", + "CVE-2019-5448", + "CVE-2019-5477", + "CVE-2019-6802", + "CVE-2019-6975", + "CVE-2019-7313", + "CVE-2019-7537", + "CVE-2019-7644", + "CVE-2019-8903", + "CVE-2019-9153", + "CVE-2019-9154", + "CVE-2019-9155", + "CVE-2019-9512", + "CVE-2019-9826", + "CVE-2019-9942", + "CVE-2019-10071", + "CVE-2019-10072", + "CVE-2019-10086", + "CVE-2019-10094", + "CVE-2019-10158", + "CVE-2019-10174", + "CVE-2019-10184", + "CVE-2019-10206", + "CVE-2019-10219", + "CVE-2019-10246", + "CVE-2019-10247", + "CVE-2019-10249", + "CVE-2019-10255", + "CVE-2019-10354", + "CVE-2019-10641", + "CVE-2019-10754", + "CVE-2019-10763", + "CVE-2019-10766", + "CVE-2019-10768", + "CVE-2019-10770", + "CVE-2019-10773", + "CVE-2019-10774", + "CVE-2019-10806", + "CVE-2019-10874", + "CVE-2019-10912", + "CVE-2019-11016", + "CVE-2019-11082", + "CVE-2019-11244", + "CVE-2019-11245", + "CVE-2019-11269", + "CVE-2019-11289", + "CVE-2019-11325", + "CVE-2019-11328", + "CVE-2019-11405", + "CVE-2019-11458", + "CVE-2019-11470", + "CVE-2019-11808", + "CVE-2019-12041", + "CVE-2019-12086", + "CVE-2019-12203", + "CVE-2019-12245", + "CVE-2019-12308", + "CVE-2019-12313", + "CVE-2019-12387", + "CVE-2019-12418", + "CVE-2019-12419", + "CVE-2019-12422", + "CVE-2019-12423", + "CVE-2019-12617", + "CVE-2019-12748", + "CVE-2019-12781", + "CVE-2019-14262", + "CVE-2019-14280", + "CVE-2019-14838", + "CVE-2019-14892", + "CVE-2019-14933", + "CVE-2019-15062", + "CVE-2019-15477", + "CVE-2019-15482", + "CVE-2019-15483", + "CVE-2019-15484", + "CVE-2019-15485", + "CVE-2019-15486", + "CVE-2019-15587", + "CVE-2019-15599", + "CVE-2019-15608", + "CVE-2019-15782", + "CVE-2019-16060", + "CVE-2019-16097", + "CVE-2019-16145", + "CVE-2019-16403", + "CVE-2019-16768", + "CVE-2019-16770", + "CVE-2019-16772", + "CVE-2019-16774", + "CVE-2019-16782", + "CVE-2019-16869", + "CVE-2019-16884", + "CVE-2019-16942", + "CVE-2019-16943", + "CVE-2019-17206", + "CVE-2019-17223", + "CVE-2019-17359", + "CVE-2019-17383", + "CVE-2019-17426", + "CVE-2019-17554", + "CVE-2019-17563", + "CVE-2019-17569", + "CVE-2019-17632", + "CVE-2019-18841", + "CVE-2019-18886", + "CVE-2019-18887", + "CVE-2019-18888", + "CVE-2019-18923", + "CVE-2019-18954", + "CVE-2019-19118", + "CVE-2019-19274", + "CVE-2019-19316", + "CVE-2019-19325", + "CVE-2019-19844", + "CVE-2019-19919", + "CVE-2019-20444", + "CVE-2019-1000007", + "CVE-2019-1002101", + "CVE-2019-1010142", + "CVE-2019-1010306", + "CVE-2020-1935", + "CVE-2020-1937", + "CVE-2020-1938", + "CVE-2020-1940", + "CVE-2020-5215", + "CVE-2020-5223", + "CVE-2020-5230", + "CVE-2020-5233", + "CVE-2020-5237", + "CVE-2020-5243", + "CVE-2020-5245", + "CVE-2020-5247", + "CVE-2020-5310", + "CVE-2020-5311", + "CVE-2020-5312", + "CVE-2020-5313", + "CVE-2020-5398", + "CVE-2020-6802", + "CVE-2020-6816", + "CVE-2020-7212", + "CVE-2020-7219", + "CVE-2020-7596", + "CVE-2020-7598", + "CVE-2020-7608", + "CVE-2020-8116", + "CVE-2020-8134", + "CVE-2020-8840", + "CVE-2020-8945", + "CVE-2020-9402", + "CVE-2020-9546", + "CVE-2020-9547", + "CVE-2020-9548", + "CVE-2020-10594" + ], + "aborted": [ + "CVE-2009-0217", + "CVE-2015-1169", + "CVE-2015-3208", + "CVE-2015-6826", + "CVE-2015-7577", + "CVE-2016-5386", + "CVE-2017-5643", + "CVE-2017-8658", + "CVE-2017-14695", + "CVE-2018-10055", + "CVE-2018-11804", + "CVE-2018-20713", + "CVE-2018-1002102", + "CVE-2019-10154" + ], + "missing": [ + "CVE-2009-0217", + "CVE-2015-1169", + "CVE-2015-3208", + "CVE-2015-6826", + "CVE-2015-7577", + "CVE-2016-5386", + "CVE-2017-5643", + "CVE-2017-8658", + "CVE-2017-14695", + "CVE-2018-10055", + "CVE-2018-11804", + "CVE-2018-20713", + "CVE-2018-1002102", + "CVE-2019-10154" + ] + } } ] } \ No newline at end of file diff --git a/prospector/evaluation/main.py b/prospector/evaluation/main.py index d28c24b24..28ff8bc2f 100644 --- a/prospector/evaluation/main.py +++ b/prospector/evaluation/main.py @@ -1,10 +1,7 @@ -# flake8: noqa -import argparse -import asyncio -import os import signal import sys - +from typing import Callable, Dict +from omegaconf import OmegaConf from evaluation.analyse import ( analyse_category_flows, analyse_prospector_reports, @@ -14,178 +11,100 @@ ) from evaluation.analyse_statistics import ( analyse_statistics, - candidates_execution_time, - commit_classification_time, overall_execution_time, ) -from evaluation.dispatch_jobs import ( - dispatch_jobs_with_api, - dispatch_prospector_jobs, - empty_queue, - start, -) +from evaluation.dispatch_jobs import dispatch_prospector_jobs, empty_queue +from evaluation.utils import config -def parse_cli_args(args): - parser = argparse.ArgumentParser(description="Prospector scripts") +class CommandRegistry: + def __init__(self): + self.commands: Dict[str, Callable] = {} - parser.add_argument( - "-i", - "--input", - type=str, - help="Input file", - ) + def register(self, name: str): + def decorator(func: Callable): + self.commands[name] = func + return func - parser.add_argument( - "-e", - "--execute", - action="store_true", - help="Input file", - ) + return decorator - parser.add_argument( - "-a", - "--analyze", - action="store_true", - help="Input file", - ) + def execute(self, name: str, *args, **kwargs): + if name not in self.commands: + raise ValueError(f"Command '{name}' not found") + return self.commands[name](*args, **kwargs) - parser.add_argument( - "-s", - "--stats", - action="store_true", - help="Analyse the statistics field saved in each Prospector report.", - ) - parser.add_argument( - "-f", - "--folder", - type=str, - help="Folder to analyze", - ) +registry = CommandRegistry() - parser.add_argument( - "-c", - "--cve", - type=str, - default="", - help="CVE to analyze", - ) - parser.add_argument( - "-eq", - "--empty-queue", - help="Empty the Redis Queue", - action="store_true", - ) +@registry.register("execute") +def execute_command(config): + dispatch_prospector_jobs(config.input, config.cve) - parser.add_argument( - "-co", - "--count", - help="Count which CVEs from the input data have a corresponding Prospector report.", - action="store_true", - ) - parser.add_argument( - "-fl", - "--flow", - help="Analyse which CVEs changed from one category to another given two detailed summary execution JSON files.", - action="store_true", - ) +@registry.register("analyse_reports") +def analyze_reports_command(config): + analyse_prospector_reports(config.input, config.cve) - parser.add_argument( - "-t", - "--temporary", - help="Run whichever temporary function is set to temporary. This allows you to write use-once function and run it easily.", - action="store_true", - ) - - parser.add_argument( - "-cm", - "--checkmarks", - action="store_true", - ) - return parser.parse_args() +@registry.register("analyse_statistics") +def analyze_stats_command(config): + analyse_statistics(config.input) -async def main(argv): - args = parse_cli_args(argv) +@registry.register("execution_time") +def execution_time_command(config): + overall_execution_time(config.input) - # Run Prospector containerised - if args.execute and not args.analyze: - dispatch_prospector_jobs(args.input, args.cve) - # await dispatch_jobs_with_api(args.input, args.cve) - # start() - elif args.analyze and not args.execute: - # analysis of execution statistics in report - if args.stats: - # analyse_statistics(args.input) - overall_execution_time(args.input) - # commit_classification_time(args.input) - # candidates_execution_time(args.input) +@registry.register("category_flows") +def category_flows_command(config): + analyse_category_flows() - elif args.flow: - analyse_category_flows() - # analyse_category_flows_no_mutual_exclusion() - # analysis of Prospector reports - elif args.checkmarks: - generate_checkmarks_table(args.input, args.cve) - else: - analyse_prospector_reports(args.input, args.cve) +@registry.register("checkmarks") +def checkmarks_command(config): + generate_checkmarks_table(config.input, config.cve) - # Remove all jobs from the queue - elif args.empty_queue and not args.execute and not args.stats: - empty_queue() - # Count how many reports there are or there are missing - elif not args.analyze and not args.execute and args.count: - count_existing_reports(args.input) +@registry.register("empty_queue") +def empty_queue_command(config): + empty_queue() - elif not args.analyze and not args.execute and args.temporary: - # difference_ground_truth_datasets() - # generate_sankey_diagram("mvi_old_reports", "mvi_old_code", "mvi_without_llm") - generate_sankey_diagram( - "mvi_old_reports", - "mvi_old_reports(new_categories)", - "mvi_without_llm", - ) - # candidates_execution_time(args.input) - # overall_execution_time(args.input) - # Cannot choose both analyse and execute, stop here. - elif args.analyze and args.execute: - sys.exit("Choose either to execute or analyze") +@registry.register("count_reports") +def count_reports_command(config): + count_existing_reports(config.input) -def mute(): - sys.stdout = open(os.devnull, "w") +@registry.register("sankey_diagram") +def sankey_diagram_command(config): + generate_sankey_diagram( + "mvi_old_reports", + "mvi_old_reports(new_categories)", + "mvi_without_llm", + ) -def list_dir_and_select_folder(): - files = [file for file in os.listdir("datasets/") if "." not in file] - for i, file in enumerate(files): - print(i, ")", file) - choice = int(input("Choose a dataset: ")) - return files[choice] +def sig_handler(signum, frame): + print("You pressed Ctrl+C!") + sys.exit(0) -def list_dir_and_select_dataset(): - files = [file for file in os.listdir("datasets/") if file.endswith(".csv")] - for i, file in enumerate(files): - print(i, ")", file) - choice = int(input("Choose a dataset: ")) - return files[choice] +def main(): + if len(sys.argv) < 2: + print("Usage: python script.py ") + sys.exit(1) + command = sys.argv[1] -# this method handls ctrl+c from the keyboard to stop execution -def sig_handler(signum, frame): - print("You pressed Ctrl+C!") - sys.exit(0) + try: + registry.execute(command, config) + except ValueError as e: + print(f"Error: {e}") + sys.exit(1) if __name__ == "__main__": signal.signal(signal.SIGINT, sig_handler) - asyncio.run(main(sys.argv[1:])) + main()