Главная arrow Программирование arrow HTML arrow Безопасность сайта Friday, September 22 2017  
ГлавнаяКонтактыАдминистрированиеПрограммированиеСсылки
UK-flag-ico.png English Version
GERMAN-flag-ico.png Die deutsche Version
map.gif карта сайта
нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.

Поделиться:

Безопасность сайта Версия для печати
Написал microsin   
18.09.2008

В сети, без сомнения, очень много материала по теме, поэтому здесь записал только то, что пригодилось самому.

Сначала о том, как предотвратить возможный взлом сайта на Joomla. Перечислю основные причины уязвимости.

Причина №1: файл конфигурации доступен по записи
Вся «левая» информация помещается прямо в файл configuration.php, который, как известно, загружается всегда по include перед любыми данными. В результате вместо сайта стартует та информация, которая помещается в этот файл. Исправления: восстановить файл configuration.php. Защита: снять права на запись с этого файла.

Причина №2: открытые по записи директории
В папку /administrator (если она доступна на запись!!!) записывается файл .htaccess (если он там отсутствует!!!) в котором переопределяется стартовый файл каталога: вместо index.php указывается другой файл, который тоже записывается в эту же папку. В результате, при запуске админки по пути (без явного указания имени файла), запускается «левый» файл, как правило, с турецкими или чеченскими национальными символами. Исправление: удалить или восстановить файл .htaccess. Защита: следить за правами доступа или поместить в защищаемые папки файл .htaccess нулевой длины, помещенный туда через FTP.
ПРИМЕЧАНИЕ: Описанные методы не являются недостатками Joomla, а скорее результат русского «авось», когда пользователь на следит на правами на имеющиеся файлы и папки. Заключение - еще раз хочется обратить внимание, на то, что после успешной установки и настройки Joomla и ее расширений, нет никакой необходимости оставлять права на запись в директории сайта (за исключением папок cache и images). Поэтому, сразу после завершения настройки сайта, рекомендуется провести ревизию прав на файлы и папки, и закрыть по записи все папки, кроме двух перечисленных. И уж конечно, нет никакого смысла оставлять доступным по записи файл конфигурации Joomla.


На что стоит обратить внимание при хостинге

Не буду распространяться о тривиальных вещах типа "нужно спользовать хорошие пароли, защищенный шелл, правильно настраивать права на каталоги и файлы" и т. д. Расскажу про несколько неожиданные вещи, те грабли, на которые сам наступил.

1. Обычно (стандарт де-факто) платный хостинг использует веб-сервер Apache. При его использовании меня всегда удивляло обилие файлов .htaccess, которые лежали в большинстве уже имеющихся по умолчанию каталогов сайта. Кроме того, в установке Joomla почти во всех каталогах лежат практически пустые файлы-заглушки index.htm. Поначалу я не обращал на эти файлы внимания, пока не начал создавать систему каталогов для размещения файлового архива. В мои планы входило только следующее:
- каталоги для размещения файлов должны быть удобны для меня;
- в каталогах могут храниться как файлы для скачки (по ссылкам), так и файлы, предназначенные только для меня (скачать их можно, только если знать месторасположение и имя файла, то есть только имея ссылку);
- у пользователей по умолчанию не должно быть возможности "лазить" по дереву моего файлового архива и просматривать, какие файлы там есть.

Я, как обычно, подключался клиентом ftp (вездесущий Total Commander), беспечно создавал каталоги и клал туда файлы. Но один раз, введя в браузере ссылку не на файл, а просто на каталог, я с удивлением обнаружил, что Apache услужливо предоставляет средство просмотра всех папок и файлов моего архива!.. Это совсем не входило в мои планы - в папках я мог положить также и приватную информацию, которую нежелательно видеть посторонним. И только теперь мне стало ясно назначение файлов-заглушек .htaccess и index.htm - они блокируют просмотр содержимого папки http-сервера. Блокировка у этих файлов несколько отличается друг от друга. В файл .htaccess нужно прописывать параметры доступа, и он позволяет гибко настроить доступ к содержимому папки. Но чаще достаточно просто положить в папку файл index.htm, который будет показываться, когда пользователь наберет ссылку в браузере, указывающую на папку. Если файл index.htm в папке есть, то содержимое папки показано не будет, отобразится только код файла index.htm. Можно оставить этот файл пустым (тогда браузер просто покажет белое поле), а можно выполнить что-то более полезное - например, показать сообщение типа "Извините, доступ сюда запрещен" или сделать простую переадресацию на главную страничку сайта.

Последнее обновление ( 18.09.2008 )
 

Добавить комментарий

:D:lol::-);-)8):-|:-*:oops::sad::cry::o:-?:-x:eek::zzz:P:roll::sigh:

Защитный код
Обновить

< Пред.   След. >

Top of Page
 
microsin © 2017