コード例 #1
0
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\gpprefcl.dll");

                switch (sysInfo.OsBuild)
                {
                case "10240":
                    if (version < 16942)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-072");
                    }
                    break;

                case "10586":
                    if (version < 420)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-072");
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }
コード例 #2
0
ファイル: SchedsvcDll.cs プロジェクト: kurtace72/Watson-1
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\schedsvc.dll");

                switch (sysInfo.OsBuild)
                {
                case "6001":
                    if (version < 18551)
                    {
                        vulnerabilities.SetAsVulnerable("MS10-092");
                    }
                    break;

                case "6002":
                    if (version < 18342)
                    {
                        vulnerabilities.SetAsVulnerable("MS10-092");
                    }
                    break;

                case "7600":
                    if (version < 16699)
                    {
                        vulnerabilities.SetAsVulnerable("MS10-092");
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }
コード例 #3
0
ファイル: AtmfdDll.cs プロジェクト: kurtace72/Watson-1
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\atmfd.dll");

                switch (sysInfo.OsBuild)
                {
                case "9200":
                    if (version < 243)
                    {
                        vulnerabilities.SetAsVulnerable("MS15-078");
                    }
                    break;

                case "9600":
                    if (version < 243)
                    {
                        vulnerabilities.SetAsVulnerable("MS15-078");
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }
コード例 #4
0
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\win32kfull.sys");

                switch (sysInfo.OsBuild)
                {
                case "10240":
                    if (version < 16683)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-014");
                    }
                    if (version < 16724)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-034");
                    }
                    if (version < 16771)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-039");
                    }
                    break;

                case "10586":
                    if (version < 103)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-014");
                    }
                    if (version < 162)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-034");
                    }
                    if (version < 212)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-039");
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }
コード例 #5
0
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\seclogon.dll");

                switch (sysInfo.OsBuild)
                {
                case "6002":
                    if (version < 19598 && sysInfo.CpuCount > 1)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-032");
                    }
                    break;

                case "9600":
                    if (version < 18230 && sysInfo.CpuCount > 1)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-032");
                    }
                    break;

                case "10240":
                    if (version < 16724 && sysInfo.CpuCount > 1)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-032");
                    }
                    break;

                case "10586":
                    if (version < 162 && sysInfo.CpuCount > 1)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-032");
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }
コード例 #6
0
ファイル: MrxdavSys.cs プロジェクト: kurtace72/Watson-1
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\drivers\\mrxdav.sys");

                switch (sysInfo.OsBuild)
                {
                case "6002":
                    if (version < 19576)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-016");
                    }
                    break;

                case "9600":
                    if (version < 18189)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-016");
                    }
                    break;

                case "10240":
                    if (version < 16683)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-016");
                    }
                    break;

                case "10586":
                    if (version < 103)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-016");
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }
コード例 #7
0
ファイル: PcadmDll.cs プロジェクト: kurtace72/Watson-1
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\pcadm.dll");

                switch (sysInfo.OsBuild)
                {
                case "10240":
                    if (version < 17861)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-8897");
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }
コード例 #8
0
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\gdi32.dll");

                switch (sysInfo.OsBuild)
                {
                case "10240":
                    if (version < 17319)
                    {
                        vulnerabilities.SetAsVulnerable("MS17-012");
                        vulnerabilities.SetAsVulnerable("MS17-017");
                    }
                    if (version < 17394)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2017-0263");
                    }
                    break;

                case "10586":
                    if (version < 839)
                    {
                        vulnerabilities.SetAsVulnerable("MS17-012");
                        vulnerabilities.SetAsVulnerable("MS17-017");
                    }
                    if (version < 916)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2017-0263");
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }
コード例 #9
0
ファイル: AfdSys.cs プロジェクト: kurtace72/Watson-1
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\drivers\\afd.sys");

                switch (sysInfo.OsBuild)
                {
                case "6001":
                    if (version < 18639)
                    {
                        vulnerabilities.SetAsVulnerable("MS11-046");
                    }

                    break;

                case "6002":
                    if (version < 18457)
                    {
                        vulnerabilities.SetAsVulnerable("MS11-046");
                    }

                    break;

                case "7600":
                    if (version < 16802)
                    {
                        vulnerabilities.SetAsVulnerable("MS11-046");
                    }

                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }
