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

工程

工程

🚀 OXO v1.0 正式发布!

OXO 1.0 版本速度提升 10 倍,支持 ARM64 架构,并带来多项改进的能力,例如扫描多个资产,以及更简洁、更强大的 CLI。

🚀 OXO v1.0 正式发布!

两年前,我们开源了我们的安全扫描编排器。

在此期间,该编排器经受了数十万次扫描的实战检验,发布了 200 多个版本,下载量超过 25 万次,并新发布了 29 个检测 Agent。

OXO 是各种安全工具的指挥者。它将多种专业工具汇集在一起,并协调它们作为 Agent 无缝协同工作,从而简化并改进漏洞检测。

今天,我们很高兴地宣布,该项目终于成熟并迎来了版本 1,新增了一系列令人兴奋的新功能,并正式更名为 OXO。

启动扫描的速度现已提升 10 倍

在之前的版本中,启动一次扫描需要将近 3 分钟。借助 OXO v1,速度提升了 10 倍,启动一次扫描仅需 16.5 秒。

之前(177s):

OXO 扫描启动(改进前)

之后(16.5s):

OXO 扫描启动(改进后)

独立二进制文件

OXO 现已提供适用于 macOS、Linux 和 Windows 的独立二进制文件。您可以直接从 GitHub 发布页面下载:https://github.com/Ostorlab/oxo/releases

Agent 支持 macOS 和 ARM64 架构

如果您是使用 ARM64 处理器的 macOS 用户,我们有一个好消息要告诉您!OXO 现在可以原生支持 ARM64 Agent。

对于 Agent 开发者,现在可以在 Agent 定义 YAML 文件 oxo.yaml 中指定支持哪些架构。

支持 macOS 和 ARM64

将 Agent 发布到 OXO 商店后,商店会自动为所有指定的架构构建 Agent 的容器镜像。

此外,当您运行扫描时,OXO 会自动选择并拉取与您的架构相对应的镜像。

扫描资产清单文件

OXO 新增了使用资产定义 YAML 文件扫描多个资产的功能。这让您可以同时扫描大量不同类型的资产。

使用 YAML 文件扫描多个资产的示例:

包含多个资产的 Agent 组
您可以使用 —assets 参数扫描资产清单中指定的所有资产。
多资产扫描命令

更友好的 CLI:

“agent key”是一个唯一标识符,帮助 OXO 识别您想要使用的 Agent。它由三个元素组合而成:“agent”(字符串)、组织名称以及 Agent 本身的名称。

例如,属于组织 my_org、名为 my_agent 的 Agent,其 agent key 为 agent/my_org/my_agent。

从 OXO 版本 1 开始,您可以在运行扫描时以简洁的方式指定 agent key。您可以使用简写格式 <org>@<name> 来代替完整的 agent key。这会告诉 OXO 使用属于指定组织、具有指定名称的 Agent。

例如:

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

可以写成如下形式:

oxo scan run --install --agent ostorlab@nmap --agent ostorlab@openvas ip 8.8.8.8

或者,如果您使用的是发布在 Ostorlab 官方组织中的 Agent,只需使用 Agent 的名称即可

oxo scan run --install --agent nmap --agent openvas --agent tsunami --agent nuclei ip 8.8.8.8

全新文档网站:

OXO 现在拥有专属的文档网站,其中包含丰富的教程和大量示例。

OXO 文档

Agent 商店

Agent 是 OXO 扫描能力的主要组成部分,因此我们推出了 OXO 的 Agent 商店。

在这里,您可以找到由 Ostorlab 和社区发布的 Agent。 您也可以按照这篇教程,轻松地将您的 Agent 发布到 OXO 商店

OXO Agent 商店首页

Agent 商店中的 nmap Agent

默认跟踪扫描进度

跟踪扫描进度的方式得到了简化。从 v1 版本开始,--follow 成为默认模式,当您启动扫描时,OXO 会持续向您更新扫描进度。

asciicast

直接从 CLI 向 Agent 传递参数

可以使用参数对 Agent 进行微调,从而为您提供更多的控制和灵活性。现在,整个 CLI 都支持传递参数。

例如,如果您希望仅使用 Nmap Agent 启动扫描,并将 fast_mode 参数设置为 false,可以使用如下格式的 agent_group.yaml 文件。

带参数的 Agent 组

现在,您可以直接从 CLI 执行相同的任务:

oxo scan run --agent agent/ostorlab/nmap --arg fast_mode:False ip 8.8.8.8

新增持久化消息的能力:

OXO 新增了一个开源 Agent Nebula。Nebula Agent 允许您持久化任何类型的消息,例如 IP、域名、链接和暴露的服务等,让您不再局限于仅扫描漏洞,而是可以进入侦察和攻击面测绘等更高级的场景。例如,下面是一个 Agent 组,它从目标的主域名出发,收集域名、子域名、IP 和暴露的服务。

包含 Nebula Agent 的 Agent 组

使用此命令运行扫描后,您可以在路径 ~/.ostorlab/ 中找到所有已持久化的消息

总结

OXO 1.0 版本速度提升 10 倍,支持 ARM64 架构,并带来多项改进的能力,例如扫描多个资产、更简洁且强大的 CLI、Agent 商店等。

您可以查看 OXO 文档中的示例部分,了解使用 OXO 的常见场景列表。

其中涵盖了 Web、网络、SBOM 文件等多种类型的扫描。

您还可以查看 KEV 项目,该项目在底层使用 OXO 来检查所有已知可被利用的漏洞。

标签:

opensource, security, oxo