Sudo 的四个隐藏成本和风险可能导致 Unix 和 Linux 服务器上的网络安全风险和合规性问题

作者:Chad Erbe
赞助帖子

关于是否在受监管的环境中使用开源软件,一直存在哲学上的争论。开源软件是众包的,来自世界各地的开发人员为软件包做出贡献,这些软件包稍后会被包含在操作系统发行版中。以“sudo”为例,它是一个旨在提供特权访问的软件包,包含在许多 Linux 发行版中,争论的焦点是它是否满足组织的要求,以及在多大程度上可以依靠它向审计人员提供合规性信息。

在评估 sudo 是否满足您的组织在 Unix 和 Linux 系统上的网络安全和合规性需求时,必须考虑四个隐藏的成本或风险,包括管理、取证和审计、业务连续性和供应商支持。虽然 sudo 是一种低成本的解决方案,但在安全计划中,以及当组织提供合规性数据以满足审计人员时,它可能会付出高昂的代价。在本文中,我们将回顾这些领域,同时确定应回答的关键问题,以衡量可接受的风险水平。虽然每个组织都不同,但存在特定的风险/成本考虑因素,这些因素为用商业支持的解决方案替换 sudo 提供了强有力的论据。

管理成本
使用 sudo 进行 Unix 和 Linux 权限管理存在一些隐藏的管理成本。例如,使用 sudo,您还需要在盒子上运行第三方自动化管理系统(如 CFEngine 或 Puppet)以及第三方身份验证模块。而且,如果您计划将盒子外部化,您将不得不将 sudo 替换为供应商版本的 sudo。因此,最终您需要维护 sudo、第三方管理系统、第三方自动化系统,并且如果您想针对盒子外部的东西进行身份验证,可能必须全部替换掉。商业解决方案将有助于整合此功能并简化 Unix 和 Linux 服务器的整体管理。

sudo 的另一个复杂之处在于一切都是本地的,这意味着随着环境的增长,管理起来可能非常耗时。而且我们都知道,时间就是金钱。使用 sudo,您必须依赖服务器上的本地系统来本地保存日志、轮换日志、将日志发送到存档环境,并确保没有人干扰任何其他相关子系统。这可能是一个复杂且耗时的过程。商业解决方案将所有这些活动结合在一起,包括二进制推送和保留、升级、日志、存档等。

Unix 和 Linux 系统本质上是分散的,因此单独管理每个主机都会导致管理成本和效率低下,进而导致风险。商业解决方案集中管理和跨所有主机进行策略开发,从而为特权访问管理程序引入企业级的一致性和最佳实践。

取证与审计风险
除了管理成本之外,让我们看看无法生成用于取证调查的日志数据相关的风险。为什么这对 sudo 来说是一个挑战?sudo 软件包安装在各个服务器本地,配置文件也在每台服务器上单独维护。有一些工具(如 Puppet 或 Chef)可以监控这些文件是否发生更改,并在检测到更改时用已知的良好副本替换文件,但这些工具仅在更改发生后才起作用。这些工具通常按计划运行,通常每天检查一到两次,因此如果系统受到威胁,或者授权文件被更改,可能需要几个小时才能将系统恢复到已知的良好状态。问题是,在这几个小时内会发生什么?

目前 sudo 中没有击键记录,并且由于 sudo 活动的任何日志都本地存储在服务器上,因此它们可能会被精通技术的管理员篡改。事件日志通常与正常的系统日志一起收集,但这再次需要对这些工具进行额外的配置和管理。当高级用户被授予服务器上的管理访问权限时,日志数据可能会被修改或删除,并且他们活动的所有证据都会被抹去,几乎没有迹象表明事件发生过。现在,问题是,这种情况是否已经发生,或者是否还在继续发生?

使用 sudo,没有日志完整性——日志没有监管链——这意味着日志不能被不可否认,因此在大多数司法管辖区都不能在法律诉讼中使用。这对组织来说是一个重大风险,尤其是在刑事起诉、解雇或其他纪律处分方面。第三方商业解决方案的日志是防篡改的,这对于 sudo 来说是不可能的。

大型组织通常收集大量数据,包括系统日志、访问信息和来自其所有系统的其他系统信息。然后,这些数据被发送到 SIEM 进行分析和报告。SIEM 工具通常不会在系统上发生异常事件时提供实时警报,而且事件的配置通常很困难且耗时。因此,企业环境中的警报很少依赖 SIEM 解决方案。这里的问题是,从事件发生到有人收到警报之间,可接受的延迟是多少?

使用 sudo 也无法将日志活动与其他数据相关联以确定更广泛的滥用模式。商业解决方案将日志收集到一个地方,并带有可搜索的索引。一些商业解决方案甚至将此日志数据与其他来源进行关联,以识别可能预示着严重安全问题即将发生的异常行为。因此,商业解决方案比 sudo 提供更大的取证优势。

sudo 的另一个陷阱是无法验证变更管理流程。审查变更记录并验证变更期间执行的操作是否与提议的实施方案相符始终是最佳实践。ITIL 和其他安全框架要求验证变更管理实践。Sudo 做不到这一点。商业解决方案可以通过查看会话命令记录历史记录和文件完整性监控来做到这一点,而无需泄露底层会话数据。