コード例 #10
0
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\win32k.sys");
                switch (sysInfo.OsBuild)
                {
                case "6001":
                    if (version < 18523)
                    {
                        vulnerabilities.SetAsVulnerable("MS10-073");
                    }
                    break;

                case "6002":
                    if (version < 18305)
                    {
                        vulnerabilities.SetAsVulnerable("MS10-073");
                    }
                    if (version < 18739)
                    {
                        vulnerabilities.SetAsVulnerable("MS13-005");
                    }
                    if (version < 18974)
                    {
                        vulnerabilities.SetAsVulnerable("MS13-101");
                    }
                    if (version < 19372)
                    {
                        vulnerabilities.SetAsVulnerable("MS15-051");
                    }
                    if (version < 19597)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-034");
                    }
                    break;

                case "7600":
                    if (version < 16667)
                    {
                        vulnerabilities.SetAsVulnerable("MS10-073");
                    }
                    if (version < 17017)
                    {
                        vulnerabilities.SetAsVulnerable("MS12-042");
                    }
                    if (version < 17175)
                    {
                        vulnerabilities.SetAsVulnerable("MS13-005");
                    }
                    break;

                case "9200":
                    if (version < 16468)
                    {
                        vulnerabilities.SetAsVulnerable("MS13-005");
                    }
                    if (version < 16758)
                    {
                        vulnerabilities.SetAsVulnerable("MS13-101");
                    }
                    if (version < 17130)
                    {
                        vulnerabilities.SetAsVulnerable("MS14-058");
                    }
                    if (version < 17343)
                    {
                        vulnerabilities.SetAsVulnerable("MS15-051");
                    }
                    break;

                case "9600":
                    if (version < 16457)
                    {
                        vulnerabilities.SetAsVulnerable("MS13-101");
                    }
                    if (version < 17796)
                    {
                        vulnerabilities.SetAsVulnerable("MS15-051");
                    }
                    if (version < 17353)
                    {
                        vulnerabilities.SetAsVulnerable("MS14-058");
                    }
                    if (version < 18228)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-034");
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }
コード例 #11
0
        public static void Check(VulnerabilityCollection vulnerabilities, SystemInfo sysInfo)
        {
            try
            {
                int version = SystemInfoHelpers.GetFileVersionInfoProductPrivatePart(sysInfo.WinPath + "\\ntoskrnl.exe");

                switch (sysInfo.OsBuild)
                {
                case "6000":
                    if (version < 16973)
                    {
                        vulnerabilities.SetAsVulnerable("MS10-015");
                    }
                    break;

                case "6001":
                    if (version < 18377)
                    {
                        vulnerabilities.SetAsVulnerable("MS10-015");
                    }
                    break;

                case "6002":
                    if (version < 18160)
                    {
                        vulnerabilities.SetAsVulnerable("MS10-015");
                    }
                    break;

                case "10240":
                    if (version < 17113)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-111");
                    }
                    if (version < 17184)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-135");
                        vulnerabilities.SetAsVulnerable("MS16-138");
                    }
                    if (version < 17946)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-0952");
                    }
                    if (version < 17976)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-8440");
                    }
                    break;

                case "10586":
                    if (version < 589)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-111");
                    }
                    if (version < 672)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-135");
                        vulnerabilities.SetAsVulnerable("MS16-138");
                    }
                    break;

                case "14393":
                    if (version < 953)
                    {
                        vulnerabilities.SetAsVulnerable("MS17-012");
                        vulnerabilities.SetAsVulnerable("MS17-017");
                    }
                    if (version < 1198)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2017-0263");
                    }
                    if (version < 2248)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-8897");
                    }
                    if (version < 2430)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-0952");
                    }
                    if (version < 2485)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-8440");
                    }
                    break;

                case "15063":
                    if (version < 296)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2017-0263");
                    }
                    if (version < 483)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-111");
                    }
                    if (version < 608)
                    {
                        vulnerabilities.SetAsVulnerable("MS16-039");
                        vulnerabilities.SetAsVulnerable("MS16-123");
                    }
                    if (version < 1266)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-0952");
                    }
                    if (version < 1324)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-8440");
                    }
                    break;

                case "16299":
                    if (version < 611)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-0952");
                    }
                    if (version < 665)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-8440");
                    }
                    break;

                case "17134":
                    if (version < 48)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-8897");
                    }
                    if (version < 228)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-0952");
                    }
                    if (version < 285)
                    {
                        vulnerabilities.SetAsVulnerable("CVE-2018-8440");
                    }
                    break;
                }
            }
            catch (Exception ex)
            {
                vulnerabilities.AddError(ex.Message);
            }
        }