CVE-2020-3952· vmware / vcenter server· CWE-306
VMware vCenter Server LDAP Broken Access Control
Exploited in the wild. Listed by CISA on 2021-11-03; known to be used by ransomware.
criticalseverity
9.8CVSS score
90.4%likelihood of exploitation, next 30 days
100%of all CVEs are less likely
Readycheck to confirm it
Under certain conditions, vmdir that ships with VMware vCenter Server, as part of an embedded or external Platform Services Controller (PSC), does not correctly implement access controls.
Impact
Unauthorized users may access sensitive functions, potentially leading to privilege escalation or data exposure.
Fix
Apply the latest security patches and updates provided by VMware to address access control issues.
How to confirm it
Send: POST /sdk/
Positive when: contains "RetrieveServiceContentResponse" or "urn:vim" AND contains in content_type "text/xml" AND status 200 AND compare_versions(version, '< 6.7.0')Run it with nuclei: nuclei -id CVE-2020-3952 -u <target>. This check is not marked as verified by its authors.
The full check
id: CVE-2020-3952
info:
name: VMware vCenter Server LDAP Broken Access Control
author: 0x_Akoko
severity: critical
description: |
Under certain conditions, vmdir that ships with VMware vCenter Server, as part of an embedded or external Platform Services Controller (PSC), does not correctly implement access controls.
impact: |
Unauthorized users may access sensitive functions, potentially leading to privilege escalation or data exposure.
remediation: |
Apply the latest security patches and updates provided by VMware to address access control issues.
reference:
- https://nvd.nist.gov/vuln/detail/CVE-2020-3952
- https://www.vmware.com/security/advisories/VMSA-2020-0006.html
- https://github.com/guardicore/vmware_vcenter_cve_2020_3952
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2020-3952
cwe-id: CWE-306
epss-score: 0.90384
epss-percentile: 0.99802
cpe: cpe:2.3:a:vmware:vcenter_server:6.7:-:*:*:*:*:*:*
metadata:
verified: false
max-request: 1
vendor: vmware
product: vcenter_server
tags: cve,cve2020,vmware,vcenter,ldap,auth-bypass,passive,kev,vkev,vuln
http:
- raw:
- |
POST /sdk/ HTTP/1.1
Host: {{Hostname}}
Content-Type: text/xml
SOAPAction: "urn:vim25/6.5"
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Header>
<operationID>00000001-00000001</operationID>
</soap:Header>
<soap:Body>
<RetrieveServiceContent xmlns="urn:internalvim25">
<_this xsi:type="ManagedObjectReference" type="ServiceInstance">ServiceInstance</_this>
</RetrieveServiceContent>
</soap:Body>
</soap:Envelope>
matchers-condition: and
matchers:
- type: word
part: body
words:
- 'RetrieveServiceContentResponse'
- 'urn:vim'
condition: or
- type: word
part: content_type
words:
- "text/xml"
- type: status
status:
- 200
- type: dsl
dsl:
- compare_versions(version, '< 6.7.0')
extractors:
- type: regex
part: body
name: version
group: 1
regex:
- "<version>([^<]+)</version>"References
- https://nvd.nist.gov/vuln/detail/CVE-2020-3952
- https://www.vmware.com/security/advisories/VMSA-2020-0006.html
- https://github.com/guardicore/vmware_vcenter_cve_2020_3952
Use this check only on systems you are authorised to test. Where the data comes from