1157735be1
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
46 lines
3.5 KiB
YAML
46 lines
3.5 KiB
YAML
name: "SentinelOne Alerts → OCSF"
|
|
description: "Maps a SentinelOne v2.1 cloud-detection alert object (data[]) to OCSF. The initiating (source) process is the actor (actor.*); the process/file acted upon is the target (process.*/file.*)."
|
|
field_mappings:
|
|
title: "ruleInfo.name"
|
|
severity: "ruleInfo.severity = 'Critical' ? 5 : (ruleInfo.severity = 'High' ? 4 : 3)"
|
|
description: "alertInfo.eventType"
|
|
# source_path is evaluated against ONE alert object (alert rule results_path = data).
|
|
# Paths absent from a given alert are skipped at ingestion, so extra entries are safe.
|
|
ocsf:
|
|
# Endpoint
|
|
- { source_path: "agentDetectionInfo.name", ocsf_field: "src_endpoint.hostname" }
|
|
- { source_path: "agentDetectionInfo.osName", ocsf_field: "src_endpoint.os.name" }
|
|
- { source_path: "agentDetectionInfo.osRevision", ocsf_field: "device.os.build" }
|
|
- { source_path: "agentDetectionInfo.uuid", ocsf_field: "device.uid" }
|
|
# Rule / finding
|
|
- { source_path: "ruleInfo.name", ocsf_field: "rule.name" }
|
|
- { source_path: "ruleInfo.id", ocsf_field: "rule.uid" }
|
|
- { source_path: "ruleInfo.description", ocsf_field: "rule.desc" }
|
|
- { source_path: "alertInfo.alertId", ocsf_field: "finding_info.uid" }
|
|
- { source_path: "alertInfo.dvEventId", ocsf_field: "metadata.original_event_uid" }
|
|
# Initiating (source) process — the actor
|
|
- { source_path: "sourceProcessInfo.name", ocsf_field: "actor.process.name" }
|
|
- { source_path: "sourceProcessInfo.pid", ocsf_field: "actor.process.pid" }
|
|
- { source_path: "sourceProcessInfo.filePath", ocsf_field: "actor.process.file.path" }
|
|
- { source_path: "sourceProcessInfo.commandline", ocsf_field: "actor.process.cmd_line" }
|
|
- { source_path: "sourceProcessInfo.user", ocsf_field: "actor.user.name" }
|
|
- { source_path: "sourceProcessInfo.integrityLevel", ocsf_field: "actor.process.integrity" }
|
|
- { source_path: "sourceProcessInfo.fileHashSha256", ocsf_field: "actor.process.file.hashes.sha256" }
|
|
- { source_path: "sourceProcessInfo.fileHashSha1", ocsf_field: "actor.process.file.hashes.sha1" }
|
|
- { source_path: "sourceProcessInfo.fileHashMd5", ocsf_field: "actor.process.file.hashes.md5" }
|
|
# Parent of the source process
|
|
- { source_path: "sourceParentProcessInfo.name", ocsf_field: "actor.process.parent_process.name" }
|
|
- { source_path: "sourceParentProcessInfo.pid", ocsf_field: "actor.process.parent_process.pid" }
|
|
- { source_path: "sourceParentProcessInfo.commandline", ocsf_field: "actor.process.parent_process.cmd_line" }
|
|
# Target process — the process acted upon
|
|
- { source_path: "targetProcessInfo.tgtProcName", ocsf_field: "process.name" }
|
|
- { source_path: "targetProcessInfo.tgtProcPid", ocsf_field: "process.pid" }
|
|
- { source_path: "targetProcessInfo.tgtProcCmdLine", ocsf_field: "process.cmd_line" }
|
|
- { source_path: "targetProcessInfo.tgtProcImagePath", ocsf_field: "process.file.path" }
|
|
- { source_path: "targetProcessInfo.tgtProcUid", ocsf_field: "process.uid" }
|
|
# Target file — the file acted upon
|
|
- { source_path: "targetProcessInfo.tgtFilePath", ocsf_field: "file.path" }
|
|
- { source_path: "targetProcessInfo.tgtFileId", ocsf_field: "file.uid" }
|
|
- { source_path: "targetProcessInfo.tgtFileHashSha256", ocsf_field: "file.hashes.sha256" }
|
|
- { source_path: "targetProcessInfo.tgtFileHashSha1", ocsf_field: "file.hashes.sha1" }
|