Как изменить префикс таблиц в WordPress

Как изменить префикс таблиц базы данных WordPress

Открываю цикл статей и видеоуроков на блоге, посвящённых безопасности и защите сайтов на WordPress.

Сегодняшний урок про смену префикса таблиц в WordPress. Можно считать это самым первым пунктом, который обязательно должен быть выполнен для защиты вашего сайта. Любой мало-мальски осведомлённый взломщик, который нацелился на ваш блог или сайт на WordPress, будет пытаться атаковать именно сердце вашего детища — базу данных. Именно по этой причине стоит максимально серьёзно отнестись к этому уроку.

Читать далее «Как изменить префикс таблиц в WordPress»

Как удалить пользователя admin из WordPress

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

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

Создание нового администратора

Заходим в меню «Пользователи» — «Добавить новый»:
Добавляем нового администратора

Вводим бессмысленный логин и ваш главный почтовый ящик:

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

Почему именно бессмысленный логин? Чтобы не было возможности подобрать его.

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

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

Используем встроенный механизм создания пароля в WordPress

Если же вам всё-таки надо установить свой пароль, то нажмите на кнопку «Показать» и затем в текстовом поле введите тот пароль, который вам нравится. Только убедитесь, что под паролем горит надпись «Надёжный» на зелёном фоне.

Задаём собственный пароль пользователю

Выбираем роль «Администратор»:

Выбираем роль Администратор

И сохраняете все настройки нажатием на кнопку «Добавить нового пользователя». После всех этих действий у вас будет две учётные записи пользователей с правами администратора. Теперь приступим к удалению старой учётки.

Удаляем старую учётную запись admin

  • Заходим под новой учётной записью администратора
  • После этого идём в меню «Пользователи» – «Все пользователи»
  • Наводим мышкой на пользователя «admin» и выбираем пункт «Удалить»:
    Удаление администратора
  • Обязательно установите галочку «Связать все записи»:
    Переносим существующие материалы новому администратору
    Если не сделаете — потеряете все записи этого пользователя :-)
  • И подтверждаем удаление соответствующей кнопкой.

Поздравляю вас! Теперь стандартная запись «admin» у вас удалена.

Как установить новому администратору существующий email?

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

Заходим под пользователем admin в «Пользователи» — «Ваш профиль»:

Заходим в редактирование личного профиля

Находим адрес электронной почты:

Находим ваш электронный адрес

И меняем в нём какой-нибудь символ или букву:

Меняем электронный адрес

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

Заключение

Я настоятельно рекомендую не использовать для добавления материалов учётную запись нового администратора! Создайте вторую учётную запись с правами «Редактор» и всю работу над контентом используйте только её. Делается это для того, чтобы не «засветить» логин администратора. Это пока вы думаете, что ваш блог никому кроме вас не интересен, но когда с вами случится беда — вспомните меня добрым словом… :-)

Успехов!

Если вы хотите поблагодарить меня за материал — можете сделать это здесь :-)

Автоматическое обнаружение плагинов с известными проблемами с безопасностью

Столкнулся сегодня с очень интересным и полезным плагином — Plugin Vulnerabilities. Его основная задача — это поиск информации об обнаруженных уязвимостях в установленных в вашем WordPress плагинах. Плагин совсем молодой, всего 2000+ загрузок на сегодняшний день, но я его работу уже проверил в своём блоге и нескольких клиентских проектах.

Предлагаю ознакомиться с обзором плагина в моём видео на YouTube:

12 популярных плагинов содержали XSS-уязвимость

Проблема заключалась в неправильном использовании функций add_query_arg() и remove_query_arg().

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

На сегодняшнее утро для каждого из них было подготовлено обновление, поэтому настоятельно рекомендую обновиться всем прямо сейчас, либо активировать автоматическое обновление вашего WordPress. Меньше ручной работы — спокойнее живётся! ;-)

Список плагинов подверженных уязвимости (до 20 апреля 2015):

  • Jetpack
  • WordPress SEO
  • Google Analytics by Yoast
  • All In One SEO Pack
  • Gravity Forms
  • WP-E-Commerce
  • WPTouch
  • Download Monitor
  • Related Posts for WordPress
  • P3 Profiler
  • Broken Link Checker
  • Ninja Forms

У меня из этого списка было 2 плагина. :-)
17 популярных плагинов содержали XSS-уязвимость

Кому интересно, предлагаю ознакомиться с подробностями в блоге Sucuri (на английском): https://blog.sucuri.net/2015/04/security-advisory-xss-vulnerability-affecting-multiple-wordpress-plugins.html

Уязвимость в плагине All in One SEO Pack

Иногда привычка читать RSS-записи интересных мне подписок и сайтов раз в неделю может стоить взломанного сайта, если не моего, т.к. моих клиентов или читателей… Есть над чем призадуматься.

31 мая 2014 команда Sucuri во время аудита известнейшего плагина All in One SEO Pack нашла две уязвимости, использование которых может навредить работе вашего сайта очень и очень сильно.

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

Уязвимость в плагине All in One SEO Pack

В чём заключается опасность?

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