sudo 没有会话记录。会话日志是用于调查服务器上发生情况的最佳取证工具之一。人性是,当人们知道自己可能被监视时,往往会更加谨慎。Sudo 不提供会话记录。

最后,sudo 没有职责分离。大多数安全和合规性框架都要求真正的职责分离,而使用 sudo 等工具只是“掩盖”了职责分离方面。所有这些缺陷——缺乏日志完整性、缺乏会话监控、没有变更管理——在组织必须证明合规性或调查异常情况时会引入风险。

业务连续性风险
Sudo 是开源的。如果出现严重错误,则不提供赔偿。此外,sudo 没有回滚功能,因此始终存在错误会使整个系统崩溃的风险,而无人可以求助。当然,可以通过 Puppet 或 CFEngine 等第三方工具集中管理 sudo,但您最终仍然需要手动管理多个系统组中的多个文件(或作为一个庞大的策略进行管理)。使用这种方法,错误会一次性破坏每个系统的风险更大。商业解决方案将具有策略回滚功能,可以限制造成的损害。

缺乏企业支持
由于 sudo 是一个开源软件包,因此对于何时必须更新软件包以响应已识别的安全缺陷或漏洞,没有官方的服务级别。到 2017 年年中,sudo 中已经发现了两个 CVSS 评分大于 6 的漏洞 (CVE Sudo 漏洞)。在过去几年中,sudo 中发现了许多漏洞,这些漏洞需要长达三年的时间才能修补 (CVE-2013-2776, CVE-2013-2777, CVE-2013-1776)。这里的问题是,过去几个月或几年中使用了哪些漏洞?替换 sudo 的商业解决方案将消除此问题。

衡量 Unix 和 Linux 环境风险的十个问题
Unix 和 Linux 系统是外部攻击者和恶意内部人员的高价值目标。如果您共享帐户、提供不受限制的 root 访问权限或让文件和会话处于无人监控状态,则预计会被入侵。获得 root 或其他特权凭据使攻击者可以轻松地在雷达下飞行并访问敏感系统和数据。正如我们所回顾的那样,sudo 无济于事。

在平衡成本与 Unix 和 Linux 环境可接受的风险水平之间,请考虑以下 10 个问题
1. Unix/Linux 管理员花费多少时间仅仅是为了跟上进度?您的组织能否从自动化中受益?
2. 您是否能够跟上 Unix/Linux 系统的不同平台和版本更改?
3. 随着您的增长和更多主机的添加,管理员需要多少时间来跟上策略?增加人员是否是一个选项?
4. 跨系统的一致性如何?多个管理员修改单个 sudoers 文件会使这非常困难。如果不一致地管理系统,系统是否会变得孤立?
5. 当您引入新的或不同的 Linux 或 Unix 平台时会发生什么?这将如何使环境的管理复杂化?
6. 对于合规性或法律目的而言,知道策略文件或日志是否被篡改有多重要?
7. 您是否有办法验证 sudoers 文件是否未经许可被修改过?
8. 您如何知道管理员在成为 root 后实际做了什么?您是否有他们活动的命令历史记录?
9. 如果关键任务的 Unix/Linux 主机宕机,业务会损失多少?使用 sudo,团队解决和修复问题的速度有多快?
10. 您能否向董事会证明,如果发生重大中断,您有备份?

使用商业解决方案的好处
虽然商业解决方案的成本高于免费的开源解决方案,但它们提供了一种有效的方法来缓解与 sudo 相关的常见问题。提供集中管理的解决方案可以减轻监控和维护远程系统的压力,集中事件日志记录和击键记录是大多数企业审计期望的基石。

商业解决方案通常具有定期的发布周期,并且通常可以在漏洞报告后的数小时或数天内交付针对漏洞的补丁。BeyondTrust 的 PowerBroker for Unix & Linux 等商业解决方案在特权用户无法访问的单独基础设施上提供事件日志记录,这消除了日志篡改的可能性。PowerBroker 还提供强大的集中式策略控制,这些控制在与受管理系统分离的基础设施中进行管理;这消除了服务器环境中特权访问策略被恶意更改的可能性。强大的策略控制还将安全态势从“响应”转变为“预防”,高级功能提供与其他企业工具集成的能力,以及在特权访问会话开始或结束时有条件地发出警报。

结论
对于认真将强大的特权访问管理程序纳入其安全计划的组织而言,毫无疑问,商业产品比 sudo 等开源产品提供更好的效果。使用强大的控制、集中式日志文件收集和集中式策略管理来消除恶意行为的可能性,远胜于依赖 sudo 中提供的可疑、难以管理的控制。在计算您的 tier-1 Unix 和 Linux 系统的可接受风险水平时,必须考虑所有这些成本和收益。

继续阅读 Greg Bledsoe 的 GeekGuide 中关于此主题的文章,标题为 超越 Sudo:如何知道您已经不再需要它(以及该怎么做)。Linux Journal 读者免费。
加载 Disqus 评论