Показать сообщение отдельно

  #8  
Старый 10.08.2011, 17:22
ne0k
Познающий
Регистрация: 03.03.2011
Сообщений: 51
С нами: 7997366

Репутация: 0
По умолчанию

инклуд не инклуд

Наткнулся на код, в котором значение из $_GET напрямую передается в класс PhpThumbFactory::create.. В этом классе происходит проверка на валидность входного IMG файла.. Т.е, если я подставляю:

?filename=/../../1.jpg , отображается соответственно сама картинка, находящаяся в корне.. При попытке прочитать реальную JPG, GIF, PNG, читается из любого места.. А вот прочитать файл другого формата не удается, все это проверяется, и мозгов у меня пока не хватает, чтобы сделать какие либо выводы..

PHP код:
[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"][/COLOR][COLOR="#0000BB"]resize[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$width[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$height[/COLOR][COLOR="#007700"]);

[/
COLOR][COLOR="#0000BB"]$thumb[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]show[/COLOR][COLOR="#007700"]();

[/
COLOR][COLOR="#0000BB"]$thumb[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]destruct[/COLOR][COLOR="#007700"]();

[/
COLOR][COLOR="#0000BB"]?>

[/COLOR][/COLOR] 
Существуют ли методы обхода, или как можно заставить PHP код выполниться в реальном IMG файле? И вообще, уязвимость ли это, или просто фича?

php 5.3.6

З.ы.:magic_quotes_gpc=Off,

З.ы.ы.: Проверка идет по mime типу и еще по нескольким параметрам..
 
Ответить с цитированием