Защита пароля MySQL в PHP скрипте



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



Если я включу оператор mysqli_connect() в свой PHP-скрипт, а также включу имя пользователя и пароль MySQL, будут ли эти данные уязвимы в любой момент? Очевидно, что все, что находится между скобками PHP, не обслуживается на стороне клиента (и поэтому не должно быть доступно для просмотра при просмотре исходного кода и т. д.) однако есть ли какой-либо другой способ скомпрометировать эти детали?

610   1  

1 ответ:

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

Лучший способ обойти это-переместить все из вашего webroot, за исключением файла index.php, который содержит только один файл вне каталога. Это также означает, что ваш исходный код не будет скомпрометирован, предполагая, что PHP не будет работа.

Например, /var/www/public_html содержит только один файл: index.php:

<?php require("../entrypoint.php");

И все остальное тогда находится в /var/www. Если PHP тогда потерпит неудачу, только index.php будет скомпрометирован.

Это сделает его совершенно безопасным, если только ваш сервер не будет скомпрометирован или вы не позволите пользователям выполнять PHP-код, но это совсем другой вопрос. Большинство модульных CMS также сбрасывают все переменные соединения после инициализации соединения, чтобы избежать случайного раскрытия одного из модулей что-нибудь.

Comments

    Ничего не найдено.