nameveiof
Новичок
кратко:
Если существует форма аплоада то, как известно, плохо продуманная обработка выгруженных пользователем файлов подвергает опасности сайт. Могут выгрузить файлы с вредоносным кодом.
Хорошее ли решение для безопасности -- выгруженные файлы в папке upload сжимать в zip и давать своё имя + добавить рэндомный набор символов в конце (5 знаков допустим)
http://22.p.ht/1/page48.html
вот страница, ещё буду переделывать.
----------------------------------------------------------
подробно:
Делаю страницу конструктор цены с формой выгрузки файлов. (файлы можно и не выгружать здесь я о варианте если выгрузят)
При нажатии отправить все данные передаются php скрипту через post
В форме выгрузки имя файла проверяется javascriptом на клиентской части на не валидные символы,
и на разрешённое расширение.
при нажатии субмита делается следующее:
1 формируется pdf в котором записаны результаты выбора
2 принимается выгруженный файл
3 pdf выдаётся юзеру с именем по которому не определить что складывается в upload например "Zakaz_#01_Vasya_pupkin.pdf"
4 выгруженный файл + pdf отправляются в почту менеджеру магазина
5 и главное выгруженный файл + pdf архивируются вместе (zip или rar) им даётся имя номер заказа_дата_время_рэндомные символы.zip
пример
"00001__09_04_2013__11_02_b3sjk.zip"
Вот такие файлы будут в папке upload.
Вопрос.
Такие меры которые я предпринимаю с точки зрения безопасности надёжны, достаточны, правильны, что то ещё можно предпринять?
Ещё думаю правильно добавить в папке upload htacess с директивой отключающей выполнение php в ней
и урезать права файлу .htacess по минимому 444 или 400
Естественно и самые минимальные для выполнения операций выставить права в папке upload
Я бы вынес на отдельный поддомен файлы, но такой возможности у заказчика нет.
----------------------------------------------------------
Задача всего этого сделать безопасную выгрузку файлов в папку uploads, чтобы злоумышленник не мог или труднее было взломать сайт например исполнив загруженные файлы с внедрённым кодом.
Проверка на клиентской стороне конечно ничего не даёт её легко обойти. Она только для удобства клиентов.
Если существует форма аплоада то, как известно, плохо продуманная обработка выгруженных пользователем файлов подвергает опасности сайт. Могут выгрузить файлы с вредоносным кодом.
Хорошее ли решение для безопасности -- выгруженные файлы в папке upload сжимать в zip и давать своё имя + добавить рэндомный набор символов в конце (5 знаков допустим)
http://22.p.ht/1/page48.html
вот страница, ещё буду переделывать.
----------------------------------------------------------
подробно:
Делаю страницу конструктор цены с формой выгрузки файлов. (файлы можно и не выгружать здесь я о варианте если выгрузят)
При нажатии отправить все данные передаются php скрипту через post
В форме выгрузки имя файла проверяется javascriptом на клиентской части на не валидные символы,
и на разрешённое расширение.
при нажатии субмита делается следующее:
1 формируется pdf в котором записаны результаты выбора
2 принимается выгруженный файл
3 pdf выдаётся юзеру с именем по которому не определить что складывается в upload например "Zakaz_#01_Vasya_pupkin.pdf"
4 выгруженный файл + pdf отправляются в почту менеджеру магазина
5 и главное выгруженный файл + pdf архивируются вместе (zip или rar) им даётся имя номер заказа_дата_время_рэндомные символы.zip
пример
"00001__09_04_2013__11_02_b3sjk.zip"
Вот такие файлы будут в папке upload.
Вопрос.
Такие меры которые я предпринимаю с точки зрения безопасности надёжны, достаточны, правильны, что то ещё можно предпринять?
Ещё думаю правильно добавить в папке upload htacess с директивой отключающей выполнение php в ней
PHP:
deny from all
<Files>
order deny,allow
allow from all
</Files>
php_flag engine 0
AddType "text/html" .php .cgi .pl .fcgi .fpl .phtml .shtml .php2 .php3 .php4 .php5 .asp .jsp
и урезать права файлу .htacess по минимому 444 или 400
Естественно и самые минимальные для выполнения операций выставить права в папке upload
Я бы вынес на отдельный поддомен файлы, но такой возможности у заказчика нет.
----------------------------------------------------------
Задача всего этого сделать безопасную выгрузку файлов в папку uploads, чтобы злоумышленник не мог или труднее было взломать сайт например исполнив загруженные файлы с внедрённым кодом.
Проверка на клиентской стороне конечно ничего не даёт её легко обойти. Она только для удобства клиентов.