Как поменять префикс

Зачем менять префикс базы данных

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

Существует 2 типа SQL внедрений. Обычное SQL внедрение — когда хакер получает возможность посылать команды базе данных и получать ответы от базы данных. Слепое SQL внедрение — когда хакер может посылать команды базе данных, но не получает ответов от нее.

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

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

Аргументы За

Изменение префикса рекомендовано в руководстве по увеличению безопасности в Кодексе Вордпресс.

Эта рекомендация попала туда после устранения разработчиками Вордпресс уязвимостей, связанных с SQL внедрениями.

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

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

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

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

Так как вы будете работать с глубокими настройками базы данных и файлом wp-config, сделайте бэкап всего сайта и базы данных. Если что-то пойдет не так, вы сможете восстановить сохраненную версию.

2. Изменения в базе данных

Зайдите на хостинг и откройте базу данных.

В базе данных нужно поменять префиксы главных таблиц, это делается с помощью SQL запросов на вкладке SQL. Структура запроса для изменения всех таблиц такая:

RENAME table `wp_название-таблицы` TO `новый-префикс_название-таблицы`;

Замените название-таблицы на нужное название таблицы, и новый-префикс на ваш новый префикс, который вы сохранили в файле wp-config.php.

1. Для одиночной установки Вордпресс измените префиксы в стандартных таблицах Вордпресс:

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

2. Для мультисайт установки добавьте эти префиксы:

Измените новый-префикс на новый префикс.

Также измените эти таблицы:

wp_#_commentmeta
wp_#_comments
wp_#_links
wp_#_options
wp_#_postmeta
wp_#_posts
wp_#_terms
wp_#_term_relationships
wp_#_term_taxonomy

Замените # на ID вашего подсайта. Например, запрос к таблице wp_commentmeta подсайта с ID 2 будет wp_2_commentmeta

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