"Программист — это профессиональный конвертер галлюцинаций заказчика в жесткую формальную систему"
Apr 232013
 

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

В этом посте я попробую дать несколько советов по защите, которые усложнят жизнь взломщикам.

Защити свой WordPress

1. Отключить сообщение о не правильном логине/пароле

Это не даст понять, что именно не верно – логин или пароль. Что затруднит подбор пароля.

2. Смена логина администратора на что-то не очевидное

Для этого придется выполнить вот такой SQL-запрос

update TABLEPREFIX_users set user_login = 'Не очевидный логин' where user_login = 'admin';

3. Защитим наш wp-config.php от просмотра из вне

В этом фале все настройки и пароль для базы данных. Лучше чтобы ни кто и ни как не смог просмотреть его через интернет. Для этого в .htaccess допишем строчку

<files wp-config.php>
order allow,deny
deny from all
</files>

4. Защита от скриптов в запросах к сайту.

Добaвим следующий код в .htaccess

RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

Этот код позволит для всех запросов, содержащих тэг SCRIPT выдавать ошибку 403  – доступ запрещен.

5. Защита от SQL инъекций и инъекций кода в base64

Для этого можно использовать маленький плагин Block Bad Queries (BBQ). 

6. запретить листинг директорий в Apache

На самом деле любой человек может посмотреть что за файлы лежат у вас в директориях сайта. Чтобы избежать этого достаточно добавить следующую строчку в файл .htaccess (не все хостеры это разрешают)

Options -Indexes

Ну а если так не вышло – придется создать во всех директориях пустой файл index.php

7. Постоянно обновляйте WordPress, плагины и темы

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

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

Поделиться в соц.сетях

 Posted by at 12:14 pm

  2 Responses to “Как защитить сайт на WordPress”

  1. Спасибо за статью!

    Но есть пара вопросов:

    1. Отключить сообщение о не правильном логине/пароле
    где это сделать?

    2. Смена логина администратора на что-то не очевидное
    если при установке WP было сразу выбрано отлиное от Admin имя, это тоже актуально?

    • 1. Это небольшое изменение в коде. в functions.php add_filter(‘login_errors’,create_function(‘$a’, “return null;”));
      2. Уже не актульано )

Leave a Reply to Anton Cancel reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)