Web 服务器安全入门

安全资讯 小布 290浏览 1评论

介绍

随着 Web 服务、基于 Web 的应用程序和其他服务的发展,互联网在人们生活和业务运营中的作用不断增加。许多企业甚至将大部分服务转移到网上,或将其网络形象视为宣传其品牌和与客户共享信息的主要方式。

作为回应,HTML5 和 HTTPS 等协议正在进一步传播。它们满足客户随时随地访问任何数据的需求,尤其是在涉及在线购物或银行业务时。然而,所有这些基于网络的进步也吸引了网络窃贼和黑客,鼓励他们寻找新的漏洞和攻击媒介,以瞄准企业和毫无戒心的网站访问者。

 

对于那些希望解释有关 Web 服务器安全性的基础知识和神话以及他们如何提高网站安全性的人,本文是 Web 服务器保护中的信息安全技能系列的第一篇。我们将提供 Web 服务器安全性的概述,并介绍许多将在后面的文章中更详细地探讨的关键术语和主题。

 

网络与 Web 服务器安全

虽然有许多工具、技术和主动防御机制(如防火墙和入侵检测系统)可用于增强 Web 服务器的安全性,但组织必须采取的第一步是开发一种整体的安全方法。人们可能很容易认为,仅仅拥有一个网络防火墙来保护网络也可以保护位于其中的 Web 服务器和 Web 应用程序,但事实并非如此。

但是,网络安全不同于 Web 服务器安全。防火墙等外围防御使用规则来过滤和阻止预定为“不良”的流量。但是,在建立、管理和保护网站时,此类网络外围防御并非旨在或不适合保护 Web 服务器免受恶意攻击。

企业和组织网站必须可访问,以允许进入端口 80 (HTTP) 和 443 (HTTPS) 的传入流量访问此类 Web 服务,仅此而已。因此,网络防火墙无法分析传入的 Web 流量是否只是想了解有关公司的更多信息,或者是为未来的网络攻击执行初始漏洞扫描。

Web 服务器加固

当启动新的 Web 服务器时,任何安全专业人员要做的第一件事就是执行一系列步骤并设置一系列配置以保护或强化设备。Web 服务器强化是指在恶意黑客利用 Web 服务器及其应用程序之前识别、修复和缓解 Web 服务器及其应用程序的所有已知安全问题和漏洞。

加固服务器不仅包括确保软件运行最新的操作系统和补丁,还包括根据组织的独特要求和设备的预期用途关闭服务、端口和其他识别信息。

Web 服务器强化应该在 Web 服务器及其应用程序在生产中“实时”运行之前在开发或测试环境中进行。在这些开发环境中,组织可以使用多种不同的工具和最佳实践来强化 Web 服务器,包括使用漏洞扫描器扫描 Web 应用程序、进行手动源代码审计和质量审查、完成渗透测试以及确保设备的管理控制台有适当的过滤器、规则和服务。

常见的 Web 服务器加固技术

与任何其他安全最佳实践一样,这些强化方法都不是最好的或足够全面的,可以识别所有漏洞或防止不需要的流量探测设备;每个都有其优点和缺点,应该很好地理解。

例如,虽然自动化 Web 服务器漏洞扫描器是快速、快速和重复出现的方法,可以比手动审查或渗透测试更快地发现广泛的技术漏洞,但由于漏洞利用开发的绝对速度,它无法合理地识别所有逻辑漏洞。另一方面,手动审计或渗透测试可以帮助确保更多的当前漏洞得到解决,但这些测试和审查速度较慢,而且执行成本通常更高。在任何一种情况下,组织还必须决定测试是“白盒”还是“黑盒”审查,其中源代码或设备配置的内部知识分别是已知或未知的。

保护 Web 服务器组件

有许多组件组成 Web 服务器并与之交互,这些组件使托管和运行 Web 应用程序成功。这些组件包括 Web 服务器软件、Web 服务器操作系统(例如 Linux 或 Windows)以及数据库服务器和网络设备。构成 Web 服务器的每个部分和部分都需要进行测试、修补和保护,因为每个部分都可以为网络攻击者提供访问或绕过 Web 应用程序以检索或修改敏感数据的方式。

删除未使用的服务

Web 服务器启用的服务和功能越多,潜在黑客利用该设备的机会就越多。一个简单但容易被忽视的最佳实践是禁用和关闭任何不会在 Web 服务器环境中使用的服务、端口或功能。这可以减少潜在的攻击面。

限制远程访问

根据 Web 服务器环境的大小、规模和用途,对 Web 服务器的远程访问至少应该受到限制、加密并通过 SSH 和 RDP 安全地建立隧道,或者完全关闭。如果可能,对 Web 服务器的管理访问应限于特定范围的 IP 地址,例如分配给管理团队的 IP 地址。

用户帐户和权限管理

