11.03.2010, 15:13 | #1 | |
Мафиози
Регистрация: 11.09.2008
Адрес: <H1></H1>
Сообщений: 1,174
Вес репутации: 248
|
Делаю скрипт загрузки файлов, подскажите по безопасности
http://habrahabr.ru/blogs/php/44610/
Прочитал эту статью, и не понял, хватит ли мне всего одного этого метода - Цитата:
PHP код:
__________________
|
|
11.03.2010, 15:16 | #2 |
Эксперт
Регистрация: 03.07.2007
Адрес: Chinatown
Сообщений: 7,265
Вес репутации: 614
|
имхо, лучше сделать список разрешенных форматов файлов.
Разрешённые типы файлов: bmp doc gif jpe jpeg jpg pdf png psd txt zip
__________________
тексты по 10 руб/кзнак автоматизируй все, не мучайся! |
11.03.2010, 15:19 | #3 |
Мафиози
Регистрация: 11.09.2008
Адрес: <H1></H1>
Сообщений: 1,174
Вес репутации: 248
|
MonAmur, а почему нельзя чёрный список? Узнать у хостера список форматов, которые выполняются на сервере и в чёрный лист всё
__________________
|
11.03.2010, 15:25 | #5 |
Мафиози
Регистрация: 11.09.2008
Адрес: <H1></H1>
Сообщений: 1,174
Вес репутации: 248
|
ну поправить не проблема мне просто нужно чтоб любые форматы загружались. кроме чёрного списка конечно же.
Есть ещё опасности, кроме того что сменить ПО может хостер?
__________________
|
11.03.2010, 18:12 | #6 |
Новичок
Регистрация: 12.10.2009
Сообщений: 48
Вес репутации: 183
|
статья правильная, вопрос в том что именно вы хотите загрузить :-) можно и в графику код запихнуть... можно открывать файл и искать в нем include print <? и прочую хрень, можно настроить сервак с отключением выполнения php кода в той папке в которую грузите что либо
и естественно проверка расширения и mime типа если он есть и нужен |
11.03.2010, 18:36 | #7 |
Специалист
Регистрация: 19.11.2009
Сообщений: 157
Вес репутации: 186
|
в принципе безопасно, но все же лучше список допустимых расширений... так надежней... зачем разрешать грузить что попало?
Кто знает, какие настройки хостинга к примеру, и может скоро по дефолту будет ставиться какой-нить .php6, а у вас нет проверки на это, вы забыли, это было год назад, не проверяли - тут хоп, можно загрузить и выполнить))) ну и если чудом получат доступ к .htaccess или конфигу апача - то понятно, что легко добавить произв. расширение - чтоб обрабатывалось PHP, но это вряд ли, конечно... обычно если имеют сюда доступ - то и доступ к сайту уже имеют))) Я делаю "список допустимых расширений", имя файла генерю сам уникальное + расшиерние, так 100% безопасно... Можно еще в папке запретить выполнение скриптов. |
12.03.2010, 11:07 | #9 |
Новичок
Регистрация: 15.07.2008
Сообщений: 2
Вес репутации: 0
|
Список запрещенных не особо помогает, делать лучше через список разрешенных, потому что как известно есть одна недоработка апача, например можно загрузить файл somebadfile.php.1 и он будет обрабатыватся как пхп файл (исполнятся) а проверку на "плохой" файл пройдет
|
12.03.2010, 14:05 | #10 |
Мастер
Регистрация: 17.03.2008
Сообщений: 638
Вес репутации: 242
|
На самом деле все можно разрешить загружать, если запретить доступ к файлам напрямую через вебсервер (как например на форумах вложения делают)
Тогда пользователю надо отдавать файл через скрипт (правда при этом может увеличиться нагрузка на сервер при скачивании файлов) |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подскажите где я не так делаю? | nibbl | Установка кода на различные движки | 2 | 06.09.2009 23:57 |
Подскажите программу для массового сравнения файлов | Grush | Курилка | 5 | 09.08.2009 10:03 |
Подскажите что я не так делаю? | Alexan | Яндекс | 21 | 25.08.2008 23:01 |
Убыстрение загрузки JS и CSS файлов. | Kashey | Разработка и сопровождение сайтов | 9 | 02.02.2008 13:33 |
Часовой пояс GMT +3, время: 10:42.