Архив | Безопасность RSS лента для этой рубрики

Новая версия WordPress 3.0.3

8 декабря 2010

0 Comments

Не успели все обновить свои блоги до WordPress 3.0.2, которая исправляет некоторые ошибки и уязвимости, как вышла новая версия, которая исправляет еще одну уязвимость, позволяющая зарегистрированным авторам блога, с помощью протокола XML-RPC удаленно удалять и изменять записи к которым они не имеют доступа.

Данная уязвимость распространяется только на те блоги, у которых включен протокол удаленной публикации XML-RPC.

Для того, чтобы проверить включен ли на вашем блоге этот протокол, зайдите в панель администрирования «Параметры» — «Написание» — «Удаленная публикация» и отключить галочку напротив XML-RPC.

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

Обновление: пока я писал эту запись, на русском сайте WordPress уже появилась версия 3.0.3, так что можно смело обновляться.

Ну и конечно же постовой! В нем сегодня пытаются рассказать о то, что такое кредитные автоматы и сервисы Web Money — получи кредит автоматом!

Продолжить чтение...

20 советов по безопасности WordPress

6 сентября 2010

10 комментариев

20 советов по безопасности WordPress

Обновляйте системные файлы WordPress

На данный момент процедура обновления WordPress очень и очень простая, и справиться с этим может практически любой пользователь. Для того, чтобы обновить WordPress, необходимо зайти в панель администрирования, раздел «Инструменты» — «Обновление» или в новых версиях «Консоль» —  «Обновления» и нажать кнопку «Обновить WordPress», после чего вам возможно понадобится ввести логин, пароль и имя FTP сервера, чтобы программа обновления WordPress  могла получить доступ к папкам и файлам. После чего запустится обновление WordPress, и если все хорошо, через пару минут на вашем блоге будет стоять новейшая версия  WordPress. Если автоматически обновить блог не удается, пользуйтесь старым методом, скачайте новую версию WordPress, распакуйте на своем компьютере и загрузите на сервер, перезаписывая существующие файлы. Естественно перед обновлением, нужно сделать резервную копию базы данных и файлов блога.

Если страшно обновлять самостоятельно, или ничего не получается, обращайтесь.

Обновляйте плагины WordPress

Здесь процедура практически идентична обновлению системных файлов WordPress, все либо делается автоматически, в разделе «Плагины» или «Обновления», либо скачиваем новую версию плагина, распаковываем и загружаем на сервер, перезаписывая существующие файлы плагина.

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

Резервное копирование WordPress

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

Закройте папки блога от просмотра

Начиная с версии WordPress 2.7 в каждой служебной папке WordPress, теперь присутствует файл index,php  который препятствует просмотру содержимого папки, с помощью обычного браузера. Также запретить просмотр папок без индексного файла, можно с помощью добавления строчки «Options -Indexes» в файл .htaccess. Если вы не обновляете свой блог, обязательно воспользуйтесь этим советом и как минимум создайте пустой файл index.html в папках «wp-content/plugins» , «wp-content/uploads«.

Отключите сообщения о ошибках авторизации

Изначально при неправильной авторизации в WordPress, система сообщает о том, что вы неправильно ввели пароль или что пользователь не существует в системе. Эти сообщения желательно отключить, это затруднит подбор пароля и проверки существования пользователя в базе данных блога. Сделать это можно несколькими способами:

Отредактировать файл «functions.php» который лежит в папке шаблона вашего блога, добавив строчку:

add_filter('login_errors',create_function('$a', "return null;"));

Либо установить замечательный плагин Secure WordPress, в настройках которого, можно просто поставить галочку в пункте про отключение ошибок авторизации.

Скройте версию WordPress

Особенно это важно, если вы по какой-то причине длительное время не обновляете блог. Знание версии программного обеспечения облегчает поиск уязвимостей в этом самом программном обеспечении, так зачем упрощать работу плохим людям, пусть помучаются, открываем файл «functions.php» и добавляем строчку:

remove_action('wp_head','wp_generator');

Второй способ более простой, устанавливаем все тот же плагин Secure WordPress и в настройках ставим галочку напротив пункта «Версия WordPress».

Удалите пользователя admin

