我们的 AI 引擎 Neutron 在加州大学伯克利分校的 CyberGym 基准测试中取得了 96.75% 的成绩。 了解更多

产品

产品

Ostorlab 开源了 🎊

这是一次重大发布:Ostorlab 正式开源,同时推出大量新功能和新能力。

这是 Ostorlab 创立以来最重要的一次发布,我也为能宣布这件事感到格外兴奋。

Ostorlab 将走向开源,发布我们的扫描引擎、漏洞检测器和分析器。

Ostorlab 的核心是一个高度模块化的引擎,它让组合漏洞检测器变得充满乐趣。

为了充分发挥这种模块化的优势,我们发布了一个应用商店,其中内置了 Nmap、OpenVAS、Tsunami、Nuclei 等热门开源安全工具,未来还会有更多工具加入。

H1
商店

在这次新版本中,我们新增了对扫描一切目标的支持,从移动应用、Web 应用、IP 地址到容器;同时,检测目标也几乎涵盖一切,从发现简单的配置问题、爬取密钥,到运行功能完备的动态分析环境。

上手非常简单,只需一条命令安装,一条命令运行:

pip install -U ostorlab 
oxo scan run --install \
 --agent agent/ostorlab/nmap --agent agent/ostorlab/openvas --agent agent/ostorlab/tsunami --agent agent/ostorlab/nuclei \
 ip 8.8.8.8

H1
运行扫描

不过,在深入介绍新平台及其提供的功能之前,我想先谈谈促使我们将平台开源的原因。

背后的故事

Ostorlab 自创立以来就是一个以社区为中心的平台。它最初是一个免费的在线平台,可以不受限制地扫描移动应用。只需上传您的应用或从应用商店中选择它,就这么简单。

这一决定源于一个坚定的信念:安全不应只属于那些有能力购买昂贵工具的大企业。

将平台开源是一个自然而然的延伸,我们之所以推迟,是因为我们希望分享的是一个他人可以轻松使用、采用、把玩并参与贡献的东西。

我们开源平台的第二个原因,是对安全行业发展方向的普遍失望。传统的安全扫描器乃至较新的平台都以企业为中心,而且越来越趋向于高度专业化。

如果您如今在管理一个漏洞扫描项目,即使规模很小,也需要大量工具才能获得足够的覆盖面:Web 应用、网络基础设施、Web API、云项目、IAM 策略、容器、源代码、依赖、密钥……每一类都需要一个工具,清单还可以一直列下去。

问题在于,这些工具之间无法互操作,各自有着不同的概念和术语,使用的风险评级也各不相同。

另一方面,开源安全领域非常活跃,有不少出色的项目。其严重的不足在于这些工具往往生命周期很短,常常是为了几场会议演讲而开发,之后便逐渐荒废。当然也有一些值得一提的例外,比如历史悠久的 Nmap 或令人惊叹的 sqlmap,但它们只是例外,而非常态。

这意味着什么?

那么,Ostorlab 在这一现实中扮演什么角色,又是如何尝试提供帮助的呢?

首先,Ostorlab 通过提供一种统一的通用语言,让各种工具无缝协作。无论它们是用哪种编程语言构建的,无论运行在什么平台上,都使用同一种“语言”沟通,协同服务于同一个目标:发现漏洞。

具体来说,Ostorlab 将工具封装成 Agent,这些 Agent 通过分布式消息进行异步通信。这些消息代表了各工具都能认同的一套共享安全分类体系。消息是强类型的、紧凑的二进制格式,并遵循层级结构。

H1
Protos

例如,要扫描一个 Web 应用,共享分类体系将包括:

  • URL::用于爬取和暴力枚举 URL;
  • Request/Response:用于提取指纹,并在响应中搜索硬编码密钥等模式;
  • Fingerprint:用于列出库、服务和技术栈,并将其与已知漏洞进行匹配;
  • Injection Endpoint:用于对 XSS、SQL 注入、XXE 等漏洞进行模糊测试……

这种方法使得:

  • 工具串联实现自动化;
  • 替换工具甚至同时使用多个工具都毫不费力;
  • 对工具的扩展实现标准化。

H1
扫描列表

这种方法的另一个好处是让扫描具备可扩展性,工具无需任何改动即可在多台机器上运行。

H1
漏洞描述

除了提供让工具协同工作的平台之外,Ostorlab 还推出了一个新的商店,让您可以轻松获取经过打包、能够彼此无缝协作的安全工具。

H1
商店

在底层,工具其实就是容器,这使得平台既能支持复杂的部署,又能保持符合行业标准。

商店还提供了一个可视化工具,可以将多个 Agent 组合起来执行复杂的分析任务,从暴力枚举域名到对页面截图或提取密钥。该可视化工具随后可以生成一个 YAML 定义文件,只需一条命令即可在您的目标资产上运行。

H1
YAML

除了使用 CLI 运行扫描之外,Ostorlab 还提供了一个用于构建您自己的 Agent 的 SDK。该 SDK 只需少量代码即可支持标准用例,同时也提供了强大的 API,用于构建能够跨多台机器扩展的复杂 Agent,例如 QPS 限制、分布式锁、共享状态持久化以及分布式追踪和指标……

H1
文档

让添加和发布新工具变得简单的一个关键部分,是自动化构建以及与 Git 仓库的集成。Agent 仓库中的更新和变更会被自动获取。一旦添加了新的版本标签,新版本就会被构建并共享,商店会处理构建和发布新版本的所有繁琐工作。

H1
构建

您可以做什么?

欢迎试用并分享您的反馈。请报告缺陷、提出建议和意见。我们非常希望听到您的声音,并进一步了解如何让这个工具变得更好。

随着越来越多的 Agent 被构建和共享,这个平台的真正威力才会充分显现。发布您最喜欢的工具并在商店中分享,或者提交功能请求,让我们将其加入。

下一步计划

这次发布只是一个开始,许多其他新功能和更新已在路上。

即将推出的重要更新包括增加一个托管版本,让您可以在托管环境中对任何资产运行扫描。该托管环境将使用 Ostorlab 现有平台的能力,例如数据持久化、扫描历史、自动扩展、工单系统集成、多设备支持(iOS、macOS……)以及对分析环境的访问。

后续版本还将重点增加更多专用的目标资产类型和工具。这些版本将开源更多我们珍视的内部检测器,例如我们历史悠久的爬虫、XSS 扫描器、ostorlab 污点分析引擎、密钥检测器和黑盒 Web 模糊测试工具。

最后,我们正致力于通过分享 Ostorlab 收益中的相当一部分来支持开源维护者。

收益分配将考虑一些关键因素,以帮助推动更高质量的工具,这些因素包括:

  • 工具的受欢迎程度;
  • 工具对漏洞检测的贡献(真阳性);
  • 误报率;
  • 资源消耗(CPU、内存、磁盘大小)。

我们希望借此为工具维护者提供一种有意义的方式,让他们能够继续支持并持续改进这些工具。

标签:

open-source, security