ocsf

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

OCSF

OCSF

Look up OCSF reference documentation and answer from those sources. Only state facts from files you read. Never invent schema details. If the documentation does not cover the question, say so.
查阅OCSF参考文档并从中获取答案。仅陈述你从文档中读取到的事实内容,切勿编造架构细节。如果文档未覆盖相关问题,请直接说明。

Versions

版本

Use the latest stable version unless the user requests a specific one. Stick to one version per answer.
  • 1.0.0
  • 1.1.0
  • 1.2.0
  • 1.3.0
  • 1.4.0
  • 1.5.0
  • 1.6.0
  • 1.7.0 ← latest stable
  • 1.8.0-dev ← unreleased development snapshot
Each version page links to its classes, objects, profiles, extensions, and types.
除非用户指定特定版本,否则使用最新稳定版本。每次回答仅使用一个版本。
  • 1.0.0
  • 1.1.0
  • 1.2.0
  • 1.3.0
  • 1.4.0
  • 1.5.0
  • 1.6.0
  • 1.7.0 ← 最新稳定版
  • 1.8.0-dev ← 未发布的开发快照
每个版本页面都链接到对应的类、对象、配置文件、扩展和类型文档。

File layout

文件结构

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
introduction.md          # OCSF概述及概念章节
introduction/{section}.md
faqs.md                  # 架构设计原理
faqs/{slug}.md
articles.md              # 特定主题的深度指南
articles/{slug}.md
{version}.md             # 版本概要(新增内容、统计信息)
{version}/classes.md     # 按类别分组的类索引
{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

Question routing

问题路由

Pick the shortest reading path for the question type.
Question patternStart here
Which class fits event X?Category table below → version classes index → candidate class pages
What attributes does class/object Y have?Version classes or objects index → the specific page
How do profiles work? / Which profile for X?Introduction: Profiles → version profiles index
How do I extend the schema?Introduction: Extensions or Patching the Core Schema
How do I populate observables / model alerts?FAQs and Articles
What changed between versions?Compare the two version pages
Conceptual / design questionIntroductionFAQs
When the question asks you to pick a class, read multiple candidates and explain trade-offs.
根据问题类型选择最短的查阅路径。
问题类型起始查阅位置
事件X适合哪个类?下方类别表 → 对应版本的类索引 → 候选类页面
类/对象Y有哪些属性?对应版本的类或对象索引 → 具体页面
配置文件如何工作?/ 场景X适合哪个配置文件?简介:配置文件 → 对应版本的配置文件索引
如何扩展架构?简介:扩展使用扩展修补核心架构
如何填充可观测数据 / 建模告警?常见问题深度指南
版本之间有哪些变化?对比两个版本的概要页面
概念性/设计类问题简介常见问题
当问题要求选择某个类时,请查阅多个候选类并解释取舍原因。

Domain knowledge

领域知识

Core concepts

核心概念

Attributes are named fields with a data type. Every OCSF field has a requirement level: required, recommended, or optional.
Objects group related attributes into reusable structures. Objects can nest other objects.
Event classes define schemas for specific security events. Each class belongs to a category and inherits from Base Event.
Base Event provides universal attributes and serves as a catch-all when no more specific class fits.
Profiles are mix-ins that add cross-cutting attributes. A class can apply multiple profiles.
Extensions add vendor-specific attributes without modifying the core schema.
属性是带有数据类型的命名字段。每个OCSF字段都有一个要求级别:必填、推荐或可选。
对象将相关属性分组为可复用的结构。对象可以嵌套其他对象。
事件类为特定安全事件定义架构。每个类都属于一个类别并继承自基础事件(Base Event)。
**基础事件(Base Event)**提供通用属性,当没有更具体的类适用时作为通用备选。
配置文件是添加跨领域属性的混合模块。一个类可以应用多个配置文件。
扩展用于添加厂商特定属性,无需修改核心架构。

Event categories

事件类别

Use the category range to narrow scope before diving into individual class pages.
RangeCategoryFocus
1xxxSystem ActivityOS-level: process, file, module, memory, kernel, registry
2xxxFindingsDetections, vulnerabilities, incidents, compliance
3xxxIAMAuthentication, authorization, account and group changes
4xxxNetwork ActivityGeneral traffic and protocol-specific activity
5xxxDiscoveryDevice, user, service, and resource enumeration
6xxxApplication ActivityWeb resources, API calls, file hosting, datastore operations
7xxxRemediationFile, process, network, and entity remediation actions
8xxxUnmannedDrones, vehicles, and robots
在深入单个类页面之前,可使用类别范围缩小查阅范围。
范围类别关注点
1xxx系统活动操作系统级别:进程、文件、模块、内存、内核、注册表
2xxx检测结果威胁检测、漏洞、事件、合规性
3xxx身份与访问管理(IAM)认证、授权、账户和组变更
4xxx网络活动通用流量和特定协议活动
5xxx发现设备、用户、服务和资源枚举
6xxx应用活动Web资源、API调用、文件托管、数据存储操作
7xxx修复操作文件、进程、网络和实体修复操作
8xxx无人系统无人机、车辆和机器人

Naming conventions

命名规范

  • snake_case
    everywhere:
    process_activity
    ,
    network_endpoint
    .
  • Arrays use plural names:
    answers
    ,
    enrichments
    ,
    attacks
    .
  • When
    _id
    is
    Other
    (
    99
    ), the sibling string must be populated with the source value.
Key suffixes:
SuffixMeaning
_id
Enum integer identifier with a sibling string (same name minus
_id
).
0
= Unknown,
99
= Other.
_uid
Schema-unique or external unique identifier (integer for classification attrs, string otherwise). Sibling uses
_name
.
_uuid
Globally unique 128-bit identifier (string). No sibling.
_name
Friendly name / caption sibling for
_uid
or
_id
attributes.
_time
Timestamp (
timestamp_t
, milliseconds since epoch).
_dt
Datetime (
datetime_t
, RFC 3339 string). Added by the Date/Time profile alongside
_time
attributes.
_info
/
_detail
Object carrying supplementary information.
_process
Reference to a Process object.
_ver
Version string.
_list
Array of values.
  • 所有命名使用
    snake_case
    process_activity
    network_endpoint
  • 数组使用复数名称:
    answers
    enrichments
    attacks
  • _id
    Other
    (值为
    99
    )时,必须填充对应的字符串字段(名称为
    _id
    去掉后缀)。
关键后缀:
后缀含义
_id
枚举整数标识符,对应一个字符串字段(名称去掉
_id
)。
0
表示未知,
99
表示其他。
_uid
架构唯一或外部唯一标识符(分类属性为整数,其他为字符串)。对应字段使用
_name
后缀。
_uuid
全局唯一的128位标识符(字符串类型),无对应字段。
_name
_uid
_id
属性对应的友好名称/标题字段。
_time
时间戳(
timestamp_t
类型,自纪元以来的毫秒数)。
_dt
日期时间(
datetime_t
类型,RFC 3339格式字符串)。由日期/时间配置文件与
_time
属性一同添加。
_info
/
_detail
承载补充信息的对象。
_process
指向Process对象的引用。
_ver
版本字符串。
_list
值的数组。

Answering principles

回答原则

  • Read before answering. Every claim must trace back to a file you read.
  • Use the question routing table and category table to narrow scope before reading class or object pages.
  • Consult FAQs for schema design rationale and ambiguous mappings.
  • Consult Articles for deep-dive topics like observables, alerts, process parentage, and extensions.
  • Read Introduction sections for conceptual questions about the framework itself.
  • 先查阅再回答。所有陈述必须能追溯到你读取的文档内容。
  • 在查阅类或对象页面之前,使用问题路由表和类别表缩小范围。
  • 关于架构设计原理和模糊映射的问题,查阅常见问题
  • 关于可观测数据、告警、进程父级关系和扩展等深度主题,查阅深度指南
  • 关于框架本身的概念性问题,查阅简介章节。