Я тут начитался ужасных историй про то как php скрипты заливают под видом jpeg изображений и решил найти решение для защиты. Вот есть такой чудесный код который вставляем в .htaccess и кидаем файл в нужную папку:
<?php
<FilesMatch "\.(php|php3|php4|php5|php6|phtml|phps)$|^$">
Order allow,deny
Deny from all
</FilesMatch> ?>
Он как бы не дает исполняться скриптам в этой папке. Только я не понял одного, вот у нас файлы изображений находятся в files/styles/... и далее идет еще разделение на подпапки по размерам и т.д. Так что нужно в каждую конечную папку закидывать этот файл или как?
Комментарии
в папку стулес друпал сам заливает картинки которые генерит модулем image. Тамбнейлы всякие и тд.
блин... ты сперва попробуй реализовать такой финт ушами. а потом уж бейся в истерике. параноя - такая параноя....
так что кто-нибудь скажет как правильно размещать этот файл?
Правильно его не размещать
В друпале это не возможно.
В друпале это возможно.
А вот на нормально настроенном сервере это ни к чему не приведёт.
И уж .htaccess от этой уязвимости не спасёт
а если речь идет не о своем выделенном сервере, а о виртуальном хостинге, тоже нет смысла?
Сколько раз не пытался, не получалось. В чем секрет?
В особенностях форматов графических файлов.
Не является проблемой залить jpg, в конце которого будет похапе-код.
Но этот код ещё надо выполнить.
А выполнить его получится далеко не апачем, так что .htaccess в данном случае как порваный кондом
Нафига? Друпал при заливе переименовывает все файлы с опасными (с его точки зрения) расширениями. Причем, насколько я помню, переименовывает даже файлы типа foo.php.bar, это вторая ступень защиты (помимо .htaccess со строкой SetHandler SECURITY_DO_NOT_REMOVE) от чудо-особенности апача передавать файлы с неизвестными расширениями другим обработчикам.
Пользоваться плохо настроенными шаредами вообще не стоит.
Лежит у меня в черновиках статья про один шаред (не евробайт) который тут рекламировался как "Профессиональный", так там можно было к любому сайту на чтение доступ получить
ну вот получается что файл все-таки нужен для тех кто пользуется обычным хостингом, давайте все-таки дадим ответ на первый вопрос- куда ложить файл. А про выделенный сервер понятно и в будущем это учтем.
P.S. когда будет выделенный сервер там таких вопросов еще штук 100 появятся, как и что делать и настраивать, это отдельная тема и очень много времени нужно будет для изучения. В будущем я это планирую сделать, а пока про уменьшение рисков на вирт.хостинге хочется разобраться.
Я не понимаю с чего было решено, но соглашусь, вам нужен
я тут опытным путем выяснил что код действует на все вложенные, хотя и так можно было догадаться, поэтому размещаем в папку files. И у приведенного в топике кода есть недостатки какие уже не помню, поэтому лучше вот этот:
<?phpOptions -Indexes
php_flag engine 0
RemoveHandler .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml
AddType application/x-httpd-php-source .phtml .php .php3 .php4 .php5 .php6 .phps .cgi .exe .pl .asp .aspx .shtml .shtm .fcgi .fpl .jsp .htm .html .wml
?>
это снова я ученики мои. В общем там в директории уже есть файл .htaccess с определенной записью которая как я понял запрещает все к чертовой матери, поэтому наверное можно не вставлять мой чудо код.
Я думал больной совсем безнадёжен
мог бы кто-нибудь и подсказать вместо тролинга
мы подсказывали, как могли.
+1. Братан не обессудь
Если речь о том файле что создаёт друпал, то нет. Он нужен для защиты от чудо-особенности апача передавать файлы с неизвестными расширениями другим обработчикам.
Например, есть файл foo.php.bar Поскольку апач не знает что делать с файлами .bar но знает .php то он передаст его интерпретатору и выполнит код. Файл защищает от такой вот самодеятельности.
ну главное что эта запись не дает выполняться php какой бы формат файла не был загружен, я попробовал запустить скрипт в этой папке но не получилось, поэтому моя запись видимо не нужна. Но есть другие папки где она пригодится, у меня это папка форума.