Malware Detection Session Finished
Id | 88b9223c-29ff-48a9-a745-c553aa0dbae2 |
Rulename | Malware Detection Session Finished |
Description | Detects when malware detection session finishes. |
Severity | Informational |
Tactics | Impact |
Techniques | T1486 |
Required data connectors | Syslog SyslogAma |
Kind | Scheduled |
Query frequency | 3h |
Query period | 3h |
Trigger threshold | 0 |
Trigger operator | gt |
Source Uri | https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Veeam/Analytic Rules/Malware_Detection_Session_Finished.yaml |
Version | 1.0.0 |
Arm template | 88b9223c-29ff-48a9-a745-c553aa0dbae2.json |
let action_results_lookup = union isfuzzy=true (datatable(JobResult:string, JobResultMessage:string)[]), (_GetWatchlist("action_results_lookup"));
Veeam_GetSecurityEvents
| where instanceId == 42210
| extend Result = extract("Result=\"([^\"]*)\"", 1, SyslogMessage)
| extend SessionID = extract("SessionID=\"([^\"]*)\"", 1, SyslogMessage)
| lookup kind=leftouter (action_results_lookup)
on $left.Result == $right.JobResult
| project
Date = format_datetime(TimeGenerated, 'dd.MM.yyyy HH:mm'),
DataSource = original_host,
EventId = instanceId,
["Session ID"] = SessionID,
["StateMessage"] = JobResultMessage,
MessageDetails = Description,
Severity = SeverityDescription
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Veeam/Analytic Rules/Malware_Detection_Session_Finished.yaml
triggerThreshold: 0
severity: Informational
queryFrequency: 3h
eventGroupingSettings:
aggregationKind: AlertPerResult
customDetails:
EventId: EventId
Date: Date
Severity: Severity
MessageDetails: MessageDetails
VbrHostName: DataSource
relevantTechniques:
- T1486
triggerOperator: gt
id: 88b9223c-29ff-48a9-a745-c553aa0dbae2
requiredDataConnectors:
- connectorId: Syslog
dataTypes:
- Syslog
- connectorId: SyslogAma
dataTypes:
- Syslog
version: 1.0.0
name: Malware Detection Session Finished
tactics:
- Impact
description: Detects when malware detection session finishes.
query: |
let action_results_lookup = union isfuzzy=true (datatable(JobResult:string, JobResultMessage:string)[]), (_GetWatchlist("action_results_lookup"));
Veeam_GetSecurityEvents
| where instanceId == 42210
| extend Result = extract("Result=\"([^\"]*)\"", 1, SyslogMessage)
| extend SessionID = extract("SessionID=\"([^\"]*)\"", 1, SyslogMessage)
| lookup kind=leftouter (action_results_lookup)
on $left.Result == $right.JobResult
| project
Date = format_datetime(TimeGenerated, 'dd.MM.yyyy HH:mm'),
DataSource = original_host,
EventId = instanceId,
["Session ID"] = SessionID,
["StateMessage"] = JobResultMessage,
MessageDetails = Description,
Severity = SeverityDescription
status: Available
queryPeriod: 3h
kind: Scheduled
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspace": {
"type": "String"
}
},
"resources": [
{
"apiVersion": "2024-01-01-preview",
"id": "[concat(resourceId('Microsoft.OperationalInsights/workspaces/providers', parameters('workspace'), 'Microsoft.SecurityInsights'),'/alertRules/88b9223c-29ff-48a9-a745-c553aa0dbae2')]",
"kind": "Scheduled",
"name": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/88b9223c-29ff-48a9-a745-c553aa0dbae2')]",
"properties": {
"alertRuleTemplateName": "88b9223c-29ff-48a9-a745-c553aa0dbae2",
"customDetails": {
"Date": "Date",
"EventId": "EventId",
"MessageDetails": "MessageDetails",
"Severity": "Severity",
"VbrHostName": "DataSource"
},
"description": "Detects when malware detection session finishes.",
"displayName": "Malware Detection Session Finished",
"enabled": true,
"entityMappings": null,
"eventGroupingSettings": {
"aggregationKind": "AlertPerResult"
},
"OriginalUri": "https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Veeam/Analytic Rules/Malware_Detection_Session_Finished.yaml",
"query": "let action_results_lookup = union isfuzzy=true (datatable(JobResult:string, JobResultMessage:string)[]), (_GetWatchlist(\"action_results_lookup\")); \nVeeam_GetSecurityEvents\n| where instanceId == 42210\n| extend Result = extract(\"Result=\\\"([^\\\"]*)\\\"\", 1, SyslogMessage)\n| extend SessionID = extract(\"SessionID=\\\"([^\\\"]*)\\\"\", 1, SyslogMessage)\n| lookup kind=leftouter (action_results_lookup)\n on $left.Result == $right.JobResult\n| project\n Date = format_datetime(TimeGenerated, 'dd.MM.yyyy HH:mm'),\n DataSource = original_host,\n EventId = instanceId,\n [\"Session ID\"] = SessionID,\n [\"StateMessage\"] = JobResultMessage,\n MessageDetails = Description,\n Severity = SeverityDescription\n",
"queryFrequency": "PT3H",
"queryPeriod": "PT3H",
"severity": "Informational",
"status": "Available",
"subTechniques": [],
"suppressionDuration": "PT1H",
"suppressionEnabled": false,
"tactics": [
"Impact"
],
"techniques": [
"T1486"
],
"templateVersion": "1.0.0",
"triggerOperator": "GreaterThan",
"triggerThreshold": 0
},
"type": "Microsoft.OperationalInsights/workspaces/providers/alertRules"
}
]
}