可以与 Web 服务器集成的两种类型的帐户:用户和系统。在这两种情况下,都需要在功能和安全性之间取得适当的平衡,使管理员能够完成必要的维护任务,而不会过于繁琐以降低生产力或鼓励变通办法。

用户帐户的一种方法是在 Web 服务器上建立不同的管理员帐户,以执行不同的安全和维护任务。这可能意味着一个帐户执行日志审查,另一个帐户执行系统备份,另一个帐户更改系统配置。通过这种方式,可以执行工作以实现指定的目的,但在用户名和凭据被利用的情况下,没有一个帐户具有全局权限。

系统权限,例如连接到网络服务器的数据库所拥有的以读取/写入流量日志或显示信息的权限,也需要仅使用启用 Web 应用程序所需的权限来构建。如果不这样做,攻击者可能会操纵这些关联的系统帐户以绕过安全控制或对组织造成损害。继续以数据库为例,不当的系统帐户控制可能导致未经授权的系统通信、创建或删除数据库表或利用其他服务为恶意用户提供更多攻击面。

打补丁

与任何其他软件一样,最重要的安全实践之一是定期修补软件。当制造商发现安全漏洞或错误时,会部署补丁来修复这些漏洞。这些应始终用于确保您的 Web 服务器中的众所周知的弱点在被黑客发现和利用之前得到修复。

网络应用防火墙

如前所述,虽然传统网络防火墙根据特定标准或规则监控流量、请求和 IP 地址,但它们并非旨在评估流入 HTTP 和 HTTPS 端口的流量。但是,Web 应用程序防火墙 (WAF) 可用于 Web 和应用程序服务,以尝试在应用程序或主机级别识别恶意活动。例如,如果攻击者试图使用已知漏洞通过 HTTP 和 HTTPS 流量利用 Web 服务器,WAF 可以阻止此连接并阻止攻击者对网站发起攻击。

但是,与其他安全产品一样,WAF 也有其不足之处,应将其用作更大的分层防御策略的一部分。特别是,WAF 仅使用针对现有连接的已知恶意流量的签名或模式来检测已知的 Web 服务器安全漏洞。虽然这将保护您的 Web 服务器免受已知攻击甚至拒绝服务攻击,但零日漏洞或攻击媒介可以成功利用您的服务器。

此外,WAF 由可配置软件组成,这些软件依赖于管理员和安全专业人员来设置应保护哪些规则或服务。如果攻击者确定了避免这些协议的方法或确定了完全绕过 WAF 的安全漏洞,则可以利用 Web 服务器。

日志和安全

除了 Web 服务器加固和防火墙之外,组织还经常在其 Web 服务上使用流量日志,记录 Web 服务器上发生的一切。有了这些信息,管理员和安全专业人员可以设置标记以突出异常活动,或者在发生网络攻击时尝试重新创建攻击并了解更多关于攻击者的信息。无论哪种情况,管理员都可以使用此信息进行更改,以便将来更好地保护 Web 服务器。

基于脚本的安全性

Web 服务器安全性的另一方面涉及服务器执行或启用的脚本和命令。正如评估要在 Web 服务器上打开或关闭的其他服务和端口一样,安全专业人员需要了解 Web 服务器允许执行的命令类型。

例如: 请求服务器提供 PHP 文件,其中通常包含敏感的配置信息以及数据库密码和其他数据,可以禁用以防止攻击者请求和利用这些信息。

要禁用的关键脚本和命令的其他示例包括:

  • 防止公开执行 phpinfo.php 文件,有时 Web 开发人员会使用这些文件来记录有关 Web 环境的关键信息以帮助调试
  • 禁用 TRACK 和 TRACE 命令,Web 开发人员可以使用它们来调试 Web 服务器上的问题
  • 更改默认 SSL 密码,例如 Apache 的 SSL 附带的密码,这些密码通常比推荐的必要加密级别弱

Web服务器主动防御

用于提高 Web 服务器安全性的最后一种方法是使用 Web 漏洞扫描程序。这些设备也称为 Web 应用程序安全扫描器,包括自动扫描网站和 Web 服务器的预配置软件,探测它们是否存在可被利用的常见漏洞和安全问题。

Web 漏洞扫描程序是主动防御的流行选择。这是因为这些工具可以自动执行漏洞检测和报告过程,从而可以对 Web 服务器安全性进行多重且一致的评估。这些扫描器可以是“黑盒”,在测试之前不提供有关 Web 服务器的内部数据或知识,也可以是“白盒”,其中还扫描源代码以查找潜在漏洞。

结论

这绝不是对广泛的 Web 服务器安全工具和方法的完整介绍。此外,没有任何单一的最佳实践或技术可以防御所有坚定的攻击者。但是,探索 Web 服务器安全方面的完整 Infosec 技能系列可以为组织提供坚实的基础、一套规则和最佳实践,以充分利用其网络安全计划。

转载请注明:布尔云安的博客 » Web 服务器安全入门

头像
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (1)