Блог Андрея Юрченко

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

Твики для безопасности WordPress Часть 2

Привет! Продолжаем тему по защищенности движка WordPress, которую мы начали в предыдущей статье. Сегодня мы разберем еще несколько твиков, которые помогут повысить защиту нашего движка и забыть про некоторые проблемы.

защита wordpress, безопасность wordpress

Ну что, поехали!

Защита от инъекций

Динамический сайт особенно нуждается в защите. Разработчики защищают запросы GET и POST, но этого не всегда достаточно. Нашей задачей будет защита от инъекций и любых попыток изменения переменных GLOBALS и REQUEST кода PHP.

Нам понадобится код, который нужно вставить в файл .htaccess:

Options +FollowSymLinks

RewriteEngine On

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> и попытку изменить значение переменных GLOBALS и _REQUEST. Если что-то подобное встречается, то запрос блокируется и в браузере выдается ошибка 403.

Защищаемся от парсеров и грабберов

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

Решаем проблему добавлением кода в файл .htaccess:

RewriteEngine On

#Replace ?myblog\.ru/ with your blog url

RewriteCond %{HTTP_REFERER} !^http://(.+\.)?myblog\.ru/ [NC]

RewriteCond %{HTTP_REFERER} !^$

#Replace /images/nohotlink.jpg with your «don’t hotlink» image url

RewriteRule .*\.(jpe?g|gif|bmp|png)$ /images/errorlink.jpg [L]

Код проверяет реферера (REFERER) на соответствие URL нашего блога и что он не пустой. Если это не так и запрашиваемый файл имеет расширение JPG, GIF, BMP или PNG, то вместо него отобразится картинка-пустышка.

Другими словами только ваш веб-сервер будет использовать ссылки на ваши изображения, а на сайтах, ссылающихся на ваши картинки, будет показываться изображение errorlink.jpg. Не забудьте заранее подготовить и загрузить на сервер данную картинку.

Плагин от вредоносных URL-запросов

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

Создайте текстовый файл и добавьте в него приведенный ниже код, далее сохраните его под именем blockbadqueries.php. После нужно загрузить его в папку wp-content/plugins и активировать через админ-панель как обычный плагин.

Вот код:

<?php

/*

Plugin Name: Block Bad Queries

Plugin URI: http://perishablepress.com/press/2009/12/22/protect-wordpress-against-malicious-url-requests/

Description: Protect WordPress Against Malicious URL Requests

Author URI: http://perishablepress.com/

Author: Perishable Press

Version: 1.0

*/

global $user_ID;

if($user_ID) {

  if(!current_user_can(‘level_10′)) {

    if (strlen($_SERVER['REQUEST_URI']) > 255 ||

      strpos($_SERVER['REQUEST_URI'], «eval(«) ||

      strpos($_SERVER['REQUEST_URI'], «CONCAT») ||

      strpos($_SERVER['REQUEST_URI'], «UNION+SELECT») ||

      strpos($_SERVER['REQUEST_URI'], «base64″)) {

        @header(«HTTP/1.1 414 Request-URI Too Long»);

 @header(«Status: 414 Request-URI Too Long»);

 @header(«Connection: Close»);

 @exit;

    }

  }

}

?>

Код проверяет очень длинные запросы – более 255 символов и проверяет присутствие в них eval или base64 php-функций в URL. Если одно из условий выполняется, то отправляется 414 ошибка — запрашиваемый URL слишком длинный. Все, ваш блог защищен от вредоносных запросов.

Удаляем номер версии движка

Движок WordPress автоматом отображает текущую версию и это не безопасно. Давайте усложним жизнь хакерам.

Для этого открываем файл вашей темы functions.php и добавляем в него следующую строку кода:

remove_action(‘wp_head’, ‘wp_generator’);

После сохранения, обновляем страницу и видим что номер версии отсутствует.

Запрещаем прямой просмотр директорий

Листинг директорий позволяют большинство хостингов. Так вот, если в браузере ввести, например blogname.ru/wp-includes, то можно увидеть файлы директории. Как вы понимаете это риск опасности.

Для решения добавляем в конфигурацию Apache или в файл .htaccess строчку:

Options –Indexes

Данный код запрещает просмотр юзерам, но не запрещает индексацию директории

На этом пока все и я надеюсь, что вы не просто прочитаете, но еще и примените на практике данные советы. Так же надеюсь на ваши ретвиты — пусть больше народу узнает о данной публикации и будут чувствовать себя спокойнее.

Вот еще почитайте, очень пригодится:   Полезные твики для WordPress>>>

Желаю вам успехов, а ваши проекты пусть не подвергаются взломам и прочим невзгодам.

С уважением, Андрей Юрченко

Поделитесь статьей в социальных сетях!

Подпишись на RSS-рассылку и получай новые статьи на почту!

Введите свой e-mail:

МАГИЧЕСКИЙ ШАБЛОН ПОДПИСНОЙ СТРАНИЦЫ В ПОДАРОК, ЗАБИРАЙТЕ

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

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

Комментарии Вконтакте:

Content Tab Three

Блог Андрея Юрченко © 2016

ВВЕРХ