Я думаю все знают, что самым главным пользователем в блоге является пользователь admin, и имя пользователя admin идет по умолчанию, при установке WordPress. Так было до версии WordPress 3.0, теперь при установке, пользователю дают возможность выбрать логин для администратора блога. Если же ваш блог установлен давно, то я практически уверен, что в нем есть пользователь admin с правами администратора блога. Соответственно, злоумышленники будут пытаться подобрать/взломать пароль именно этого пользователя. Самый просто способ поменять имя пользователя с admin на какое-то другое:

  1. Создаем нового пользователя с правами доступа «Администратор».
  2. Выходим из панели администрирования блога и заходим под новым пользователем.
  3. Убедитесь в том, что все опции администрирования блога, вам доступны при авторизации с новым логином
  4. Найдите пользователя admin и удалите его. При удалении, вас спросят, на какого пользователя переназначить существующие записи которые сделал пользователь admin, естественно это нужно сделать на пользователя которого вы только что создали.

Также можете попробовать воспользоваться плагином User Changer, но я обычно делаю это средствами WordPress.

Создайте безопасный пароль для администратора

Очень часто я сталкиваюсь с паролями, которые можно легко угадать. Простой пример, дата рождения :) идем вКонтакте / Одноклассники еще куда-то, и ищем информацию о авторе блога, дата рождения там есть практически всегда. Поэтому не делайте таких простых паролей, ваше имя или фамилия, набранные на латинской раскладке это все тоже предсказуемо. Не облегчайте задачу человеку, который захочет завладеть вашим ресурсом.

Попробуйте сгенерировать пароль например здесь, там даже есть подсказка, как запомнить ваш новый пароль.

Это касается паролей на администрирование блога, доступ по ФТП и конечно же доступ в панель управления хостингом.

Измените ключи шифрования WordPress

В инструкции о том, как установить WordPress, я писал что эти ключи необходимо менять, точнее заполнять, сразу же после установки блога. Находятся они в файле конфигурации wp-config.php, выглядят вот так:

define('AUTH_KEY',         'впишите сюда уникальную фразу');
define('SECURE_AUTH_KEY',  'впишите сюда уникальную фразу');
define('LOGGED_IN_KEY',    'впишите сюда уникальную фразу');
define('NONCE_KEY',        'впишите сюда уникальную фразу');
define('AUTH_SALT',        'впишите сюда уникальную фразу');
define('SECURE_AUTH_SALT', 'впишите сюда уникальную фразу');
define('LOGGED_IN_SALT',   'впишите сюда уникальную фразу');
define('NONCE_SALT',       'впишите сюда уникальную фразу');

Ключи генерируются на специальном сервисе WordPress, просто откройте страницу, скопируйте строки и вставьте их в файл конфигурации.

Ограничивайте количество попыток авторизации

Мы с вами поменяли логин администратора блога, и подобрали хороший пароль. Но ведь все еще можно сидеть и пытаться подобрать пользователя или пароль, правда сомневаюсь что это будет легко, с отключенными сообщениями о ошибках авторизации, но это еще не все. Установите плагин Login Lockdown, который будет блокировать IP-адрес после нескольких неправильных попыток авторизации. Представляете мучения, через которые необходимо пройти, чтобы подобрать данные авторизации к блогу?

Установите плагин WordPress File Monitor

Задача плагина, проверять файлы в папке вашего блога, и сообщать на почту или в панели администрирования блога о том, что произошли какие-то изменения в файлах. Плагин сообщает о изменениях в файле, о появлении новых файлов и удалении существующих. Поэтому если кто-то без вашего ведома что-то попытается изменить на вашем блоге, вы сразу же об этом узнаете. Рекомендую также настроить исключения, например на папку где храниться кэш или какие-то маловажные файлы которые часто меняются.

Установите плагин WP Antivirus

Про него я уже много писал и писать не перестану. Плагин который проверяет файлы шаблона вашего блога, на наличие вредоносного кода и если находит что-то подозрительное сразу же сообщает на почту. В отличии от File Monitor этот сообщает в каком файле и какой строке он нашел подозрительный код.

Установите плагин WP-Security Scan

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

Я когда-то писал отдельный пост про плагины для безопасности WordPress, ознакомьтесь, возможно найдете что-то интересное и для себя. Также очень много про плагины для безопасности написано у Шакина.

Защитите файл настроек WordPress wp-config.php

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

order allow,deny
deny from all

Также для тех кто знает что такое chmod, рекомендуется установить chmod 750 на файл «wp-config.php» сделать это можно через FTP соединение введя команду chmod 750 wp-config.php.

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

Используйте SFTP вместо FTP

