Skip to content
Threat Feed
high advisory

GCP Password Spraying Attack Detection

A single source IP failing to authenticate into more than 20 unique Google Workspace user accounts within a 5-minute window indicates a password spraying attack targeting GCP.

Triage facts

Revision 2
Evidence
Unknown
Severity
High
Sources
4 public sources
Freshness
Revision 2Jan 3, 14:30 UTC
Detection
2 rules
Revision history 1 entry · Revision 2
  1. Revision 2

    Repaired a legacy canonical identity collision

    Changed: slug

This analytic detects password spraying attacks against Google Workspace accounts. It identifies a single source IP address that fails to authenticate to more than 20 unique Google Workspace user accounts within a 5-minute window. This activity is based on Google Workspace login failure events and is crucial for defenders because successful password spraying can lead to unauthorized access to sensitive resources, data breaches, or further exploitation within the Google Cloud Platform. This type of attack is typically conducted by adversaries attempting to gain initial access or elevate privileges. The Splunk Add-on for Google Workspace is required to collect the necessary log data for this detection.

Attack Chain

  1. The attacker identifies a list of valid Google Workspace usernames.
  2. The attacker crafts login requests with common or default passwords for each username.
  3. The attacker sends these login requests from a single source IP address to avoid account lockouts.
  4. Google Workspace records failed login attempts for each user in its logs.
  5. Splunk ingests the Google Workspace logs via the Google Workspace API and the Splunk Add-on for Google Workspace.
  6. The detection analytic identifies source IPs with more than 20 unique user authentication failures within a 5-minute window.
  7. Security analysts investigate the flagged IP address and user accounts for further malicious activity.
  8. If successful, the attacker gains unauthorized access to user accounts, potentially leading to data exfiltration or further lateral movement within the GCP environment.

Impact

A successful password spraying attack can result in unauthorized access to multiple Google Workspace accounts. Depending on the permissions associated with these accounts, the attacker may be able to access sensitive data, modify configurations, or pivot to other resources within the Google Cloud Platform. This can lead to data breaches, financial losses, and reputational damage. The number of affected accounts can vary significantly depending on the attacker's persistence and the effectiveness of password policies.

Recommendation

  • Deploy the Sigma rule GCP Multiple Users Failing Authentication From Single IP to your SIEM and tune the threshold (unique_accounts > 20) according to your environment.
  • Enable and monitor Google Workspace login events via the Splunk Add-on for Google Workspace to ensure the required data source is available for detection.
  • Investigate any alerts generated by the GCP Multiple Users Failing Authentication From Single IP Sigma rule to determine if a password spraying attack is in progress.
  • Review and enforce strong password policies within Google Workspace to mitigate the risk of successful password spraying attacks.
  • Consider implementing multi-factor authentication (MFA) for all Google Workspace users to further reduce the risk of account compromise.

Detection coverage 2

GCP Multiple Users Failing Authentication From Single IP

high

Detects a single source IP failing to authenticate to multiple Google Workspace accounts, indicating a potential password spraying attack.

sigma tactics: credential_access techniques: T1110.003 sources: webserver, linux

GCP Single User Multiple Failed Logins From Different IPs

high

Detects multiple failed logins from different source IPs to single Google Workspace accounts, indicating a potential password spraying attack.

sigma tactics: credential_access techniques: T1110.003 sources: webserver, linux

Detection queries are available on the platform. Get full rules →