diff --git a/.gitignore b/.gitignore index f6f6b8a..5f1c836 100644 --- a/.gitignore +++ b/.gitignore @@ -23,4 +23,4 @@ qualys_parser *.json test.csv real.csv -real_2.csv \ No newline at end of file +real_2.csv diff --git a/.goreleaser.yml b/.goreleaser.yml index f0a0f26..2d8dcc5 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -36,4 +36,4 @@ changelog: filters: exclude: - "^docs:" - - "^test:" \ No newline at end of file + - "^test:" diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index a7827f6..3db0d3e 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -19,7 +19,5 @@ repos: - id: validate-toml - id: no-go-testing - id: golangci-lint - args: [--skip-dirs=test] - - id: go-critic - id: go-unit-tests - id: go-build diff --git a/cmd/root.go b/cmd/root.go index 2ef9505..4bd221a 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -32,11 +32,11 @@ var rootCmd = &cobra.Command{ if outputFileName == "" { outputFileName = "parsing_result.json" } - hostIp, _ = cmd.Flags().GetString("host") + hostIP, _ = cmd.Flags().GetString("host") listOnly, _ = cmd.Flags().GetBool("list") pkgName, _ = cmd.Flags().GetString("pkg") - reportByIp, _ := cmd.Flags().GetBool("ip") - if reportByIp { + reportByIP, _ := cmd.Flags().GetBool("ip") + if reportByIP { GetVulnerabilitiesByIP() } else { GetVulnerabilities() diff --git a/cmd/vuln.go b/cmd/vuln.go index 5dc8dc7..2d11941 100644 --- a/cmd/vuln.go +++ b/cmd/vuln.go @@ -13,17 +13,18 @@ import ( var pkgName string +// VulnRecord is the struct containing values within a vulnerability record type VulnRecord struct { CveTitle string `json:"csv_title"` Severity string `json:"severity"` Solution string `json:"solution"` Count int `json:"count"` - IpList []string `json:"ip_list"` + IPList []string `json:"ip_list"` } -// CheckIfIpExist checks if ip exists in a slice -func CheckIfIpExist(ip string, IpList []string) bool { - for _, value := range IpList { +// CheckIfIPExist checks if ip exists in a slice +func CheckIfIPExist(ip string, IPList []string) bool { + for _, value := range IPList { if value == ip { return true } @@ -43,13 +44,13 @@ func PrsRrdVuln(vulnDict map[string]VulnRecord, record []string, severityMap map Severity: severityMap[record[11]], Solution: record[28], Count: 1, - IpList: []string{record[0]}, + IPList: []string{record[0]}, } } // Check if the ip is in the list of ips belonging to the vuln record - if !CheckIfIpExist(record[0], vulnDict[pkg].IpList) { - newIPList := append(vulnDict[pkg].IpList, record[0]) + if !CheckIfIPExist(record[0], vulnDict[pkg].IPList) { + newIPList := append(vulnDict[pkg].IPList, record[0]) newCount := vulnDict[pkg].Count + 1 vulnDict[pkg] = VulnRecord{ @@ -57,7 +58,7 @@ func PrsRrdVuln(vulnDict map[string]VulnRecord, record []string, severityMap map Severity: vulnDict[pkg].Severity, Solution: vulnDict[pkg].Solution, Count: newCount, - IpList: newIPList, + IPList: newIPList, } } } @@ -72,12 +73,13 @@ func GetVulnDictKeys(vulnDict map[string]VulnRecord) []string { return vulnList } -// WriteMapToFile write to json file given a map +// WriteVulnMapToFile write to json file given a map func WriteVulnMapToFile(fileName string, ipDict map[string]VulnRecord) { jsonString, _ := json.Marshal(ipDict) - ioutil.WriteFile(fileName, jsonString, os.ModePerm) + _ = ioutil.WriteFile(fileName, jsonString, os.ModePerm) } +// GetVulnerabilities parses input report func GetVulnerabilities() { vulnDict := make(map[string]VulnRecord) severityMap := map[string]string{ @@ -96,7 +98,7 @@ func GetVulnerabilities() { r := csv.NewReader(f) - ip_order := 0 + ipOrder := 0 for { record, err := r.Read() if err == io.EOF { @@ -104,11 +106,11 @@ func GetVulnerabilities() { } if record[0] == "IP" { - ip_order += 1 + ipOrder++ continue } - if ip_order == 2 { + if ipOrder == 2 { PrsRrdVuln(vulnDict, record, severityMap) } } @@ -126,11 +128,11 @@ func GetVulnerabilities() { } else { _, valueInDict := vulnDict[pkgName] - if len(vulnDict[pkgName].IpList) == 0 || !valueInDict { + if len(vulnDict[pkgName].IPList) == 0 || !valueInDict { fmt.Printf("The ip(s) for the package %s cannot be found!\n", pkgName) } else { fmt.Printf("The ip(s) found for the package %s are:\n", pkgName) - fmt.Println(strings.Join(vulnDict[pkgName].IpList, "\n")) + fmt.Println(strings.Join(vulnDict[pkgName].IPList, "\n")) } } } diff --git a/cmd/vulnbyip.go b/cmd/vulnbyip.go index 87e7122..c730349 100644 --- a/cmd/vulnbyip.go +++ b/cmd/vulnbyip.go @@ -14,11 +14,11 @@ import ( var inputFileName string var outputFileName string var detailSet bool -var hostIp string +var hostIP string var listOnly bool -// PrsRrdVulnByIp parses each record in csv and updates the dictionary -func PrsRrdVulnByIp(ipDict map[string]map[string]bool, ip string, packages *[]string) { +// PrsRrdVulnByIP parses each record in csv and updates the dictionary +func PrsRrdVulnByIP(ipDict map[string]map[string]bool, ip string, packages *[]string) { // Check if value in Dictionary _, valueInDict := ipDict[ip] if !valueInDict { @@ -83,13 +83,13 @@ func GetIPDictKeys(ipDict map[string]map[string]bool) []string { return ipList } -// WriteMapToFile write to json file given a map +// WriteIPMapToFile writes to json file given a map func WriteIPMapToFile(fileName string, ipDict map[string][]string) { jsonString, _ := json.Marshal(ipDict) - ioutil.WriteFile(fileName, jsonString, os.ModePerm) + _ = ioutil.WriteFile(fileName, jsonString, os.ModePerm) } -// GetVulnerabilitiesByIP get the list of vulnerabilities for each ip +// GetVulnerabilitiesByIP gets the list of vulnerabilities for each ip func GetVulnerabilitiesByIP() { ipDict := make(map[string]map[string]bool) @@ -101,7 +101,7 @@ func GetVulnerabilitiesByIP() { r := csv.NewReader(f) - ip_order := 0 + ipOrder := 0 for { record, err := r.Read() if err == io.EOF { @@ -109,19 +109,19 @@ func GetVulnerabilitiesByIP() { } if record[0] == "IP" { - ip_order += 1 + ipOrder++ continue } - if ip_order == 2 { + if ipOrder == 2 { // 31 is Result field packages := ParsePackage(record[31]) - PrsRrdVulnByIp(ipDict, record[0], &packages) + PrsRrdVulnByIP(ipDict, record[0], &packages) } } convertedDict := convertDict(ipDict) - if hostIp == "" { + if hostIP == "" { if listOnly { ipDictKeys := GetIPDictKeys(ipDict) fmt.Printf("The IPs with vulnerable packages:\n") @@ -131,11 +131,11 @@ func GetVulnerabilitiesByIP() { WriteIPMapToFile(outputFileName, convertedDict) } } else { - if len(convertedDict[hostIp]) == 0 { - fmt.Printf("The vulnerable package(s) found for the host %s cannot be found!\n", hostIp) + if len(convertedDict[hostIP]) == 0 { + fmt.Printf("The vulnerable package(s) found for the host %s cannot be found!\n", hostIP) } else { - fmt.Printf("The vulnerable package(s) found for the host %s are:\n", hostIp) - fmt.Println(strings.Join(convertedDict[hostIp], "\n")) + fmt.Printf("The vulnerable package(s) found for the host %s are:\n", hostIP) + fmt.Println(strings.Join(convertedDict[hostIP], "\n")) } } } diff --git a/samples/report.csv b/samples/report.csv index beedb47..9ff4249 100755 --- a/samples/report.csv +++ b/samples/report.csv @@ -25,19 +25,19 @@ Total,0,0,0,0,0,0,0,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, IP,Network,DNS,NetBIOS,Tracking Method,OS,IP Status,QID,Title,Vuln Status,Type,Severity,Port,Protocol,FQDN,SSL,First Detected,Last Detected,Times Detected,Date Last Fixed,CVE ID,Vendor Reference,Bugtraq ID,CVSS3,CVSS3 Base,CVSS3 Temporal,Threat,Impact,Solution,Exploitability,Associated Malware,Results,PCI Vuln,Ticket State,Instance,OS CPE,Category,Associated Tags,Non-running Kernel 172.30.1.1,Global Default Network,event-stream-rabbitmq-node-2,event-stream-rabbitmq-node-2,QAGENT,Ubuntu Linux 16.04.6,"host scanned, found vuln",197733,Ubuntu Security Notification for Git Vulnerabilities (USN-4220-1),Active,Vuln,3,,,,,5/4/2020 16:26,3/7/2021 21:27,1498,,"CVE-2019-1348, CVE-2019-1349, CVE-2019-1350, CVE-2019-1351, CVE-2019-1352, CVE-2019-1353, CVE-2019-1354, CVE-2019-1387, CVE-2019-19604",USN-4220-1,,7.8,9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H),7.8 (E:U/RL:O/RC:U), It was discovered that Git contained various security flaws.," An attacker could possibly use these issues to overwrite arbitrary paths, execute arbitrary code, and overwrite files in the .git directory.","Refer to Ubuntu advisory USN-4220-1 (https://lists.ubuntu.com/archives/ubuntu-security-announce/2019-December/005244.html) for affected packages and patching details, or update with your package manager. - Patch: + Patch: Following are links for downloading patches to fix the vulnerabilities: USN-4220-1: 18.04 (bionic) on src (git) (https://launchpad.net/ubuntu/+source/git/1:2.17.1-1ubuntu0.5) USN-4220-1: 19.10 (eoan) on src (git) (https://launchpad.net/ubuntu/+source/git/1:2.20.1-2ubuntu1.19.10.1) USN-4220-1: 19.04 (disco) on src (git) (https://launchpad.net/ubuntu/+source/git/1:2.20.1-2ubuntu1.19.04.1) USN-4220-1: 16.04 (Xenial) on src (git) (https://launchpad.net/ubuntu/+source/git/1:2.7.4-0ubuntu1.7)",,,"Package Installed Version Required Version git-man 1:2.7.4-0ubuntu1.6 1:2.7.4-0ubuntu1.7#",yes,,,,Ubuntu,,No 172.30.1.2,Global Default Network,event-stream-rabbitmq-node-1,event-stream-rabbitmq-node-1,QAGENT,Ubuntu Linux 16.04.6,"host scanned, found vuln",197733,Ubuntu Security Notification for Git Vulnerabilities (USN-4220-1),Active,Vuln,3,,,,,5/20/2020 11:34,3/7/2021 20:30,1436,,"CVE-2019-1348, CVE-2019-1349, CVE-2019-1350, CVE-2019-1351, CVE-2019-1352, CVE-2019-1353, CVE-2019-1354, CVE-2019-1387, CVE-2019-19604",USN-4220-1,,7.8,9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H),7.8 (E:U/RL:O/RC:U), It was discovered that Git contained various security flaws.," An attacker could possibly use these issues to overwrite arbitrary paths, execute arbitrary code, and overwrite files in the .git directory.","Refer to Ubuntu advisory USN-4220-1 (https://lists.ubuntu.com/archives/ubuntu-security-announce/2019-December/005244.html) for affected packages and patching details, or update with your package manager. - Patch: + Patch: Following are links for downloading patches to fix the vulnerabilities: USN-4220-1: 18.04 (bionic) on src (git) (https://launchpad.net/ubuntu/+source/git/1:2.17.1-1ubuntu0.5) USN-4220-1: 19.10 (eoan) on src (git) (https://launchpad.net/ubuntu/+source/git/1:2.20.1-2ubuntu1.19.10.1) USN-4220-1: 19.04 (disco) on src (git) (https://launchpad.net/ubuntu/+source/git/1:2.20.1-2ubuntu1.19.04.1) USN-4220-1: 16.04 (Xenial) on src (git) (https://launchpad.net/ubuntu/+source/git/1:2.7.4-0ubuntu1.7)",,,"Package Installed Version Required Version git-man 1:2.7.4-0ubuntu1.6 1:2.7.4-0ubuntu1.7#",yes,,,,Ubuntu,,No 172.30.1.3,Global Default Network,i-0c1fdf72b,i-0c1fdf72b,QAGENT,Ubuntu Linux 16.04.3,"host scanned, found vuln",197723,"Ubuntu Security Notification for Linux, Linux-aws, Linux-kvm, Linux-raspi2, Linux-snapdragon (USN-4211-1)",Active,Vuln,3,,,,,4/27/2020 10:36,3/7/2021 20:23,1570,,"CVE-2018-20784, CVE-2019-17075, CVE-2019-17133",USN-4211-1,,7.8,9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H),7.8 (E:U/RL:O/RC:U)," It was discovered that an infinite loop could be triggered in the CFS Linux kernel process scheduler. It was discovered that the WiFi driver stack in the Linux kernel did not properly validate SSID lengths. It was discovered that the Chelsio T4/T5 RDMA Driver for the Linux kernel performed DMA from a kernel stack.", A local attacker could possibly use this to cause a denial of service. (CVE-2018-20784) A physically proximate attacker could use this to cause a denial of service (system crash). (CVE-2019-17133) A local attacker could use this to cause a denial of service (system crash). (CVE-2019-17075),"Refer to Ubuntu advisory USN-4211-1 (https://lists.ubuntu.com/archives/ubuntu-security-announce/2019-December/005229.html) for affected packages and patching details, or update with your package manager. - Patch: + Patch: Following are links for downloading patches to fix the vulnerabilities: USN-4211-1: 16.04 (Xenial) on src (linux-image-snapdragon) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-generic-lpae) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-virtual) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc-e500mc) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc64-emb) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-generic) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc64-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc64-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-aws) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-raspi2) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1126-raspi2) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-lowlatency) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1099-aws) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1063-kvm) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-generic-lpae) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-lowlatency) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-generic) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc-e500mc) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1130-snapdragon) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc64-emb) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-kvm) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199)",,,"Package Installed Version Required Version linux-image-aws 4.4.0.1048.50 4.4.0.1099.103 @@ -45,7 +45,7 @@ linux-libc-dev 4.4.0-109.132 4.4.0-170.199#",yes,,,,Ubuntu,,Yes 172.30.1.4,Global Default Network,i-0b6af332e,i-0b6af332e,QAGENT,Ubuntu Linux 16.04.3,"host scanned, found vuln",197723,"Ubuntu Security Notification for Linux, Linux-aws, Linux-kvm, Linux-raspi2, Linux-snapdragon (USN-4211-1)",Active,Vuln,3,,,,,4/27/2020 12:39,3/7/2021 19:26,1563,,"CVE-2018-20784, CVE-2019-17075, CVE-2019-17133",USN-4211-1,,7.8,9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H),7.8 (E:U/RL:O/RC:U)," It was discovered that an infinite loop could be triggered in the CFS Linux kernel process scheduler. It was discovered that the WiFi driver stack in the Linux kernel did not properly validate SSID lengths. It was discovered that the Chelsio T4/T5 RDMA Driver for the Linux kernel performed DMA from a kernel stack.", A local attacker could possibly use this to cause a denial of service. (CVE-2018-20784) A physically proximate attacker could use this to cause a denial of service (system crash). (CVE-2019-17133) A local attacker could use this to cause a denial of service (system crash). (CVE-2019-17075),"Refer to Ubuntu advisory USN-4211-1 (https://lists.ubuntu.com/archives/ubuntu-security-announce/2019-December/005229.html) for affected packages and patching details, or update with your package manager. - Patch: + Patch: Following are links for downloading patches to fix the vulnerabilities: USN-4211-1: 16.04 (Xenial) on src (linux-image-snapdragon) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-generic-lpae) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-virtual) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc-e500mc) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc64-emb) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-generic) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc64-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc64-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-aws) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-raspi2) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1126-raspi2) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-lowlatency) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1099-aws) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1063-kvm) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-generic-lpae) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-lowlatency) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-generic) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc-e500mc) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1130-snapdragon) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc64-emb) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-kvm) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199)",,,"Package Installed Version Required Version linux-image-aws 4.4.0.1048.50 4.4.0.1099.103 @@ -53,17 +53,17 @@ linux-libc-dev 4.4.0-109.132 4.4.0-170.199#",yes,,,,Ubuntu,,Yes 172.30.1.5,Global Default Network,i-0442cdd90,i-0442cdd90,QAGENT,Ubuntu Linux 16.04.3,"host scanned, found vuln",197723,"Ubuntu Security Notification for Linux, Linux-aws, Linux-kvm, Linux-raspi2, Linux-snapdragon (USN-4211-1)",Active,Vuln,3,,,,,4/27/2020 12:51,3/7/2021 19:43,1573,,"CVE-2018-20784, CVE-2019-17075, CVE-2019-17133",USN-4211-1,,7.8,9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H),7.8 (E:U/RL:O/RC:U)," It was discovered that an infinite loop could be triggered in the CFS Linux kernel process scheduler. It was discovered that the WiFi driver stack in the Linux kernel did not properly validate SSID lengths. It was discovered that the Chelsio T4/T5 RDMA Driver for the Linux kernel performed DMA from a kernel stack.", A local attacker could possibly use this to cause a denial of service. (CVE-2018-20784) A physically proximate attacker could use this to cause a denial of service (system crash). (CVE-2019-17133) A local attacker could use this to cause a denial of service (system crash). (CVE-2019-17075),"Refer to Ubuntu advisory USN-4211-1 (https://lists.ubuntu.com/archives/ubuntu-security-announce/2019-December/005229.html) for affected packages and patching details, or update with your package manager. - Patch: + Patch: Following are links for downloading patches to fix the vulnerabilities: USN-4211-1: 16.04 (Xenial) on src (linux-image-snapdragon) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-generic-lpae) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-virtual) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc-e500mc) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc64-emb) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-generic) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc64-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc64-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-aws) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-raspi2) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1126-raspi2) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-lowlatency) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1099-aws) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1063-kvm) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-generic-lpae) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-lowlatency) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-generic) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc-e500mc) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-powerpc-smp) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-1130-snapdragon) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-4.4.0-170-powerpc64-emb) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199) USN-4211-1: 16.04 (Xenial) on src (linux-image-kvm) (https://launchpad.net/ubuntu/+source/linux/4.4.0-170.199)",,,"Package Installed Version Required Version linux-image-aws 4.4.0.1048.50 4.4.0.1099.103 linux-libc-dev 4.4.0-109.132 4.4.0-170.199#",yes,,,,Ubuntu,,Yes -172.30.1.6,Global Default Network,i-00176a5b0,i-00176a5b0,QAGENT,Ubuntu Linux 16.04.7,"host scanned, found vuln",650035,OpenSSH Information Disclosure Vulnerability,Active,Vuln,3,,,,,2/22/2021 16:54,3/5/2021 5:20,59,,CVE-2020-14145,OpenSSH 8.4,,5.4,5.9 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N),5.4 (E:U/RL:U/RC:C),"OpenSSH is the premier connectivity tool for remote login with the SSH protocol. -The client side in OpenSSH 5.7 through 8.3 has an Observable Discrepancy leading to an information leak in the algorithm negotiation. This allows man-in-the-middle attackers to target initial connection attempts (where no host key for the server has been cached by the client). Affected Versions: - OpenSSH 5.7 through 8.3 +172.30.1.6,Global Default Network,i-00176a5b0,i-00176a5b0,QAGENT,Ubuntu Linux 16.04.7,"host scanned, found vuln",650035,OpenSSH Information Disclosure Vulnerability,Active,Vuln,3,,,,,2/22/2021 16:54,3/5/2021 5:20,59,,CVE-2020-14145,OpenSSH 8.4,,5.4,5.9 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N),5.4 (E:U/RL:U/RC:C),"OpenSSH is the premier connectivity tool for remote login with the SSH protocol. +The client side in OpenSSH 5.7 through 8.3 has an Observable Discrepancy leading to an information leak in the algorithm negotiation. This allows man-in-the-middle attackers to target initial connection attempts (where no host key for the server has been cached by the client). Affected Versions: + OpenSSH 5.7 through 8.3 -QID Detection Logic: -The QID checks for the vulnerable versions of OpenSSH",On successful exploitation it allows man-in-the-middle attackers to target initial connection attempts.,"OpenSSH team committed a partial mitigation of this issue which is included in openssh 8.4. +QID Detection Logic: +The QID checks for the vulnerable versions of OpenSSH",On successful exploitation it allows man-in-the-middle attackers to target initial connection attempts.,"OpenSSH team committed a partial mitigation of this issue which is included in openssh 8.4. Refer to OpenSSH 8.4 (https://www.openssh.com/) for details.",,,"Vulnerable version of OpenSSH Detected: OpenSSH_7.2p2 Ubuntu-4ubuntu2.10, OpenSSL 1.0.2g 1 Mar 2016#",yes,,,,Security Policy,,No