Это легче написать чем сделать. На большинстве хостингов, не работает ни sFTP ни FTP+SSL. Есть еще варианты пользоваться SSH вместо FTP, такое возможно чаще всего лишь в тех случаях если вы покупаете VPS хостинг, поэтому останавливаться на этом пункте подробнее я не стану. Если ваш хостер поддерживает защищенное FTP соединение, или предоставляет SSH доступ, пользуйтесь на здоровье.

Используйте SSL шифрование

Опять же, работает не на любом хостинге. Многие хостеры не предоставляют возможность работы через SSL, либо предоставляют по запросу или за дополнительные деньги. В WordPress есть поддержка SSL, для включения, необходимо просто прописать в файле конфигурации wp-config.php строчку

define('FORCE_SSL_ADMIN', true);

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

Измените префикс таблиц в БД WordPress

По умолчанию, префикс таблиц, в базе данных WordPress установлен как «wp_» это упрощает использование уязвимостей с MySQL инъекцией, когда известны названия таблиц, намного проще встроить в них какой-то вредоносный код, выбрать из них необходимую информацию или просто попытаться удалить. Изменить префикс можно с помощью phpMyAdmin, кто знает что это такое, тому не нужно объяснять как это сделать. Также для этого есть много плагинов, которые облегчают задачу пользователю, но не всегда корректно работают. Поэтому перед изменением обязательно сделайте резервную копию базы данных.

Переместите файл wp-config.php

Мало кто знает, что файл конфигурации WordPress «wp-config.php«, можно вообще убрать из папки блога, на один уровень вверх, там где его никто не найдет. К примеру блог находится в папке «/domain.com/public_html/» как правило к папке «domain.com» доступа через веб уже нет, но если переместить туда файл wp-config.php, WordPress все еще будет работать, потому как умеет искать файл конфигурации в папке на уровень выше. (получилось немного запутанно, но надеюсь что разберетесь).

Дополнительная авторизация wp-admin

Если ваш хостинг позволяет устанавливать пароли на отдельные папки сайта, обязательно воспользуйтесь этим, и установите пароль на папку wp-admin. В этом случае, даже если кто-то узнает логин/пароль для панели администрирования вашего блога, ему понадобится отгадывать еще один пароль, для доступа к папке, не знаю как он, но я бы уже отказался от мысли попасть в админку вашего блога.

Права доступа к файлам и папкам

Можно очень долго пытаться рассказывать что такое chmod 755 или r+w и другие всякости, на тему прав доступа к файлам вашего блога, понадеемся на то, что вы не меняли никаких прав и все у вас как нужно, но на всякий случай:

/wp-admin/ — папка панели администрирования: доступ на запись файлов, должен быть только у пользователя хостинга.
/wp-includes/ — служебные файлы WordPress: доступ на запись файлов, должен быть только у пользователя хостинга.
/wp-images/ — картинки WordPress: доступ на запись файлов, должен быть только у пользователя хостинга.
/wp-content/ — различное содержимое добавляемое пользователями блога: доступ на запись файлов, может быть у всех, пользователя, группы и публичный. Однако по некоторым рекомендациям доступ на запись ограничивают и для этого каталога.
/wp-content/themes/ — шаблоны WordPress блога: доступ на запись файлов, должен быть только у пользователя хостинга, если хотите использовать встроенный редактор шаблонов, тогда доступ нужно дать и для группы
/wp-content/plugins/ — плагины WordPress: доступ на запись файлов, должен быть только у пользователя хостинга.

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

А у кого есть компьютер и Wi-Fi тому обязательно пригодится сайт на котором есть  всё для пользователя компьютера, он и является спонсором этого поста.

Продолжить чтение...

Безопасность WordPress: плагин Login LockDown

6 августа 2010

5 комментариев

Безопасность WordPress: плагин Login LockDown

Нашел очень простой и функциональный плагин, для повышения безопасности вашего WordPress блога, называется он Login Lockdown.

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

Плагин ведет список заблокированных IP адресов, которые всегда можно разблокировать в панели администрирования.

После того как вы установите плагин, можете быть спокойны за безопасность блога и послушать очередной подкаст Димка, в котором он рассказывает много про Twitter.

p.s. Старайтесь не проверять работоспособность этого плагина, со своего IP-адреса, чтобы не заблокировать самого себя :)

Продолжить чтение...

Обновление плагина wp-time-machine

4 августа 2010

8 комментариев

Обновился отличный плагин, для хранения резервной копии WordPress блога, на удаленном сервере FTP или DropBox.

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

Возможность делать резервные копии автоматически, используя cron или просто открывая специальную ссылку, которая будет указана в параметрах плагина.

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

Продолжить чтение...