Ubuntu - 有人能够在 ubuntu/apache 服务器上写入

Ubuntu - 有人能够在 ubuntu/apache 服务器上写入

有人试图入侵我的网站,我的网站基于 Laravel 框架中的 PHP (7)/MySQL 构建。/var/www 的所有者是 www-data,所有文件夹的文件夹权限设置为 700,文件权限设置为 600。尽管如此,黑客还是能够修改 index.php 的内容,并且能够删除一些 PHP 文件。服务器是 Ubuntu 17.04,Web 服务器是 Apache。

我需要立即指导他如何能够在权限为 700 的文件夹中写入文件。我非常感谢您的帮助和指导。如果您需要更多详细信息来了解问题,请告诉我。

答案1

如果您的 apache 服务器以除下面用户之外的其他用户身份运行,www-data请将其替换为该用户。www-data

所有者应为除 之外的任何用户www-data。我使用非特权用户来更新网站。组应为www-data目录的权限应为 750,文件的权限应为 640。这将阻止 apache 写入目录和文件。如果您使用权限 755 和 644,则服务器上的任何用户都可以读取数据。这可用于允许第三个帐户审核内容,可能与内容的参考副本进行比较。

如果您有一个上传目录,则它应该由 770 拥有www-data或具有权限。请仔细观察,因为它可用于删除恶意软件。配置 apache 以防止执行此目录中的任何内容。为此使用配置文件,因为可以覆盖.htaccess此目录中的文件。

上述规则适用于您的配置引用的所有目录和文件。递归计数,因此使用递归配置应用规则。

以下命令将锁定/var/www。您可以将守护进程替换为 以外的任何用户www-data。将上传目录更改为您的上传目录。

find /var/www -type d -exec chmod 750 {} +
find /var/www ! -type d -exec chmod 640 () +
find /var/www -exec chown daemon:www-data {} +
chmod 770 /var/www/uploads

添加如下条目。请参阅选项文档如果您想要一些选项,请了解详细信息。

<Directory "/var/www/uploads">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

请注意,可能有恶意软件被放入/tmp并被写入任何其他位置www-data

答案2

  1. 我会检查 Apache 日志和 OS 日志。(var/log/httpd/ 和 /var/log/auth.log)您需要找出他们如何访问您的服务器并修补漏洞。
  2. 确保您的防火墙正常工作(端口扫描您的服务器)。
  3. 检查您的服务器是否修补了操作系统和应用程序,以确保它们没有使用某些旧代码的漏洞。

我的网站文件/文件夹在 Linux 网络服务器上应该具有什么权限?

相关内容