Proto commits in aquasecurity/tracee

These 58 commits are when the Protocol Buffers files have changed:

Commit:ff36c55
Author:Ofek Shaked
Committer:Nadav Strahilevitz

chore(api): add security_task_prctl event ID

The documentation is generated from this commit.

Commit:ecadc0c
Author:Nadav Strahilevitz
Committer:Nadav Strahilevitz

chore(api): add missing event ids Missing events begin from commit 9356795.

Commit:0fbac6d
Author:Raphael Campos
Committer:Raphael Campos

chore: rename event to zeroed_inode The event hidden_inodes was renamed top zeroed_inode in order to be generic. According to this ref "https://www.kernel.org/doc/html/ latest/filesystems/ext4/directory.html", Unused directory entries are signified by inode = 0.

Commit:6968a8b
Author:Geyslan Gregório
Committer:Gregório G.

chore(api): add EventCounts to GetMetricsResponse commit: 1f796cb (main), cherry-pick

Commit:b95f206
Author:Yaniv Agman
Committer:Gregório G.

Refactor: Restructure event and rename context This commit introduces two key changes to the Tracee event structure: - Renames the `context` field to `workload` to provide a more specific and clear description of the execution environment. - Moves the `triggeredBy` field from the `data` section to the root of the event structure. This ensures the `data` section is strictly defined by the event-specific schema, improving consistency and clarity. These changes constitute a breaking change to the API. However, as `traceectl` is not yet merged, it is acceptable to introduce this breaking change now to avoid future complications. commit: 0757020 (main), cherry-pick

Commit:1f796cb
Author:Geyslan Gregório
Committer:Geyslan Gregório

chore(api): add EventCounts to GetMetricsResponse

Commit:0757020
Author:Yaniv Agman
Committer:Yaniv Agman

Refactor: Restructure event and rename context This commit introduces two key changes to the Tracee event structure: - Renames the `context` field to `workload` to provide a more specific and clear description of the execution environment. - Moves the `triggeredBy` field from the `data` section to the root of the event structure. This ensures the `data` section is strictly defined by the event-specific schema, improving consistency and clarity. These changes constitute a breaking change to the API. However, as `traceectl` is not yet merged, it is acceptable to introduce this breaking change now to avoid future complications.

Commit:704e6e2
Author:Ori Glassman
Committer:Raphael Campos

feat(ebpf): make process_execute_failed not rely on sys_enter/exit commit: 77d04ef (main), cherry-pick

Commit:77d04ef
Author:Ori Glassman
Committer:Gregório G.

feat(ebpf): make process_execute_failed not rely on sys_enter/exit

Commit:873f896
Author:Raphael Campos
Committer:Raphael Campos

chore(api): event definitions api renaming commit: 89d2d4f (main), cherry-pick

Commit:89d2d4f
Author:Raphael Campos
Committer:Raphael Campos

chore(api): event definitions api renaming

Commit:ab1c72f
Author:Raphael Campos
Committer:GitHub

