Repository navigation
Commit def7da8
authored
fix(ocsf): emit schema-conformant OCSF 1.8 events (#4288)
Native events failed the official OCSF 1.8.0 validator: HTTP Activity
emitted is_src_dst_assignment_known, sandbox Process Activity events had
no actor, connection_info lacked direction_id, and SSH Activity events
named no endpoint. Schema tests missed these because they checked only
top-level, non-profile attributes.
Add a connection direction enum, require an actor on Process Activity
and an endpoint on SSH Activity at compile time, and name the
supervisor's SSH server with svc_name and its socket path.
Validate against OCSF 1.8.0 only. validate_required_fields and
validate_known_fields share one recursive walker that rejects undefined
attributes at every level and, for events, attributes from undeclared
profiles; objects are validated as objects. Records labelled with
another version fail. Vendor tactic and technique so ATT&CK-mapped
findings validate, drop the unused v1.7.0 schemas, and make the
embedded-schema drift test tolerate CRLF checkouts.
Keep it fixed with a per-builder conformance test and a Podman e2e test
that runs an L7 policy against a local server and validates the
supervisor's real Network, HTTP and SSH Activity JSONL. Top-level
container stays unchanged; #4915 tracks it. The schema
downgrade is unchanged.
Closes #4283
Signed-off-by: Adel Zaalouk <azaalouk@redhat.com>1 parent 6188420 commit def7da8
58 files changed
Lines changed: 1630 additions & 14729 deletions
File tree
- crates
- openshell-ocsf
- schemas/ocsf
- v1.7.0
- classes
- objects
- v1.8.0/objects
- src
- builders
- enums
- events
- format
- objects
- validation
- tests
- openshell-sandbox/src
- openshell-supervisor-network/src/policy_dns
- openshell-supervisor-process/src
- ssh
- docs/observability
- e2e/rust
- tests
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
This file was deleted.
0 commit comments