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

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Уязвимости (https://forum.antichat.xyz/forumdisplay.php?f=74)
-   -   "Загадка" для хакера (https://forum.antichat.xyz/showthread.php?t=37953)

Xex 14.04.2007 18:14

"Загадка" для хакера
 
Имеется запрос вида

script.php?start=0&len=20

в скрипте он обрабатывается так
$sql="SELECT shell FROM table WHERE id=1 LIMIT".$start.",".$len;

$file = fopen("file".$start."_".$len"."html");
fputs ($file, [РЕЗУЛЬТАТ СКУЛЬ ЗАПРОСА, АКА ШЕЛЛ]);
fclose ($file);


Как составить запрос так, чтобы и мускуль вывел шелл и файл создать с пхп расширением?

P>S>нульбайт можно вставлять и любые кавычки, т.е. подобных запретов нет

andy13 14.04.2007 18:57

script.php?start=1,1--&len=.php%00

так пойдет?
это такая фишка, что fopen написана не полностью и с лишней
кавычкой?
$file = fopen("file".$start."_".$len."html",'w');

Joker-jar 14.04.2007 19:09

Цитата:

$sql="SELECT shell FROM table WHERE id=1 LIMIT".$start.",".$len;
После LIMIT нет пробела. И len=.php%00 не пройдет в запросе...

Xex 14.04.2007 19:15

пзл, не придирайтесь к синтаксису, писал чтобы передать смысл.

RE:"script.php?start=1,1--&len=.php%00" - такой вариант не подойдет, такой вид коммента(--) фильтруеца к сожалению

andy13 14.04.2007 19:17

Joker-jar, почему не пройдет?
толькочто проверил локально - работает.
Цитата:

После LIMIT нет пробела.
script.php?start=%201,1--&len=.php%00

Xex, может, попробовать залить через "into outfile"?
Или нет прав?

Joker-jar 14.04.2007 19:36

Как я понял, нужно не только создать php файл, но еще и шелл залить. Тогда инъекция нужна.
Цитата:

$sql="SELECT shell FROM table WHERE id=1 LIMIT".$start.",".$len;
Инъекция после LIMIT. Если в $start передавать что-нибудь типа 1000000+union+select+... то придется коментить остальную часть запроса
Код:

",".$len;
, но * не пропустится в имя файла...

Xex 15.04.2007 01:16

Цитата:

Сообщение от Joker-jar
Как я понял, нужно не только создать php файл, но еще и шелл залить. Тогда инъекция нужна.

Инъекция после LIMIT. Если в $start передавать что-нибудь типа 1000000+union+select+... то придется коментить остальную часть запроса
Код:

",".$len;
, но * не пропустится в имя файла...

во-во...вот и думаю, неплохая задачка вышла=)


Время: 20:04