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
name: Claroty - Multiple failed logins to same destinations
triggerOperator: gt
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
queryFrequency: 1h
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.
id: 1c2310ef-19bf-4caf-b2b0-a4c983932fa5
triggerThreshold: 0
queryPeriod: 1h
version: 1.0.4
kind: Scheduled
status: Available
severity: High
requiredDataConnectors:
- connectorId: CefAma
  dataTypes:
  - CommonSecurityLog
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/Claroty/Analytic%20Rules/ClarotyMultipleFailedLoginsSameDst.yaml
relevantTechniques:
- T1190
- T1133
tactics:
- InitialAccess
entityMappings:
- fieldMappings:
  - identifier: DistinguishedName
    columnName: SGCustomEntity
  entityType: SecurityGroup
{
  "$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"
    }
  ]
}