Detection rules › Kusto

Invalid Code for Multi-Factor Authentication Entered

Status
available
Severity
high
Time window
5m
Source
github.com/Azure/Azure-Sentinel

Detects failed multi-factor authentication attempts. This might indicate credential stuffing or brute-force attacks.

Rule body

id: 5220a0b0-ab15-43cf-a77e-2273d35cfe8e
name: Invalid Code for Multi-Factor Authentication Entered
description: Detects failed multi-factor authentication attempts. This might indicate
  credential stuffing or brute-force attacks.
severity: High
status: Available
requiredDataConnectors:
- connectorId: Syslog
  dataTypes:
  - Syslog
- connectorId: SyslogAma
  dataTypes:
  - Syslog
queryFrequency: 5m
queryPeriod: 5m
triggerOperator: gt
triggerThreshold: 0
eventGroupingSettings:
  aggregationKind: AlertPerResult
tactics: []
relevantTechniques: []
query: "Veeam_GetSecurityEvents\n| where instanceId == 40205\n| extend SID = extract(\"\
  SID=\\\"([^\\\"]*)\\\"\", 1, SyslogMessage)\n| extend Endpoint = extract(\"Endpoint=\\\
  \"([^\\\"]*)\\\"\", 1, SyslogMessage)\n| project\n    Date = format_datetime(TimeGenerated,\
  \ 'dd.MM.yyyy HH:mm'),\n    DataSource = original_host,\n    EventId = instanceId,\n\
  \    UserName = user,\n    [\"Endpoint\"] = Endpoint,\n    [\"User SID\"] = SID,\n\
  \    MessageDetails = Description,\n    Severity = SeverityDescription"
version: 1.0.1
kind: Scheduled
customDetails:
  Date: Date
  VbrHostName: DataSource
  EventId: EventId
  MessageDetails: MessageDetails
  Severity: Severity

Stages and Predicates

Stage 1: source

Veeam_GetSecurityEvents

Stage 2: where

| where instanceId == 40205

Stage 3: extend

| extend SID = extract("SID=\"([^\"]*)\"", 1, SyslogMessage)

Stage 4: extend

| extend Endpoint = extract("Endpoint=\"([^\"]*)\"", 1, SyslogMessage)

Stage 5: project

| project
    Date = format_datetime(TimeGenerated, 'dd.MM.yyyy HH:mm'),
    DataSource = original_host,
    EventId = instanceId,
    UserName = user,
    ["Endpoint"] = Endpoint,
    ["User SID"] = SID,
    MessageDetails = Description,
    Severity = SeverityDescription

Indicators

These rows show field, operator, and value matches.

Output fields

These fields are emitted when the rule matches.

FieldSource
DataSourceproject
Dateproject
Endpointproject
EventIdproject
MessageDetailsproject
Severityproject
User SIDproject
UserNameproject