Detection rules › Kusto
Darktrace System Status
This is a third-party alert feed, not a detection over modeled telemetry. The vendor product raised the finding; this rule forwards it into the SIEM. It is searchable for reference but is excluded from the detection-rule browse and the ATT&CK coverage matrix.
'This rule creates Microsoft Sentinel Alerts based on Darktrace system status alerts for health monitoring, fetched every 5 minutes.'
Rule body kusto
id: 2e629769-60eb-4a14-8bfc-bde9be66ebeb
name: Darktrace System Status
description: |
'This rule creates Microsoft Sentinel Alerts based on Darktrace system status alerts for health monitoring, fetched every 5 minutes.'
severity: Informational
requiredDataConnectors:
- connectorId: DarktraceRESTConnector
dataTypes:
- darktrace_model_alerts_CL
queryFrequency: 5m
queryPeriod: 5m
triggerOperator: gt
triggerThreshold: 0
tactics: # none
relevantTechniques: # none
query: |
darktrace_model_alerts_CL //anything starting with 'Dt' is not an ASIM mapping
| where dtProduct_s =="System Alert"
| extend EventVendor="Darktrace", EventProduct="Darktrace DETECT"
| project-rename ThreatCategory=dtProduct_s, EventStartTime=time_s, NetworkRuleName=friendlyName_s, SrcIpAddr=deviceIP_s, SrcHostname=hostname_s, ThreatRiskLevel=priority_code_d, ThreatRiskCategory=priority_s, DtSeverity=Severity, DtName=name_s, DtStatus=status_s, DtMessage=Message, DtURL=url_s, DtUUID=uuid_g
eventGroupingSettings:
aggregationKind: AlertPerResult
entityMappings:
- entityType: Host
fieldMappings:
- identifier: HostName
columnName: SrcHostname
- entityType: IP
fieldMappings:
- identifier: Address
columnName: SrcIpAddr
customDetails:
EventStartTime: EventStartTime
NetworkRuleName: NetworkRuleName
ThreatRiskLevel: ThreatRiskLevel
ThreatRiskCategory: ThreatRiskCategory
DtName: DtName
DtStatus: DtStatus
DtMessage: DtMessage
DtSeverity: DtSeverity
alertDetailsOverride:
alertDisplayNameFormat: 'Darktrace: {{ThreatRiskLevel}} - {{NetworkRuleName}}'
alertDescriptionFormat: '{{DtMessage}}'
alertTacticsColumnName: # none
alertSeverityColumnName: # none
alertDynamicProperties:
- alertProperty: AlertLink
value: DtURL
- alertProperty: ProviderName
value: EventVendor
- alertProperty: ProductName
value: EventProduct
- alertProperty: ProductComponentName
value: ThreatCategory
version: 1.1.0
kind: Scheduled
Stages and Predicates
Stage 1: source
darktrace_model_alerts_CL
Stage 2: where
| where dtProduct_s =="System Alert"
Stage 3: extend
| extend EventVendor="Darktrace", EventProduct="Darktrace DETECT"
Stage 4: project-rename
| project-rename ThreatCategory=dtProduct_s, EventStartTime=time_s, NetworkRuleName=friendlyName_s, SrcIpAddr=deviceIP_s, SrcHostname=hostname_s, ThreatRiskLevel=priority_code_d, ThreatRiskCategory=priority_s, DtSeverity=Severity, DtName=name_s, DtStatus=status_s, DtMessage=Message, DtURL=url_s, DtUUID=uuid_g
Indicators
Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.
| Field | Kind | Values |
|---|---|---|
dtProduct_s | eq |
|
Output fields
Fields the rule emits when it matches. Chronicle authors list these in the outcome block; they appear on the detection and $risk_score drives alerting. Sentinel / Defender XDR rules build them up through project / summarize / extend stages. Sentinel maps these into alert fields via entityMappings and customDetails; Defender XDR custom detections surface them as alert fields directly.
| Field | Source |
|---|---|
EventProduct | extend |
EventVendor | extend |
DtMessage | project-rename |
DtName | project-rename |
DtSeverity | project-rename |
DtStatus | project-rename |
DtURL | project-rename |
DtUUID | project-rename |
EventStartTime | project-rename |
NetworkRuleName | project-rename |
SrcHostname | project-rename |
SrcIpAddr | project-rename |
ThreatCategory | project-rename |
ThreatRiskCategory | project-rename |
ThreatRiskLevel | project-rename |