Back
Id1c2310ef-19bf-4caf-b2b0-a4c983932fa5
RulenameClaroty - Multiple failed logins to same destinations
DescriptionDetects multiple failed login attempts to the same Claroty SRA destination site within a 5-minute window. The rule counts failed logins per site and alerts when the number of failures exceeds the threshold value of 10.
SeverityHigh
TacticsInitialAccess
TechniquesT1190
T1133
Required data connectorsCefAma
KindScheduled
Query frequency1h
Query period1h
Trigger threshold0
Trigger operatorgt
Source Urihttps://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Claroty/Analytic%20Rules/ClarotyMultipleFailedLoginsSameDst.yaml
Version1.0.4
Arm template1c2310ef-19bf-4caf-b2b0-a4c983932fa5.json
Deploy To Azure
let threshold = 10;
  ClarotyEvent
  | where EventType has 'Login to SRA'
  | where EventType !has 'succeeded'
  | extend Site = column_ifexists("site_name","")
  | where isnotempty(Site)
  | extend SrcUsername = extract(@'User\s(.*?)\sfailed', 1, EventMessage)
  | summarize FailedLogins = count(), SampleUser = any(SrcUsername) by Site, bin(TimeGenerated, 5m)
  | where FailedLogins > threshold
  | extend SGCustomEntity = Site
  | project TimeGenerated, Site, FailedLogins, Threshold = threshold, SampleUser, SGCustomEntity
relevantTechniques:
- T1190
- T1133
tactics:
- InitialAccess
entityMappings:
- fieldMappings:
  - columnName: SGCustomEntity
    identifier: DistinguishedName
  entityType: SecurityGroup
triggerOperator: gt
description: Detects multiple failed login attempts to the same Claroty SRA destination site within a 5-minute window. The rule counts failed logins per site and alerts when the number of failures exceeds the threshold value of 10.
triggerThreshold: 0
name: Claroty - Multiple failed logins to same destinations
queryFrequency: 1h
id: 1c2310ef-19bf-4caf-b2b0-a4c983932fa5
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Claroty/Analytic%20Rules/ClarotyMultipleFailedLoginsSameDst.yaml
version: 1.0.4
requiredDataConnectors:
- connectorId: CefAma
  dataTypes:
  - CommonSecurityLog
queryPeriod: 1h
severity: High
query: |
  let threshold = 10;
    ClarotyEvent
    | where EventType has 'Login to SRA'
    | where EventType !has 'succeeded'
    | extend Site = column_ifexists("site_name","")
    | where isnotempty(Site)
    | extend SrcUsername = extract(@'User\s(.*?)\sfailed', 1, EventMessage)
    | summarize FailedLogins = count(), SampleUser = any(SrcUsername) by Site, bin(TimeGenerated, 5m)
    | where FailedLogins > threshold
    | extend SGCustomEntity = Site
    | project TimeGenerated, Site, FailedLogins, Threshold = threshold, SampleUser, SGCustomEntity
status: Available
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/1c2310ef-19bf-4caf-b2b0-a4c983932fa5')]",
      "kind": "Scheduled",
      "name": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/1c2310ef-19bf-4caf-b2b0-a4c983932fa5')]",
      "properties": {
        "alertRuleTemplateName": "1c2310ef-19bf-4caf-b2b0-a4c983932fa5",
        "customDetails": null,
        "description": "Detects multiple failed login attempts to the same Claroty SRA destination site within a 5-minute window. The rule counts failed logins per site and alerts when the number of failures exceeds the threshold value of 10.",
        "displayName": "Claroty - Multiple failed logins to same destinations",
        "enabled": true,
        "entityMappings": [
          {
            "entityType": "SecurityGroup",
            "fieldMappings": [
              {
                "columnName": "SGCustomEntity",
                "identifier": "DistinguishedName"
              }
            ]
          }
        ],
        "OriginalUri": "https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Claroty/Analytic%20Rules/ClarotyMultipleFailedLoginsSameDst.yaml",
        "query": "let threshold = 10;\n  ClarotyEvent\n  | where EventType has 'Login to SRA'\n  | where EventType !has 'succeeded'\n  | extend Site = column_ifexists(\"site_name\",\"\")\n  | where isnotempty(Site)\n  | extend SrcUsername = extract(@'User\\s(.*?)\\sfailed', 1, EventMessage)\n  | summarize FailedLogins = count(), SampleUser = any(SrcUsername) by Site, bin(TimeGenerated, 5m)\n  | where FailedLogins > threshold\n  | extend SGCustomEntity = Site\n  | project TimeGenerated, Site, FailedLogins, Threshold = threshold, SampleUser, SGCustomEntity\n",
        "queryFrequency": "PT1H",
        "queryPeriod": "PT1H",
        "severity": "High",
        "status": "Available",
        "subTechniques": [],
        "suppressionDuration": "PT1H",
        "suppressionEnabled": false,
        "tactics": [
          "InitialAccess"
        ],
        "techniques": [
          "T1133",
          "T1190"
        ],
        "templateVersion": "1.0.4",
        "triggerOperator": "GreaterThan",
        "triggerThreshold": 0
      },
      "type": "Microsoft.OperationalInsights/workspaces/providers/alertRules"
    }
  ]
}