Обнаруженные уязвимости дают возможность атакующему изменить свои права на вашем сайте и провести XSS-атаку.

В первом случае, авторизованный пользователь на вашем сайте, без наличия соответствующих прав, может добавить или изменить определённые параметры, используемые плагином AIOSP. Это относится к SEO-заголовку, описанию (description) и мета-тегам. Всё это прямым образом может повлиять на позиции вашего сайта в поисковой выдаче.

Как решить проблему?

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

Если же вы давно думали о том, чем заменить этот плагин, то рекомендую ознакомиться с моей инструкцией по настройке другого популярного плагина — WordPress SEO by Yoast.

Бесплатный аудит сайта на WordPress

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

У вас это займёт не больше 10 минут, но результат превзойдёт все ожидания. Гарантирую! :-)

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

Безопасность WordPress

Пользователи и пароли

Я работаю только под пользователем admin

Для добавления записей я использую учётную запись с ограниченными правами

Я использую сложные пароли для своих учётных записей
Сложный пароль, это, например: 6TWzUvYht2

Общие сведения

На моём сайте используется всегда последняя версия WordPress

Используете ли вы антивирус на рабочем компьютере?

Имеются ли неиспользуемые темы (шаблоны) на вашем сайте?

Имеются ли неиспользуемые плагины на вашем сайте?

Имеются ли обновления для плагинов, которые ещё не установлены?

Имеются ли неиспользуемые учётные записи пользователей в Панели управления?
Например, вы давали доступ специалисту для настройки сайта и не удалили учётную запись после окончания работ.

Скрыта ли версия WordPress на страницах сайта?
Посмотрите в самый низ страницы, имеется ли там упоминание об используемой версии WordPress?

Файловая система

Имеется ли защита директории /wp-admin/?

К хостингу я подключаюсь через...

Плагины и программы

Какие из этих плагинов у вас установлены

Резервное копирование (бэкапирование)

Настроено ли резервное копирование?

Настроено ли копирование на внешний ресурс (Dropbox, Amazon S3) или e-mail
Отвечайте только если ответили положительно на предыдущий вопрос!

Настроено ли еженедельное полное резервное копирование файлов и базы данных

Настроено ли ежедневное резервное копирование базы данных и XML-данных


Отлично! Осталось заполнить ваши контактные данные, чтобы я мог связаться с вами.

Ваше имя (обязательно)

Ваш E-Mail (обязательно)
На него я вышлю результаты проверки

Адрес вашего сайта или блога (обязательно)

Дополнительная информация, которую вы хотите мне сообщить:

Пошаговое руководство «Идеальное резервное копирование сайта на WordPress»

Извините, книга временно снята с продажи. Готовится новая версия издания.

Пошаговое руководство "Идеальное резервное копирование сайта на WordPress"

Оглавление руководства

ГЛАВА 1: Почему необходимо делать резервные копии?
В этой главе рассматриваются основные причины, по которым резервное копирование не только желательно, но и обязательно должно быть настроено на вашем сайте. Игнорирование этого простого механизма будет стоить вам сотни долларов на восстановлении сайта.

ГЛАВА 2: Способы создания резервных копий
Существует два способа создания резервных копий — ручной и автоматический. Какой выберите вы? Отличия представлены в этой главе пошагового руководства.

ГЛАВА 3: Обзор плагина BackWPup
Небольшое содержание главы представлено списком ниже.

  • Почему стоит использовать именно Dropbox?
  • Возможности плагина
  • Требования для работы плагина
  • Установка плагина
  • Настройка резервного копирования
    • Раздел «Общие»
    • Раздел «Расписание»
    • Раздел «Архив БД»
    • Раздел «Файлы»
    • Раздел «XML экспорт»
    • Раздел «Плагины»
    • Раздел «Оптимизация БД»
    • Раздел «Проверка БД»
    • Раздел «Копирование на хостинг»
    • Раздел «Копирование в Dropbox»
  • Проверка первой резервной копии
  • Сохранение резервной копии на компьютер

ГЛАВА 4: Составляем план резервного копирования
Как наиболее эффективно настроить резервное копирование? Когда и какие файлы копировать в первую очередь? Подробный разбор всех этих вопросов в 4 главе руководства.

ГЛАВА 5: План восстановления
Какой смысл от имеющейся резервной копии, если вы не в состоянии быстро и легко развернуть её и восстановить работу своего сайта? Материалы этой главы позволяют основательно разобраться в этом вопросе.

Содержание:

  • Восстановление на тот же хостинг
    • Очистка таблиц от старых данных
    • Импорт таблиц из резервной копии
    • Настройка программы FileZilla
    • Загрузка файлов на хостинг
    • Настройка файла wp-config.php
  • Восстановление на другой хостинг
    • Создание базы данных на примере Мастерхост
    • Изменение информации в плагинах

ГЛАВА 6: Рекомендации
Ряд полезных рекомендаций, о которых вам не скажут в бесплатных обучающих курсах.

  • Тестируйте созданные резервные копии
  • Храните резервные копии за пределами сайта
  • Используйте грамотную структуру директорий

BackWPup