Apache 作为 Windows 上的服务,存在安全问题吗?

Apache 作为 Windows 上的服务,存在安全问题吗?

总结

对于 Windows 上的 Apache 作为服务:授予用于运行 Apache 作为服务的域用户并授予他们以下权限:作为操作系统的一部分存在安全隐患?Apache 网站推荐这个。如果这是一个安全问题,我应该怎么做?


我正在设置Apache 2.4 64 位Windows 服务器 2008

到目前为止,我已经从阿帕奇豪斯网站并将其解压到我想要的目录中,然后httpd.exe -k install按照Apache 网站

现在我可以从 services.msc 中看到 Apache 服务

来自 services.msc 的 Apache 服务

按照 Apache 网站上关于设置 Apache 为服务的说明,其中说明如下:

默认情况下,所有 Apache 服务都注册为以系统用户(LocalSystem 帐户)的身份运行。LocalSystem 帐户没有通过任何 Windows 安全机制(包括文件系统、命名管道、DCOM 或安全 RPC)访问您的网络的权限。但是,它在本地拥有广泛的权限。

然后它发出警告:

切勿授予 LocalSystem 帐户任何网络权限!如果您需要 Apache 能够访问网络资源,请按照下文所述为 Apache 创建一个单独的帐户。

然后它指出您应该执行以下步骤:

建议用户创建一个单独的帐户来运行 Apache 服务。如果您必须通过 Apache 访问网络资源,则这是必需的。

  1. 创建一个普通域用户帐户,并确保记住其密码。
  2. 授予新创建的用户“作为服务登录”和“作为操作系统的一部分”的权限。在 Windows NT 4.0 上,这些权限是通过域用户管理器授予的,但在 Windows 2000 和 XP 上,您可能希望使用组策略来传播这些设置。您也可以通过本地安全策略 MMC 管理单元手动设置这些权限。
  3. 确认创建的帐户是用户组的成员。
  4. 授予该帐户对所有文档和脚本文件夹(例如 htdocs 和 cgi-bin)的读取和执行 (RX) 权限。
  5. 授予 Apache 日志目录的帐户更改 (RWXD) 权限。
  6. 授予该帐户对 httpd.exe 二进制可执行文件的读取和执行 (RX) 权限。

然后继续……在谷歌搜索了上述一些步骤后,我遇到了一些论坛帖子这引起了对第 2 步的一些安全担忧:

2. 授予新创建的用户“作为服务登录”的权限,并作为操作系统的一部分。

因此,有人可以确认是否授予用于运行 Apache 作为服务的域用户并授予他们以下权限:作为操作系统的一部分是否存在安全隐患?是否需要?有没有更好的方法?

上述安全问题是我在以下 Microsoft 网站链接的论坛上发现的https://msdn.microsoft.com/en-us/subscriptions/dn221957其中指出:

作为操作系统策略设置的一部分,该操作确定某个进程是否可以冒充任何用户的身份,从而获得该用户被授权访问的资源的访问权限。

相关内容