Могут ли хакеры внедрить что-либо на сервер вне /var/www/html
Мы получили взлом из-за плохой безопасности на нашем сервере. Хакер получил доступ к базе данных, вероятно, из php-файла, содержащего учетные данные базы данных в папке html. Папка /var/www/html имела права root и 777 разрешений. Мог ли хакер сделать что-нибудь вне папки /var/www/html? Нужно ли нам перезагружать наш сервер, или правильная защита подойдет?
Обратите внимание, что мы уже изменили разрешения и владельца html-папки и файлов внутри. Мы также изменили учетные данные базы данных и реализовали некоторую защиту MySQL. Также заблокированы все порты, кроме http, https и ssh-порта (также измените ssh-порт)
1 ответ
Предполагая, что вы используете базовую настройку Apache2, все apache2 выполняемые процессы и PHP-код запускались как пользователь: группа www-data:www-data который ограничивает, где он может записывать данные. Злоумышленник, вероятно, будет иметь доступ к:
Ваши базы данных SQL, так как очень вероятно, что учетные данные нужно было где-то хранить
www-dataможет читать, иначе ваше веб-приложение (например, Wordpress) не сможет подключиться к вашей базе данных.Любые файлы в вашем
/home/*каталоги, кроме файлов с разрешениями600или аналогичные, такие как ключи SSH. Это означает, что в большинстве случаев злоумышленник не будет иметь доступа к вашим ключам SSH.Любые токены API или другие файлы, хранящиеся в
/var/www/htmlЛюбые файлы конфигурации в
/etcэто не было ограниченных разрешений. Стоит отметить, что/etc/letsencrypt/liveимеет ограниченные разрешения и не может быть прочитан черезwww-dataпоэтому ваши ключи SSL должны быть в безопасности.
В любом случае я бы посоветовал не доверять никаким учетным данным в системе, таким как ключи SSH, токены API и выпуск новых сертификатов SSL для безопасности. Вы можете так сделать find / -group www-data чтобы увидеть любые файлы, созданные www-data так как могут быть некоторые случайные области, такие как /tmp, места PHP сессий хранятся, /var/run, так далее.