Усиление безопасности сайта на WordPress

5 октября 2012

С развитием средств защиты информации развиваются и средства для ее взлома.  Антивирусные сигнатуры с каждым днем пополняются сотнями новых записей. Вопрос о безопасности сайта будет актуален ещё очень долгое время. По собственному опыту знаю, как неприятно обнаружить, что твой сайт был атакован и на него внедрен сторонний скрипт. Поиск вредоносного кода и восстановление информации может занять недели, а может стать и невозможным. В этой статья я постарался собрать действенные и проверенные мной лично средства усиления защиты сайта, созданного на Wordpess.

1. Ограничение попыток авторизации при помощи плагина Login LockDown.

Плагин Login LockDown запоминает IP-адресс, с которого производится вход в админ. панель сайта и в случае нескольких неудачных попыток ввода пароля или логина блокирует возможность входа.
Страница плагина.
Устанавливаем, активируем.

Плагин защиты Login LockDown

Переходим к настройкам. Их немного:

Настройки плагина Login LockDown

  • Max Login Retries - максимальное количество попыток входа в админ. панель сайта.
  • Retry Time Period Restriction (minutes)  —  период времени для повторной попытки.
  • Lockout Length (minutes)  —  время, на которое возможность авторизации будет заблокирована.
  • Currently Locked Out  -  Со временем здесь появится список заблокированных IP-адресов и время блокировки. Здесь можно разблокировать IP, отметив его и нажав «Release Selected».

Из текущих настроек следует, что возможность авторизации будет полностью блокирована на 60 минут в случае трех неверных попыток, совершенных в течение пяти минут.

2. Анализ файлов сайта на наличие вредоносного кода при помощи плагина Antivirus.

Очень удобный плагин, который просматривает все файлы темы сайта на наличие подозрительного кода и в случае появления опасности информирует в админ.панеле и письмом на электронный адрес администратора.

Сайт автора плагина.

Настроек практически не имеет.

Настройки плагина Антивирус для Вордпресс

Необходимо лишь вписать нужный емейл и в случае обнаружения подозрений на вирус на указанный адрес придет письмо.

3. Поиск следов взлома и подозрительной активности при помощи плагина Exploit Scanner.

Плагин Exploit Scanner просматривает абсолютно все файлы WordPress (системы, плагинов, скриптов, темы) на предмет подозрительных включений кода и проявления активности скриптов (заполнения форм, отправки писем). Данный плагин я бы рекомендовал, как один из самых обязательных для установки, поскольку именно благодаря его работе мной был удален вредоносный код на нескольких сайтах, подвергшихся вирусной атаке.

Страница плагина.

Вирусный код внедренный на сайт прописывается в одном или нескольких файлах, маскируясь с использованием различных методов — скрытием через CSS, изменением кодировки (когда вы ищите внедренную вредоносным кодом на страницу стороннюю ссылку в файлах через «содержит текст», а на самом деле эта ссылка прописана в другой кодировке и не может быть найдена подобным способом), разбиение строк и др. Плагин Exploit Scanner, анализируя файлы на предмет подобных маскировок, выдает результат о подозрительных записях и помечает тремя уровнями опасности. Плюс ко всему плагин также сканирует и базу данных на наличие сомнительных записей, что делает его вдвойне обязательным для установки.

Устанавливаем, активируем.

Плагин Exploit Scanner

Настройка плагина Exploit Scanner

Здесь необходимо лишь нажать «Run the Scan» и процесс сканирования будет начат. Это продлится некоторое время, после чего появятся результаты проверки, разделенные, как уже говорилось, на 3 блока — Level Severe, Level Warning, Leve Note. Первый и второй блоки содержат информацию, на которую стоит обратить внимание в первую очередь.

Результат работы плагина Exploit Scanner

Желтым цветом справа помечаются фрагменты кода, которые плагин посчитал подозрительными и просит обратить внимание. Слева указан путь к файлу и строка кода. Весьма удобно и наглядно. Однако, в выдаче результата подозрительных файлов, по мнению Exploit Scanner, может оказаться более тысячи. Это вовсе не означает, что все они заражены вредоносным кодом и нуждаются в правке. Дело в том, как уже говорилось выше, вирусные фрагменты кода маскируются при помощи общепринятых кодовых конструкций, поэтому здесь дается всего лишь информация для анализа и помощь в поиске возможных внедрений вирусного кода. Поэтому необходимо устанавливать данный плагин в связке с плагином «Antivirus», который наверняка сообщает о случившейся атаке и инфицировании файлов, а при помощи Exploit Scanner будет гораздо легче отыскать атакованные файлы сайта.

