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

  #8  
Старый 06.07.2011, 21:04
попугай
Познавший АНТИЧАТ
Регистрация: 15.01.2008
Сообщений: 1,166
С нами: 9642449

Репутация: 606


По умолчанию

Цитата:
Сообщение от Chrome~  
Этот вариант с null байтом срабатывает довольно редко.
Но все это натолкнуло меня на одну мысль, если я не прав, тогда исправьте.
Вот здесь делаеться замечательная проверка:
PHP код:
[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"gif"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )

[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"GIF"[/COLOR][COLOR="#007700"];

elseif
([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"jpeg"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )

[/COLOR][COLOR="#0000BB"]$extension[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]"JPEG"[/COLOR][COLOR="#007700"];[/COLOR][/COLOR
Но что если ниодно из условий не выполниться? -
$extension
не перезапишется. Мы можем сделать так, что бы в переменной
$_FILES['pic']['type']
не оказалось подстрок
gif
и
jpeg
и с помощью GET параметров указать значение
$extension
вот так:
Мы снова должны получить шелл.
Зависимость:
register_globals=on
Проверка происходит здесь

PHP код:
[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if ([/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"gif"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) ||[/COLOR][COLOR="#0000BB"]eregi[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"jpeg"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$filetype[/COLOR][COLOR="#007700"]) )

{

if
([/COLOR][COLOR="#0000BB"]move_uploaded_file[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'pic'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'tmp_name'[/COLOR][COLOR="#007700"]],[/COLOR][COLOR="#DD0000"]"../web/[/COLOR][COLOR="#0000BB"]$session_setup[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#0000BB"]login[/COLOR][COLOR="#007700"]][/COLOR][COLOR="#DD0000"]/[/COLOR][COLOR="#0000BB"]$filename[/COLOR][COLOR="#DD0000"]"[/COLOR][COLOR="#007700"]) )

{[/COLOR][/COLOR
 
Ответить с цитированием