feature: add enum EventId to event definition (#4085) (#4101) commit: a237ddf (main), cherry-pick

Commit:a237ddf
Author:Raphael Campos
Committer:GitHub

feature: add enum EventId to event definition (#4085)

Commit:d4b717c
Author:josedonizetti
Committer:Jose Donizetti

fix event definitions api

Commit:ea2c242
Author:josedonizetti
Committer:Jose Donizetti

grpc: add direction to packet metadata

Commit:07e087b
Author:Jose Donizetti
Committer:Jose Donizetti

chore: add protoc-gen-go-json for better json marshal

Commit:bac06dc
Author:Jose Donizetti
Committer:Jose Donizetti

feature: add dynamic struct to event_data

Commit:a631c31
Author:Jose Donizetti
Committer:Jose Donizetti

feature: add threat to event definition

Commit:cd6759e
Author:Jose Donizetti
Committer:Jose Donizetti

feature: add properties to threat

Commit:a486584
Author:Jose Donizetti
Committer:Jose Donizetti

feature: add name to threat

Commit:6d3c562
Author:Jose Donizetti
Committer:Jose Donizetti

refactor: extract threat.proto

Commit:f6f40e0
Author:Nadav Strahilevitz
Committer:Nadav Strahilevitz

chore(api): fix typo

Commit:ee6fba4
Author:Nadav Strahilevitz
Committer:Nadav Strahilevitz

feature(api): add data source grpc service

Commit:9d72a92
Author:Rafael David Tinoco
Committer:Rafael David Tinoco

chore(signatures): remove outdated and broken celsig support

Commit:e708f9a
Author:Jose Donizetti
Committer:Rafael David Tinoco

fix: use new api module commit: 2ada83fc9 (main), backport [backport] Types version updates together with the commit were removed.

Commit:2b31041
Author:Jose Donizetti
Committer:Rafael David Tinoco

fix: add api root dir commit: f3bc7d1e9 (main), cherry-pick

Commit:32c8307
Author:Jose Donizetti
Committer:Rafael David Tinoco

fix: parse arguments base on the value type commit: 7a240c442 (main), backport [backport] There was a types version update together with this commit that was removed in the release branch. The types version change should have their own commit (as the release branch might use a different types version).

Commit:2ea7a70
Author:Jose Donizetti
Committer:Rafael David Tinoco

fix: add missing types commit: 782fb4d72 (main), cherry-pick

Commit:242b36b
Author:Jose Donizetti
Committer:Rafael David Tinoco

fix: add path to executable (#3542) commit: f7e7a2026 (main), cherry-pick

Commit:4c506f7
Author:Jose Donizetti
Committer:Rafael David Tinoco

fix: add path to executable commit: 2eca675f4 (main), cherry-pick

Commit:2ada83f
Author:Jose Donizetti
Committer:Jose Donizetti

fix: use new api module

Commit:f3bc7d1
Author:Jose Donizetti
Committer:Jose Donizetti

fix: add api root dir

Commit:7a240c4
Author:Jose Donizetti
Committer:Jose Donizetti

fix: parse arguments base on the value type

Commit:782fb4d
Author:Jose Donizetti
Committer:Jose Donizetti

fix: add missing types

Commit:f7e7a20
Author:Jose Donizetti
Committer:GitHub

fix: add path to executable (#3542)

Commit:2eca675
Author:Jose Donizetti
Committer:Rafael David Tinoco

fix: add path to executable

Commit:8ef6335
Author:Jose Donizetti
Committer:Jose Donizetti

fix: fix tactic, and int32_array names

Commit:44ec77c
Author:Jose Donizetti
Committer:Jose Donizetti

fix: fix Threat proto

Commit:012f092
Author:Jose Donizetti
Committer:Jose Donizetti

fix: make types uniform with wrappers

Commit:d78233f
Author:Jose Donizetti
Committer:Jose Donizetti

fix: fix uint and string types

Commit:62b3f68
Author:Alon Zivony
Committer:Rafael David Tinoco

feat(types): add thread entity id to protobuf As it is now available, add the thread entity id to the protobuf.

Commit:cbb1159
Author:Jose Donizetti
Committer:Jose Donizetti

feat: add event_data to event proto

Commit:eb2945f
Author:Jose Donizetti
Committer:Jose Donizetti

fix: stackaddress needs to have symbol name

Commit:0bdc73b
Author:Jose Donizetti
Committer:Jose Donizetti

feat: add StreamEvents rpc

Commit:b9619f9
Author:Jose Donizetti
Committer:Jose Donizetti

feat: Add new event structure

Commit:bc6f603
Author:Jose Donizetti
Committer:Jose Donizetti

fix: remove params from event definition proto

Commit:76b28d0
Author:Jose Donizetti
Committer:Jose Donizetti

feat: add enable/disable event rpc

Commit:693c973
Author:Jose Donizetti
Committer:Jose Donizetti

feat: add version proto

Commit:9ec273b
Author:Jose Donizetti
Committer:Jose Donizetti

feat: add EventDefinition proto

Commit:b0a7b7e
Author:Jose Donizetti
Committer:Jose Donizetti

feat: add GetEventDefinition rpc call

Commit:bfc4451
Author:Jose Donizetti
Committer:Jose Donizetti

fix: log level should match zap log priority

Commit:4182875
Author:Jose Donizetti
Committer:Jose Donizetti

fix(protobuf): tracee.proto go_package

Commit:7d4b8c2
Author:Jose Donizetti
Committer:Jose Donizetti

feat: add diagnostic rpc

Commit:7c72262
Author:Jose Donizetti
Committer:Jose Donizetti

feat: add tracee rpc service Adds tracee rpc service with a first endpoint to return tracee's version

Commit:6f4de28
Author:Nadav Strahilevitz
Committer:Nadav Strahilevitz

go.mod: bump types Bump includes Container and Kubernetes context seperation in `trace.Event`. Apply the change across the codebase.

Commit:7ef509a
Author:Jose Donizetti
Committer:GitHub

refactor: rules renamed to signatures (#2715)

Commit:b6af22a
Author:Rafael David Tinoco
Committer:Rafael David Tinoco

go-cel: adjust comments and add mode_t to wrapper

Commit:9cc0ad8
Author:Daniel Pacak
Committer:GitHub

tracee-rules: introduce CEL signatures (#1766) This patch introduces new type of Tracee-Rules signatures that can be written as Common Expression Language (CEL). This feature is enabled by placing CEL signature definition files (.cel, .yaml, .yml) in the the --rules-dir directory. Sample definition files can be found in the pkg/rules/celsig/testdata/rules/ directory. The following snippet shows how you define the Anti-Debugging signature using CEL: # pkg/rules/celsig/testdata/rules/anti_debugging_ptraceme.yml kind: SignaturesConfig apiVersion: tracee.aquasecurity.github.io/v1alpha1 signatures: - metadata: id: "CEL-2" version: "0.1.0" name: "Anti-Debugging" tags: - "linux" - "containers" properties: "Severity": 3 "MITRE ATT&CK": "Defense Evasion: Execution Guardrails" eventSelectors: - source: tracee name: ptrace expression: |- input.eventName == 'ptrace' && input.stringArg('request') == 'PTRACE_TRACEME' You can use the following commands to compile Tracee and load CEL-2, CEL-5, and CEL-12 signatures from pkg/rules/celsig/testdata/rules/anti_debuggin_ptraceme.yml and pkg/rules/celsig/testdata/rules/signatures.yaml. vagrant up && vagrant ssh make cp -v pkg/rules/celsig/testdata/rules/*.y*ml dist/rules sudo ./dist/tracee-ebpf \ --output=format:gob \ --output=option:parse-arguments \ | ./dist/tracee-rules \ --input-tracee=file:stdin \ --input-tracee=format:gob Notice that CEL-2, CEL-5, and CEL-12 correspond to TRC-2, TRC-5, and TRC-12 signatures written as OPA Rego policies. With Helm installer you can define CEL signatures in Helm values.yaml as follows: # deploy/helm/tracee/values.yaml signatures: # config defines Common Expression Language (CEL) signatures that are loaded # by Tracee-Rules from the --rules-dir directory. If the config object is not # empty, the configuration file is automatically mounted at # /tracee/rules/signatures.yaml. config: kind: SignaturesConfig apiVersion: tracee.aquasecurity.github.io/v1alpha1 signatures: - metadata: id: "CEL-2" version: "0.1.0" name: "Anti-Debugging" tags: - "linux" - "containers" properties: Severity: 3 "MITRE ATT&CK": "Defense Evasion: Execution Guardrails" eventSelectors: - source: tracee name: ptrace expression: |- input.eventName == 'ptrace' && input.stringArg('request') == 'PTRACE_TRACEME' Signed-off-by: Daniel Pacak <pacak.daniel@gmail.com>