关于 tenzir-ocsf
用于查询 OCSF 参考文档并据此回答问题的 Skill,面向需要准确理解安全事件 schema 的用户。它要求先查阅资料,只陈述文档支持的事实,并按问题选择最短阅读路径。
主要功能
- 01按问题路由到相关文档
- 02查询版本、类与对象资料
- 03解释 OCSF 核心概念
- 04仅依据已读文档作答
适用场景
- 01为安全事件选择合适的类
- 02查找类或对象的属性
- 03了解 schema 版本变更
- 04研究扩展与配置文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ tenzir/ skills --skill tenzir-ocsf安装后在 Claude Code 中输入/tenzir-ocsf确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
articles.mdfaqs.mdintroduction.mdv1.0.0.mdarticles/defining-and-using-observables.mdmodeling-alerts.mdOCSF-Storage-Strategies.mdpatching-core-using-extensions.mdprofiles-are-powerful.mdrepresenting-process-parentage.mdfaqs/schema-faq.mdintroduction/appendix-a-guidelines-and-conventions.mdappendix-b-data-types.mdappendix-c-schema-construction-and-extension.mdattributes.mdcategories.mdevent-classes.mdextensions.mdintroduction-to-the-framework-and-schema.mdnotes.mdprofiles.mdunderstanding-the-open-cybersecurity-schema-framework.mdv1.0.0/classes.mdv1.0.0/classes/account_change.mdapi_activity.mdapplication_lifecycle.mdapplication.mdauthentication.mdauthorize_session.mdbase_event.md详细介绍
OCSF
查阅 OCSF 参考文档,并根据这些来源作答。只陈述你读过的文件中的事实。切勿编造架构细节。如果文档未涵盖相关问题,请如实说明。
版本
除非用户指定某个版本,否则使用最新稳定版。每个回答只使用一个版本。
每个版本页面都链接到该版本的类、对象、配置文件、扩展和类型。
文件布局
introduction.md # OCSF overview and conceptual sections
introduction/{section}.md
faqs.md # Schema design rationale
faqs/{slug}.md
articles.md # Deep-dive guides on specific topics
articles/{slug}.md
{version}.md # Version summary (what's new, counts)
{version}/classes.md # Class index grouped by category
{version}/classes/{name}.md
{version}/objects.md
{version}/objects/{name}.md
{version}/profiles.md
{version}/profiles/{name}.md
{version}/extensions.md
{version}/extensions/{name}/index.md
{version}/extensions/{name}/events/{event}.md
{version}/extensions/{name}/objects/{object}.md
{version}/extensions/{name}/profiles/{profile}.md
{version}/types.md
问题路由
根据问题类型选择最短的阅读路径。
| 问题类型 | 从这里开始 |
|---|---|
| 哪个类适用于事件 X? | 下方的类别表 → 版本类索引 → 候选类页面 |
| 类/对象 Y 有哪些属性? | 版本类或对象索引 → 对应页面 |
| 配置文件如何运作?/X 应使用哪个配置文件? | 简介:配置文件 → 版本配置文件索引 |
| 如何扩展架构? | 简介:扩展 或 修补核心架构 |
| 如何填充可观测项/对告警建模? | 常见问题 和 文章 |
| 版本之间有哪些变化? | 对比两个版本的页面 |
| 概念/设计问题 | 简介 → 常见问题 |
如果问题要求选择一个类,请阅读多个候选类并说明权衡。
领域知识
核心概念
属性是具有数据类型的命名字段。每个 OCSF 字段都有一个要求级别:必需、推荐或可选。
对象将相关属性归组成可重复使用的结构。对象可以嵌套其他对象。
事件类定义特定安全事件的架构。每个类都属于一个类别,并继承自 Base Event。
Base Event提供通用属性;在没有更具体的类适用时,可将其用作兜底类。
配置文件是用于添加跨领域属性的混入项。一个类可以应用多个配置文件。
扩展可添加特定供应商的属性,而无需修改核心架构。
事件类别
先根据类别范围缩小范围,再深入查看各个类的页面。
| 范围 | 类别 | 重点 |
|---|---|---|
| 1xxx | 系统活动 | 操作系统级别:进程、文件、模块、内存、内核、注册表 |
| 2xxx | 发现项 | 检测、漏洞、事件、合规性 |
| 3xxx | IAM | 身份验证、授权、账户和组更改 |
| 4xxx | 网络活动 | 通用流量和特定协议活动 |
| 5xxx | 发现 | 设备、用户、服务和资源枚举 |
| 6xxx | 应用活动 | Web 资源、API 调用、文件托管、数据存储操作 |
| 7xxx | 修复 | 文件、进程、网络和实体修复操作 |
| 8xxx | 无人系统 | 无人机、车辆和机器人 |
命名约定
- 统一使用
snake_case:process_activity、network_endpoint。 - 数组使用复数名称:
answers、enrichments、attacks。 - 当
_id为Other(99)时,必须填充同级字符串字段,值为 源值。
关键后缀:
| 后缀 | 含义 |
|---|---|
_id | 枚举整数标识符,带有同级字符串字段(名称为去掉 _id 后的名称)。0 = Unknown,99 = Other。 |
_uid | 架构内唯一或外部唯一标识符(分类属性为整数,其他情况为字符串)。同级字段使用 _name。 |
_uuid | 全局唯一的 128 位标识符(字符串)。无同级字段。 |
_name | _uid 或 _id 属性的易读名称/说明同级字段。 |
_time | 时间戳(timestamp_t,自纪元起的毫秒数)。 |
_dt | 日期时间(datetime_t,RFC 3339 字符串)。由日期/时间配置文件添加,与 _time 属性并列。 |
_info / _detail | 携带补充信息的对象。 |
_process | 对 Process 对象的引用。 |
_ver | 版本字符串。 |
_list | 值数组。 |
回答原则
- 回答前先阅读。每项陈述都必须能追溯到你读过的文件。
- 先使用问题路由表和类别表缩小范围,再阅读类或对象页面。
- 查阅 FAQs,了解架构设计原理和有歧义的映射。
- 查阅 Articles,深入了解可观测对象、警报、进程父子关系和扩展等主题。
- 对于有关框架本身的概念性问题,阅读 Introduction 各节。
评论
支持 Markdown