Привет всем, дорогие читатели hooka-mimi.ru. Как вы уже знаете, мой блог последнее время выдавал страшную картину о том, что содержит вирус и мог быть опасным для пользователей. Очень неприятная картинка, как для пользователей, так и для меня. Ну это понятно. И вот, я уже, надеюсь, разобрался с этим вопросом, надеюсь навсегда и, по многочисленным просьбам, решил написать статью о том как защитить свой блог от взлома. Кстати, просьбы действительно были многочисленными от читателей, что не может меня не радовать.
Спасибо вам, дорогие читатели за то, что следите за мной, читаете меня и пытаетесь всячески помочь, даже морально. Спасибо вам большущее. Вы даете мне силы.
Итак, в чем заключался взлом Блога?
А взлом заключается в том, чтобы ваш блог ссылался на другие сайты, без вашего ведома. Или, как это было в моем случае – на блоге показывалась чья-то реклама без моего ведома. Но многие из вас спросят “а как это я ничего сразу не заметил?”. Вот вам простой ответ: “реклама эта показывается размером 1х1 пиксель”. Вот представьте, на что только не пойдут взломщики, чтобы показывать свою рекламу у вас. Ну, это были еще цветочки, об этом я рассказывал в этой статье. А вот то, что эти “редиски” устроили у меня в середине этого месяца – вообще ни в какие ворота.
После того как я с горем пополам разгреб последствия декабрьских взломов – в Январе был просто мега взлом, который меня “неплохо опустил”. Ну, на скрине, я думаю, вам видно будет.
Самое главное, что эти вирусы могут быть “заразные”, т.е. сначала с сайта вирус кочует на вас компьютер, а потом, когда вы начинаете залезать по фтп на ваш блог – вирус кочует на ваш блог. Ну и так далее по накатанной. От сюда может следовать вывод – не заходите на подозрительные сайты. В принципе, как показала практика, большинство пользователей так и делают, т.к. когда мой блог был в статусе “подозрительных” – посещаемость падала в ПЯТЬ ряз, а точнее до 200 человек в день.
Поэтому еще раз подумайте, прежде чем лазить на подозрительные сайты и блоги. Я не к тому, что нужно забыть и забить на все сайты, у которых вы встречаете такие пометки. Я лишь про то, что вы должны помнить о том, что они могут стать такими же жертвами какой и стал недавно я. Кстати о пометках. Вот вы можете спросить “про какие пометки я говорю”. Вот вам скриншот, того что было с моим блогом и того что я имею сейчас ввиду.
Я даже больше расскажу. После того как взломали мой блог – вирусяка перебрался ко мне на компьютер и уже через меня переполз на другие сервера, с которыми я работал. У меня есть отдельно купленный хостинг у bqhost.net – я их всем рекомендую, кстати. И вот на этом хостинге у меня были удалены все(!) сайты, блоги, в общем – все проекты. Это было очень печально и чуть не началась паника, когда я увидел вот такие картинки на своих сайтах:
Очень порадовала (в который раз) оперативность тех поддержки хостинга, которая предложила свои услуги в анализе, почему же был взломан хостинг, каким путем и главное – полное восстановление всех сайтов (который раз убеждаюсь что сделал выбор хостинга правильно). Таким образом сайты были не доступы менее суток, что в принципе неплохо, учитывая проблему такого рода. Вы согласны со мной? Напишите об этом в комментариях.
Но это мы обсуждали лишь момент о том какие могут быть последствия взлома, т.е. как вы можете понять что ваш блог взломали. А сейчас мы поговорим о том, что нужно сделать чтобы этого не происходило, или как защитить свой блог на wordpress от взлома. Очень надеюсь, что все мои советы будут восприняты правильно и помогут большинству читателей. Я буду очень благодарен любым вашим комментариям, поэтому не будьте скупы на комментарии – пишите что думаете.
Итак, как защитить блог от взлома?
Я сразу хочу сказать, что до взлома я не следовал ни одному совету, приведенному ниже. Очень вероятно, что это и стало причиной взлома. Поэтому не повторяйте моих ошибок и защищайте свой блог достойно. Для начала давайте обсудим самые банальные и простые советы, которые должен знать каждый школьник.
Простейшие советы по укреплению безопастности блога на wordpress:
-
Всегда обновляйте свой WordPress движок и плагины, которые используете до последней версии. Это нужно и очень важно! Новые версии специально и выходят для того, чтобы устранить обнаруженные уязвимости в коде и кроме этого, разработчики, обычно еще больше оптимизируют код, чтобы плагин или движок работали быстрее. Вы ведь хотите чтобы ваш блог был быстрее, правда?
- Удалите все плагины которые НЕ используете. А также не стоит делать склад шаблонов у себя. Некоторые шаблоны также могут содержать уязвимости. Но основной пункт здесь – это плагины.
- Используйте надежные пароли. Чем пароль сложнее – тем надежнее. Самая распространенная ошибка (и я такое тоже встречал), что блоггеры устанавливают стандартную связку логина и пароля, а точнее: admin\admin. Естественно этот пароль подберет обычный любопытный школьник. И что тогда вы будете делать? Кстати, на счет паролей – не стоит их хранить в FileZilla или TotalCMD. Потому что есть вирусы, которые специально “выдирают” эти сохраненные пароли. (Если вы не в курсе что это и как с этим работать – напишите мне, я напишу статью об этом).
Это были самые простые советы по улучшению безопасности блога, чтобы ваш блог не взломали. Чуть дальше я вам дам самые нужные советы, которые помогут вам создать из блога – крепость! А пока, опять же для новичков – я бы хотел порекомендовать парочку плагинов, которые могут помочь вам с защитой вашего блога от взлома. Но помните, что каждый wordpress плагин может нагружать ваш блог и скорость загрузки блога – снизится. Сами уж выбирайте что вам больше по душе.
Плагины, которые повышают безопасность wordpress:
WordPress-Firewall — плагин контролирует малейшие изменения в Ваших php файлах, не дает возможности установки плагинов, деактивирует плагины если они не соответствуют безопасности.
Внимание — контроль плагина распространяется даже для админа, поэтому при необходимости изменения файлов или установки новых плагинов деактивируйте в начале WordPress-Firewall.
Login LockDown — плагин который ограничит количество попыток подбора пароля к админке Блога.
Limit Login Attempts – очень нужный плагин на мой взгляд, т.к. позволяет ограничить количество неудачных попыток ввода пароля к админке. Что значительно снизит вероятность взлома, да и снизит желание взломщика.
WP Security Scan – Это хороший плагин, который следит за инсталляцией вашего WordPress и дает советы. Этот плагин проверит следующие вещи: Пароли; Права доступы на файлы; Защищенность баз данных; Защиту администратора WordPress.
10 продвинутых советов о том как защитить свой блог на wordpress.
Ну и теперь самое время, как по мне, показать вам самые надежные советы. Можно сказать – советы для профессионалов по защите блога на wordpress. Ну, если и не для профессионалов, то не для новичков точно. Итак.
Совет по защите блога №1. Уберите выскакивающую ошибку.
Возможно у вас возникнет вопрос, а что не так, с этой ошибкой? Почему её нужно убирать? Все очень просто, друзья. Дело в том, чтоб когда взломщик начинает подбирать доступы к админке – он простым перебором будет перебирать все значения И логина И пароля. А когда высвечивается ошибка, которую вы видете на скриншоте – злоумышленнику достаточно подобрать сначала логин, потому что он видит, правльный логин или нет. А когда он увидит сообщение типа “Пароль не правильный” – это значит что логин он подобрал правильно и осталось дело за малым. Поэтому лучше это сообщение скрыть, чтобы никто не знал, что именно было набрано не верно.
Чтобы это сделать – нужно банально в файле funcions.php вписать вот эту строчку:
1
| add_filter('login_errors',create_function('$a', "return null;")); |
Попробуйте и напишите, что у вас получилось.
Совет по защите блога №2. Защитите свой файл WP-CONFIG.PHP
Вы уже знаете, что такое файл wp-config.php. Наверняка знаете, если у вас есть собственный блог. Это файл конфигурации, который содержит доступы к базе данных вашего блога. Чтобы его защитить – попробуйте прописать вот такие строчки в файл .htaccess (если его нет – создайте).:
1
2
3
4
5
| # to protect wp-config.php
<Files wp-config.php>
order allow,deny
deny from all
</Files> |
Но это еще не все, на всякий случай, пару советов про конфигурацию wordpress:
- Ключи безопасности: В новых версиях WordPress есть 4 ключа, которые должны установлены правильно. Эти ключи являются обязательными для обеспечения безопасности вашего блога. Их вы можете сгенерировать автоматически с помощью этого генератора от самого wordpress. Каждое обновление этой страницы – даст вам новые ключи.
- Префикс таблиц. Когда вы только что установили блог, движок предлагает вам стандартное значение «wp_». Помните, чем более сложным будет значение этого префикса, тем менее вероятен взлом баз данных блога. Не бойтесь придумывать сильно заумные значения. Они вам не понадобятся, тем более если вы не программист, а вот усложнить жизнь взломщику – как два пальца.
- Вы также можете “поиграть” с настройками этого файла, полный список значений, которые вы можете изменять, вы можете найти в кодексе wordpress. Конечно, желательно знание английского языка. Они (настройки) не критичны, поэтому в этой статье я их не привожу, а лишь даю ссылку на них.
Совет по защите блога №3. Удалите стандартную учетную запись администратора.
Во время процесса установки движка – вам по умолчанию предлагается создать пользователя с именем ‘admin’ , в большинстве случаев все так и оставляют. Но лучше сменить это имя на какое-нибудь другое. А если уж вы действительно создали эту учетную запись, сейчас будем от неё избавляться. Но зачем? – Спросите вы. Вспомните правило №1 – убирание подсказки при входе в админку. Имя пользователя – admin – это самое распространенное имя, которое есть почти в каждом блоге. Давайте усложним злоумышленникам жизнь по максимуму! Уберите эту учетную запись и он будет в замешательстве!
Как убрать учетную запись? Все просто. В админке переходите по этому пути “Пользователи – Все пользователи” и там, в списке, просто удалите пользователя “admin”. При удалении пользователя, вас система спросит вот то что показано на скриншоте. А точнее “кто сейчас будет автором всех статей, которые написал удаленный пользователь?”. Ставите себя, как вы там называться будете и все. Вы полноправный автор всех статей на блоге. Причем в настройках, в админке, вы сможете изменить отображаемое имя по своему усмотрению. т.е. логин может быть один, а имя может отображаться какое пожелаете. Очень удобно.
Совет по защите блога №4. Защищаемся от XSS-инъекций и злых URL-запросов.
Для начала о том, что такое XSS инъекция. Это когда злоумышленник пытается взломать ваш сайт с помощью дополнительных параметров в урл-адресе. Например вот как-то так
1
| http://*****.ru/free?p='><script>скриптвзломщика</script> |
Ну, я думаю принцип понятен. Так вот, чтобы ваш блог не сломали таким макаром, желательно закрыть эту возможность. Вопрос в том как это сделать. Нужно обратиться к нашему, уже любимому, файлу .htaccess и прописать в него следующее:
1
2
3
4
5
6
| 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] |
Вот, как только обнаруживается XSS атака – сразу же выдается ошибка 403.
Кроме этого, можно даже самостоятельно написать плагин, которые поможет вам отбивать подобные атаки и защитить ваш блог от взлома. Ну, тут вообще все просто. Вам нужно зайти в папку с плагинами, а точнее в /wp-plugins/ и создать там новый файл, с абсолютно любым названием. Главное чтобы он был с расширением PHP. Например, superplugin.php.
Открываем его и пишем туда следующий код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| <?php
/*
Plugin Name: Block Bad Queries
Plugin URI: perishablepress.com/press/2009/12/22/protect-wordpress-against-malicious-url-requests/
Description: Protect WordPress Against Malicious URL Requests
Author URI: 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;
}
}
}
?> |
Сохраняем, перезаписываем. И все, остается только зайти через админку в блог и активировать этот плагин. Что он будет делать? Он будет проверять запрашиваемый URL на предмет злых запросов и если найдет что-то подозрительное – сразу выдаст ошибку 404 или ошибку 414 (слишком длинный запрос).
Совет по защите блога №5. Установите нужные права CHMOD.
Самая распространенная ошибка среди новичков. Когда все файлы и папки новички ставят открытыми к записи и выставляют права 777. Я надеюсь все понимают, о чем я говорю. Как это выглядит у меня в контрольной панели хостинга – вы можете видеть на скриншоте. Осмелюсь напомнить, в большинстве случаев права CHMOD на все папки Вашего WP должны быть 755, на файлы 644. Так что потрудитесь проследить за тем, чтобы ваши CHMOD права были примерно такие же у вас на блоге.
Чем это может грозить? Тем что кто угодно сможет загрузить любые файлы к вам на блог и выполнить этот файл. Например вирус, или вредоносный скрипт. Это ведь так просто будет, правда?
Еще пару советов и заканчиваем
Ну вот в принципе и все основные методы защиты wordpress Блога от хакерских атак и взломов. Мне лишь остается напомнить вам чтобы вы обновлялись почаще, а также рекомендую менять пароли почаще. Лучше раз в неделю, но это как вы сами захотите. Кто-то меняет раз в квартал, кто-то раз в месяц. Ну и конечно же в заключение хотелось бы посоветовать – если вы сами не можете или не хотите вникнуть в суть этого вопроса – предоставьте это дело профессионалам, которых вы сможете найти на рынке фриланс. Я, как вы помните, специально для вас публиковал самый большой обзор фриланс бирж – пользуйтесь.
На у теперь самое время подписаться на обновления моего блога и взглянуть на супер видео, которое я сегодня вам предлагаю. Правда – очень интересное видео. Ну и конечно же я жду ваших комментариев и вашего опыта по этой тебе. Спасибо заранее…
С уважением, Тумилович Денис.
Понравилось? Расскажи друзьям:
Про плагины не знал, куча неактивных, буду удалять.
А плагины Login LockDown и Limit Login Attempts выполняют одну и ту же функцию?
А как защитить сайт на DLE ?
Еще один повод уходить с платформы Windows для десктопа, например на Linux, ну или на MacOsX (если средства позволяют).
Файл располагается в /wp-content/themes/название_темы/functions.php
Такой папки нет, но есть /wp-content/plugins . Да и проще через админку скачать актуальную версию плагина, который называется BBQ: Block Bad Queries Автор: Jeff Starr
ИМХО, излишне параноидально. Достаточно раз в месяц менять криптостойкий пароль из 20-25 знаков и не хранить его в уме(например, все пароли храню в базе программы KeePassX – не реклама, просто удобно и кроссплатформенно).
Последнее время недостает в WordPress многих функций, но порог вхождения в Drupal пока для меня еще высок, хотя он и очень нравится.
Спасибо!