Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // downloaded json file from https://nvd.nist.gov/vuln/data-feeds#JSON_FEED - ran on webserver with a jquery pull for easy make, open on webserver and take a peak at the console
- var data = [];
- $(document).ready(function() {
- $.getJSON("nvdcve-1.1-2020.json", function(json) {
- data = json.CVE_Items;
- // win, lin, mac os x, and, intel, oracle
- var names = ["Windows", "Linux / Linux-Based", "Apple (Desktop & Mobile)", "Android", "Intel", "Oracle", "VMWare", "Palo Alto Networks"];
- var count = [0,0,0,0,0,0,0,0];
- var has = [false,false,false,false,false,false,false,false];
- var impactscore = 0.0;
- for (var i = 0; i < data.length; i++) {
- try {
- if(data[i].impact.baseMetricV3.cvssV3.baseSeverity === "HIGH") {
- var cpes = data[i].configurations.nodes["0"].cpe_match;
- has = [false,false,false,false,false];
- var oneos = false;
- // must involve an os
- for(var j = 0; j < cpes.length; j++) {
- var uriparts = cpes[j].cpe23Uri.toLowerCase().split(':');
- if (uriparts[2] === "o")
- cpes[j].isOS = true;
- else
- cpes[j].isOS = false;
- }
- for(var j = 0; j < cpes.length; j++) {
- var cpe = cpes[j]
- if(cpe.isOS) {
- if(cpe.vulnerable === true) {
- var uri = cpe.cpe23Uri.toLowerCase();
- if(uri.includes('windows') ||
- uri.includes('azure')) {
- has[0] = true;
- }
- if(uri.includes('linux') ||
- uri.includes('fedora') ||
- uri.includes('ubuntu') ||
- uri.includes('debian') ||
- uri.includes('redhat') ||
- uri.includes('zephyr') ||
- uri.includes('freebsd') ||
- uri.includes('xen') ||
- uri.includes('sane_backends') ||
- uri.includes('rangeeos') ||
- uri.includes('opensuse')) {
- has[1] = true;
- }
- if(uri.includes('mac_os_x') ||
- uri.includes('iphone') ||
- uri.includes('ipad') ||
- uri.includes('ios') ||
- uri.includes('watchos')) {
- has[2] = true;
- }
- if(uri.includes('android') ||
- uri.includes('coloros')) {
- has[3] = true;
- }
- if(uri.includes('intel')) {
- has[4] = true;
- }
- if(uri.includes('oracle')) {
- has[5] = true;
- }
- if(uri.includes('vmware')) {
- has[6] = true;
- }
- if(uri.includes('pan-os')) {
- has[7] = true;
- }
- }
- oneos = true;
- }
- }
- if(oneos) {
- for(var j = 0; j < 8; j++) {
- if(has[j]) {
- count[j]++;
- }
- }
- }
- }
- } catch(e) {}
- }
- for(var i = 0; i < names.length; i++) {
- console.log(names[i] + ": " + count[i] + "\n");
- }
- });
- });
Add Comment
Please, Sign In to add comment