谷歌开源了一款漏洞扫描器,名为“海啸 (Tsunami)”,专用于由数千个甚至是数百万个联网系统组成的大型企业网络。
该漏洞扫描器最初在谷歌内部使用,上个月在 GitHub 上开源。虽然“海啸”将不会成为官方谷歌产品,但将由开源社区负责维护,和Kubernetes 的情况类似。
工作原理
虽然市场上已经存在数百个商用或开源的漏洞扫描工具,但“海啸”的不同之处在于,它专为像谷歌一样的大型企业而构建。这些企业可能管理者包含数万台服务器、工作站、网络设备和 IoT 设备的网络。
谷歌表示,他们设计“海啸”一开始是为了适应极其多样化和极其庞大的网络,无需为每种设备类型运行不同的扫描器。谷歌指出,为此它首先将“海啸”分为两个主要部分,之后在顶部增加了一个可扩展的插件机制。
第一个“海啸”组件是扫描器本身,或者是侦察模块。该组件扫描企业网络中是否存在开放端口,之后对每个端口进行测试并试图识别出在每个端口上运行的确切协议和服务,目的是阻止标签错误的端口并测试设备上是否存在漏洞问题。
谷歌表示,端口指纹识别模块基于通过行业测试的 nmap 网络映射引擎,不过也使用了一些自定义代码。
第二个“海啸”组件更为复杂,它根据第一个组件的结果运行。它提取每台设备及其被暴露的端口,选择一系列漏洞进行测试,并运行良性 exploit以查看设备是否易遭攻击。
该漏洞验证模块同时也说明了“海啸”如何可通过插件进行扩展,即安全团队可通过何种方式在网络内部增加可供检查的新的攻击向量和漏洞。
当前的“海啸”版本中含有多个插件,可用于检查:
被暴露的敏感UI:应用如 Jenkins、Jupyter 和 Hadoop Yarn 的 UI 允许用户调度工作负载或执行系统命令。如果这些系统在未认证的情况下被暴露在互联网上,则攻击者可利用该应用的功能执行恶意命令。
弱凭证:“海啸”使用其它开源工具如ncrack 检测协议和工具如 SSH、FFTP、RDP 和 MySQL 使用的弱密码。
谷歌表示,计划在未来几个月通过新增插件的方式增强“海啸”的功能,使其能够检测出更多的 exploit。届时,将通过另外一个专门的 GitHub 仓库发布所有的插件。
重在消减误报
谷歌表示未来“海啸”将重在满足高端企业客户如谷歌本身的目标以及这类大型多设备网络的条件。
扫描的准确性将是“海啸”的首要目标,它致力于提供包含尽可能少的误报(不正确的检测结果)结果。这一点非常重要,因为“海啸”将在庞大的网络中运行,即使是少量的误报结果也可导致数百或数千台设备收到不正确的补丁,很可能造成设备崩溃、网络崩溃、无数的工作时间被浪费,甚至是导致企业底线尽失。
此外,“海啸”将同时仅扫描可能遭武器化的高危漏洞,而不是一网扫尽所有的漏洞,正如当前多数漏洞扫描器所做的那样。这样做的目的是减少安全团队面临的警报疲劳问题。
“海啸”的GitHub 地址:
https://github.com/google/tsunami-security-scanner
原文链接
https://www.zdnet.com/article/google-open-sources-tsunami-vulnerability-scanner/
声明:本文来自代码卫士,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。