4. Проверка сайта на наличие вирусов он-лайн.

Также будет не лишним, при появлении подозрительных действий на вашем сайте (например таком, когда при нажатии в браузере кнопки «Назад» предыдущая страница сайта не открывается, а перезагружается текущая) проверить его на наличие вирусного кода он-лайн средствами.

В настоящее время подобных сервисов довольно много.  Я упомяну о двух.

1) Он-лайн сканер Dr.Web

2) Sicuri Site Check

Здесь, я думаю, говорить о настройках нет смысла, просто копируете ссылку вашего сайта и жмете «Проверить». На мой взгляд, эти два сервиса заслуживают внимания.

5. Предотвращаем спам в комментариях.

Постепенно с развитием вашего сайта на WordPress в записях блога будут появляться спам-комментарии различного содержания.
Я рекомендую предотвратить их появление и установить плагин SI CAPTCHA Anti-Spam (для версий WordPress ниже 3.4)
Настройки минимальны. Достаточно отметить позиции, когда при заполнении форм на вашем сайте будет присутствовать CAPTCHA, распознать которую может только человек.
Для версии 3.4 и выше рекомендую установить отличный плагин Antispam Bee.
Устанавливаем, активируем, спам в комментариях будет отсеян автоматически.
Плагин подменяет стандартную форму комментариев на свою. Из большого числа плагинов подобного действия Antispam Bee наиболее дружелюбен и эффективен.

6. Удаляем из секции <head> версию WordPress.

В коде сайта, созданного на базе WordPress присутствует информация о версии CMS. Выглядит это так:

<meta name=”generator” content=”WordPress 3.3.1? />
Я думаю, совершенно нет необходимости сообщать это кому бы то ни было, поэтому лучше эту информацию скрыть. Для этого в файле functions.php установленной темы добавляем строку:
php remove_action('wp_head', 'wp_generator'); 

Сохраняем файл. Обновляем сайт, строка в коде о версии WordPress должна исчезнуть.

7. Усиливаем защиту при помощи .htaccess.

Для защиты от XSS, RFI, CRLF, CSRF, Base64, внедрения кода SQL-инъекций и попыток взлома сайта необходима защита средствами .htaccess. С этой задачей грамотно справляется плагин BulletProof Security. Устанавливаем, активируем. В настройках плагина необходимо создать защищенный файл .htaccess. Проблем возникнуть не должно.

 

8. Несколько советов по усилению защиты блога (сайта) на Вордпресс.

— Не нужно устанавливать плагины по каждому поводу. Устанавливайте только действительно необходимые плагины. Если функционал плагина можно реализовать включением php кода, то лучше выбрать второй вариант. Например для реализации табов в сайдбаре сайта совсем необязательно устанавливать плагин, а можно осуществить при помощи CSS. Большое количество плагинов нагружают сервер и увеличивают время отклика сайта. Большинство атак осуществляется через недоработки в коде плагинов.

— Обязательно обновлять WordPress до актуальной версии. В ней исправлены все недоработки и ошибки прошлых версий.

— Если на сайте используется не собственная тема, а скаченная из сети, то лучше иметь ее исходные файлы. В случае внедрения стороннего кода в файлы темы (такое происходит также довольно часто) можно произвести сравнения.

— Не скачивать и не устанавливать плагины с сомнительных сайтов или с сайтов, на которых предлагается протестировать данный плагин. Как правило работоспособность таких дополнений остается на низком уровне.

— Создавайте сложные пароли для доступа с использованием букв и цифр длинной не менее 8 символов.

— Ни в коем случае не сохранять пароли от админ.панели сайта в браузере.

— И ни при каких обстоятельствах не сохранять пароли от FTP доступа в FTP-клиентах (Total Commander, Filezilla, Cute FTP и т.п.). Распространенной причиной взлома сайтов является кража паролей от FTP доступа из системных файлов FTP-клиентов.

— Делайте регулярный бекап всех файлов сайта и базы данных в панеле управления хостингом, даже если эта услуга предоставляется автоматически. Может случится так, что автоматически созданные резервные копии сайта и базы данных формируются за 5 последних дней и обновляются новыми, а в случае если для восстановления работоспособности сайта понадобится более старая резервная копия ее может не оказаться, поэтому будет гораздо разумнее создавать и самостоятельные «контрольные точки» вашего сайта, чтобы избежать неприятных хлопот.



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

Обязательные поля отмечены *

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