вторник, 5 февраля 2013 г.

.htaccess в поддиректории WordPress c 777

Допустим, что плагин загружает текстовые файлы или изображения в поддиректорию WordPress. Эта поддиректория должна быть доступна для записи, т.е. для нее необходимо выставить права доступа 777, что потенциально представляет угрозу безопасности (злоумышленник может загрузить свой сценарий и взломать сайт). Для защиты можно использовать
***Вариант решения проблемы для продвинутых пользователей - использовать suEXEC (пользователь Apache получает возможность исполнять CGI и SSI программы под ID, отличающемся от ID веб-сервера).

Защита директории с помощью .htaccess

В директорию с такими правами доступа, как 760, 766, 775 или777, следует поместить файл .htaccess с инструкциями, запрещающими в этой директории и всех ее поддиректориях исполнение сценариев (файлов с определенными расширениями) и/или запись файлов кроме файлов заданных типов.

Ограничение по типам файлов

Запрет на все файлы кроме файлов с заданными расширениями:
<Files ^(*.jpeg|*.jpg|*.png|*.gif)>
order Deny,Allow
Deny from All
</Files>
Директива FilesMatch, разрешающая (Allow)  в директории только файлы заданных типов. (Запрет - аналогично с Deny вместо Allow):
<FilesMatch ".(ico|pdf|flv|jpg|jpeg|mp3|mpg|mp4|mov|wav|wmv|png|gif|swf|css|js)$">
Allow from All
</FilesMatch>
Deny from All

Запрет выполнения сценариев

Вместо выполнения сценария текст сценария в браузере

Исполняемые файлы (файлы сценариев с расширением .pl, .cgi или .php) при запросе браузера будут обрабатываться сервером как простой текст, т.е. вместо результата выполнения сценария в браузер будет передан текст сценария (он появисят в окне браузера!):
AddType text/plain .pl
AddType text/plain .cgi
AddType text/plain .php
или
AddType text/plain .pl .cgi .php

Вместо выполнения сценария страница ошибки

Директива Options -ExecCGI запрещает исполнение cgi-сценариев. Следующая директива AddHandler регистрирует все файлы с заданными расширениями как cgi-сценарии. Таким образом, при попытке доступа к файлам с этими расширениями появится страница ошибки.
Options -ExecCGI
AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi
Следующая директива отменяет все обработчики и действия, обычно применяемые к файлам с заданными расширениями, т.к. предписывает использовать эти файлы как простой текст:
<FilesMatch ".(php|pl|py|jsp|asp|htm|shtml|sh|cgi)$">
ForceType text/plain
</FilesMatch>
Источник: .htaccess for subdirectories
Всего просмотров 62, сегодня 4
Запись опубликована в рубрике htaccess с метками , , , . Добавьте в закладки постоянную ссылку.

Комментариев нет:

Отправить комментарий