由于服务器安全性差,我们遭到了黑客攻击。黑客可能通过 html 文件夹中保存数据库凭据的 php 文件访问了数据库。/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
可以读取的地方)否则您的 Web 应用程序(例如 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
等等。