Malware Detection Session Finished
| Id | 88b9223c-29ff-48a9-a745-c553aa0dbae2 |
| Rulename | Malware Detection Session Finished |
| Description | Detects when malware detection session finishes. |
| Severity | Informational |
| 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.1 |
| 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
kind: Scheduled
eventGroupingSettings:
aggregationKind: AlertPerResult
description: Detects when malware detection session finishes.
severity: Informational
queryFrequency: 3h
customDetails:
MessageDetails: MessageDetails
VbrHostName: DataSource
Date: Date
EventId: EventId
Severity: Severity
triggerThreshold: 0
relevantTechniques: []
status: Available
tactics: []
name: Malware Detection Session Finished
id: 88b9223c-29ff-48a9-a745-c553aa0dbae2
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
requiredDataConnectors:
- dataTypes:
- Syslog
connectorId: Syslog
- dataTypes:
- Syslog
connectorId: SyslogAma
version: 1.0.1
triggerOperator: gt
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Veeam/Analytic Rules/Malware_Detection_Session_Finished.yaml
queryPeriod: 3h
{
"$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": [],
"techniques": [],
"templateVersion": "1.0.1",
"triggerOperator": "GreaterThan",
"triggerThreshold": 0
},
"type": "Microsoft.OperationalInsights/workspaces/providers/alertRules"
}
]
}