public static void FindVulns() { System.Console.WriteLine(Beaprint.YELLOW + " [?] " + Beaprint.LBLUE + "Windows vulns search powered by " + Beaprint.LRED + "Watson" + Beaprint.LBLUE + "(https://github.com/rasta-mouse/Watson)" + Beaprint.NOCOLOR); // Supported versions List <string> supportedVersions = new List <string>() { "10240", //1507 "10586", //1511 "14393", //1607 & 2K16 "15063", //1703 "16299", //1709 "17134", //1803 "17763", //1809 & 2K19 "18362", //1903 "18363", //1909 }; // Get OS Build number string buildNumber = Wmi.GetBuildNumber(); if (!string.IsNullOrEmpty(buildNumber)) { System.Console.WriteLine(String.Format(" {0}: {1}", "OS Build Number", buildNumber)); } else { return; } if (!supportedVersions.Contains(buildNumber)) { Beaprint.GoodPrint(" Windows version not supported\r\n"); return; } // List of KBs installed //Console.WriteLine(" [*] Enumerating installed KBs...\r\n"); List <string> installedKBs = Wmi.GetInstalledKBs(); /*#if DEBUG * foreach (string kb in installedKBs) * Console.WriteLine(" {0}", kb); * Console.WriteLine(); #endif*/ // List of Vulnerabilities VulnerabilityCollection vulnerabiltiies = new VulnerabilityCollection(); // Check each one CVE_2019_0836.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_0841.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1064.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1130.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1253.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1315.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1385.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1388.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1405.Check(vulnerabiltiies, buildNumber, installedKBs); // Print the results vulnerabiltiies.ShowResults(); }
public static void FindVulns() { if (Program.using_ansi) { System.Console.WriteLine(Beaprint.YELLOW + " [?] " + Beaprint.LBLUE + "Windows vulns search powered by" + Beaprint.LRED + "Watson" + Beaprint.LBLUE + "(https://github.com/rasta-mouse/Watson)" + Beaprint.NOCOLOR); } else { string iniPrint = " {0} Windows vulns search powered by {1} (https://github.com/rasta-mouse/Watson)"; Formatter[] colors = new Formatter[] { new Formatter("[?]", Color.Yellow), new Formatter("Watson", Color.OrangeRed), }; Colorful.Console.WriteLineFormatted(iniPrint, Color.MediumPurple, colors); } List <string> supportedVersions = new List <string>() { "10240", //1507 "10586", //1511 "14393", //1607 & 2K16 "15063", //1703 "16299", //1709 "17134", //1803 "17763", //1809 & 2K19 "18362" //1903 //"18363", //1909 }; // Get OS Build number string buildNumber = Wmi.GetBuildNumber(); if (!string.IsNullOrEmpty(buildNumber)) { string iniPrint = " {0}: {1}"; Formatter[] colors = new Formatter[] { new Formatter("OS Build Number", Beaprint.color_key), new Formatter(buildNumber, Beaprint.color_default), }; Colorful.Console.WriteLineFormatted(iniPrint, Beaprint.color_key, colors); } else { return; } if (!supportedVersions.Contains(buildNumber)) { Colorful.Console.WriteLine(" Windows version not supported\r\n", Beaprint.color_good); return; } // List of KBs installed List <string> installedKBs = Wmi.GetInstalledKBs(); // List of Vulnerabilities VulnerabilityCollection vulnerabiltiies = new VulnerabilityCollection(); // Check each one CVE_2019_0836.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_0841.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1064.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1130.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1253.Check(vulnerabiltiies, buildNumber, installedKBs); CVE_2019_1315.Check(vulnerabiltiies, buildNumber, installedKBs); // Print the results vulnerabiltiies.ShowResults(); }