let threshold = 5;
GWorkspaceActivityReports
| where EventMessage has "login_failure"
| summarize login_attempts = count() by ActorEmail, bin(TimeGenerated, 5m)
| where login_attempts > threshold
| extend AccountCustomEntity = ActorEmail
description: |
'Detects possible brute force attack.'
kind: Scheduled
tactics:
- CredentialAccess
requiredDataConnectors:
- connectorId: GoogleWorkspaceReportsAPI
dataTypes:
- GWorkspaceActivityReports
OriginalUri: https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/GoogleWorkspaceReports/Analytic Rules/GWorkspacePossibleBruteForce.yaml
severity: Medium
name: GWorkspace - Possible brute force attack
triggerThreshold: 0
queryPeriod: 1h
query: |
let threshold = 5;
GWorkspaceActivityReports
| where EventMessage has "login_failure"
| summarize login_attempts = count() by ActorEmail, bin(TimeGenerated, 5m)
| where login_attempts > threshold
| extend AccountCustomEntity = ActorEmail
relevantTechniques:
- T1110
id: 8f6cd9a4-5e57-11ec-bf63-0242ac130002
queryFrequency: 1h
status: Available
triggerOperator: gt
version: 1.0.1
entityMappings:
- entityType: Account
fieldMappings:
- columnName: AccountCustomEntity
identifier: Name