Что может сделать хакер с моим wp-config.php

11

Я пытаюсь защитить свой блог WordPress. Я прочитал некоторые посты в Интернете, которые я должен изменить table_prefixи скрыть свои wp-config.php. Тем не менее, я не понимаю? Что может сделать злоумышленник с моим wp-config.php?

Я имею в виду, что есть мои конфигурации базы данных, но, DB_HOSTнапример, атакующему нужен мой , который не так легко получить, чтобы подключиться к моей базе данных? (В моем случае это:, define('DB_HOST', 'localhost');который атакующий не смог использовать для подключения к моей базе данных )

Или я скучаю по чему-то?

Я очень ценю ваш ответ!

Kare
источник
Я думаю, ему будет легко ввести SQL. Помеченные. Жду экспертов, чтобы ответить на это.
Роберт Хюэ,
Вы также можете опубликовать его в бета-версии «Программирование головоломок и кода для гольфа» и посмотреть, что придут люди. :)
Джошуа Тейлор
1
@JoshuaTaylor Пожалуйста, нет. Помимо очевидных этических проблем, это не то, чем занимается наш сайт: нам нравятся только вопросы, которые могут иметь объективный критерий выигрыша, чтобы решить, какое решение победит, а не просто «Эй, давайте все напишем код и получайте удовольствие! Yaaaay!»
Ручка
@ Doorknob Ну, очевидно, это будет конкурс популярности. Но всерьез я надеялся, что ":)" покажет, что я несерьезен. Если в результате кто-то попытался опубликовать свои файлы wp-config, примите мои извинения.
Джошуа Тейлор

Ответы:

9

localhostотносится к машине, на которой он работает. Например на моем собственном сайте tomjn.com localhost такой, 127.0.0.1какой он есть всегда. Это не означает, что хакер не знает, где подключиться, это означает, что хакер заменяется localhostна tomjn.com.

Конечно, если у меня есть прокси-сервер, это не сработает, но имейте в виду, что если у злоумышленника есть доступ ко мне wp-config.php, этот же доступ позволит им делать другие действия на этой машине.

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

В зависимости от безопасности вашей установки, они могут создать пользователя для себя, войти в систему, загрузить плагин через zip с помощью скрипта PHP Shell и начать вводить команды или использовать сайт как часть бот-сети.

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

Достаточно сказать, что получение wp-config.php- это одна из худших вещей, которые могут случиться. С ним можно сделать гораздо больше, но потребуются месяцы, чтобы напечатать все возможные атаки, вызванные этим.

В случае, если ваш wp-config.phpполучен, скорее всего, это сделал сценарий автоматической атаки, а не реальный человек. Измените все свои данные, сбросьте все пароли и закройте дыру.

Том Дж Новелл
источник
2
Это не означает, что хакер не знает, где подключиться, это означает, что хакер заменяется localhostна tomjn.com. > Это предполагает, что у вас есть порт для базы данных, доступный для внешнего мира. Разве вы не в безопасности, если вы закрыли порт в правилах брандмауэра, позволяя только компьютерам в локальной сети (включая компьютер, на котором работает WordPress) подключаться к базе данных?
IQAndreas
1
Это все равно будет правильное местоположение, но да, порты актуальны, я в основном нацелился на оригинальную заметку в вопросе
Том Дж. Новелл
2

Если вы принимаете доступ к базе данных только из localhost(это не достигается путем определения DB_HOSTкак localhost)? Не слишком много (в худшем случае злоумышленник захватит учетную запись администратора), но в сочетании с другими уязвимостями злоумышленнику может быть полезно иметь доступ к вашей конфигурации.

Учетные данные для входа

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

По крайней мере, злоумышленник получает представление о том, какие пароли вы используете (абсолютно случайные, только строчные / цифры, длина и т. Д.).

Префикс таблицы

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

Ключи и Соли

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

База данных Charset

Некоторые SQL-инъекции зависят от набора символов, поэтому злоумышленнику полезно знать это.

Резюме

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

Тим
источник
Эта статья достаточно актуальна. Вы не хотите, чтобы ваши соли и ключи просочились. Это личная информация. Если вы даже подозреваете, что они были сделаны доступными, немедленно измените их на другой набор случайных данных. Нет никаких недостатков в их изменении, просто вы выйдете с сайта, и вам придется снова войти в систему. Вы можете получить новый рандомизированный набор ключей и солей здесь: api.wordpress.org/secret-key/1.1/salt
Otto
1

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

Ваше предположение, что информация БД не является конфиденциальной, неверно. Предположим, ваш сайт размещен на Godaddy. godaddy AFAIK использует выделенные серверы mysql, к которым, вероятно, можно получить доступ только с их собственных серверов, но если я знаю ваши данные, насколько сложно мне создать учетную запись godaddy и написать скрипт, который обращается к вашей БД? В случае с локальными БД использовать их сложнее, но на серверах общего хостинга у вас может быть 100 сайтов, совместно использующих сервер, можете ли вы доверять им, чтобы они были достаточно защищены, чтобы г-н Зло не смог взломать их и использовать для атаки на ваш сайт?

Марк Каплун
источник