Наибольшую угрозу для сайта представляют собой залитые злоумышленником на сервер PHP шеллы. PHP шеллы - Это PHP скрипты которые могут выполняться на вашем сервере, соответственно производить какие-либо изменения в файлах доступных для записи или могут, например читать содержимое конфигурационных данных и соответственно получать прямой доступ к базе данных. Как могут попадать PHP шеллы на ваш сервер? При обнаружении какой либо уязвимости в скрипте, или сторонних модулях, или вообще при наличии других уязвимых сторонних скриптов на сервере, или серверного ПО. Главная особенность заключается в том, что PHP шеллы можно залить не в любые папки на сервере, а лишь в папки доступные для записи на сервере, и в такими папками являются папки /uploads/ и /templates/, а также все вложенные в них папки. Данные папки должны иметь права на запись, т.к. вы в них заливаете посредством скрипта легальный контент, файлы, картинки, редактируете в админпанели шаблоны и прочее. И как правило в эти папки производится загрузка шеллов при обнаружении злоумышленником какой либо бреши на сервере в любом скрипте. Можно ли защитить эти папки, в случае попадания в них зловредного PHP файла, ведь нельзя запретить доступ к этим папкам? Можно, и достаточно не сложно.
Итак, начинаем разбор 1.Необходимо разместить в папках /uploads/ и /templates/ файл .htaccess со следующим содержимым:
Код:
php_flag engine off
Эта строчка отключает использование PHP интерпретатора при попытке обращения к PHP файлам находящимся в этих папках, а также находящимся во всех вложенных папках. Поэтому даже в случае заливки в эти папки файлов со зловредным PHP кодом, они становятся для злоумышленника совершенно бесполезными, т.к. попросту не будут запускаться и выполнятся сервером.
2.Далеко не все хостинги позволяют управлять через .htaccess этим параметром, но и для таких сайтов решение также есть, поэтому если на вашем сервере не работает первый способ, то разместите в этих же папках .htaccess с содержимым:
Код:
<FilesMatch ".([Pp][Hh][Pp]|[Cc][Gg][Ii]|[Pp][Ll]|[Ph][Hh][Tt][Mm][Ll]).?.*"> Order allow,deny Deny from all </FilesMatch>
Этот код запрещает прямое обращение к PHP файлам, находящимся в этих папках.
Вот и все пользуемся,надеюсь эта статья то что вам надо
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим
именем.