research

Behind the console: Active phishing campaign targeting AWS console credentials

March 9, 2026

Behind The Console: Active Phishing Campaign Targeting Aws Console Credentials

Key points and observations

  • Datadog Security Research identified an active adversary-in-the-middle (AiTM) phishing campaign targeting AWS Console credentials.
  • The phishing kit proxies authentication to the legitimate AWS sign-in endpoint in real time, validating credentials before redirecting victims and likely capturing one-time password (OTP) codes.
  • We observed post-compromise console access within 20 minutes of credential submission, originating from Mullvad VPN infrastructure.
  • This campaign does not exploit AWS vulnerabilities or abuse AWS infrastructure.

Background

Datadog Security Research identified a credential-harvesting campaign targeting AWS Console users through typosquatted domains that mimic AWS infrastructure naming conventions. The operation uses real-time adversary-in-the-middle (AiTM) proxying to capture validated credentials and session material.

We identified two active phishing infrastructure clusters and a third related domain sharing registrar metadata. In one observed case, the operator authenticated to a compromised AWS account within 20 minutes of credential submission.

Campaign overview

Cluster First Observed IP Root Domain Registration Date
1 23 Feb 2026 178.16.54[.]142 cloud-recovery[.]net 15 Jan 2026
2 25 Feb 2026 69.67.172[.]30 cloud-policy[.]com 25 Feb 2026
3 Not active Unknown cloud-recovery[.]us 14 Jan 2026

All domains share Registrar ID 3254 (CNOBIN INFORMATION TECHNOLOGY LIMITED). Cluster 2 was registered and deployed on the same day we first observed it, indicating rapid infrastructure rotation.

Initial access

Tweet showing a phishing email impersonating an AWS Organization Security Alert (click to enlarge)
Tweet showing a phishing email impersonating an AWS Organization Security Alert (click to enlarge)

We identified a partial screenshot of the phishing email shared publicly in a tweet, our only source for the email content. The phishing URL was observed separately via URLscan.

Because we did not obtain the original email headers, the sender address (noreply@security[.]aws) should be considered spoofed.

The lure impersonates an AWS security notification, claiming:

"AWS Security Hub has detected unusual cross-account IAM role assumption patterns within your AWS Organization."

A public URLscan submission reveals details about how the phishing link was structured.

https://rcxm95cx.r.us-east-2.awstrack.me/L0/https:%2F%2Fpost.spmailtechnolo.com%2F...

The awstrack.me domain is a AWS SES click-tracking domain. This has two benefits for the attacker: increasing the reputation of the link within the email and allowing for the tracking of their phishing campaign.

The victim follows a multi-stage redirect before reaching the phishing page:

  1. AWS SES tracking URL (awstrack.me) - click tracked and logged by attacker (unverified, but a reasonable assumption)
  2. Redirect post.spmailtechnolo.com (mail service)
  3. Redirect (signin.aws.cloud-recovery[.]net/lwWyrgEE) - short-lived URL.
  4. Redirect (signin.aws.cloud-recovery[.]net/oauth?)
  5. Phishing landing page (signin.aws.cloud-recovery[.]net/signin?...) - credential harvesting page

Technical analysis

AiTM proxying

The phishing page is a high-fidelity clone of the AWS Management Console sign-in page. The kit serves static assets that mirror the legitimate AWS sign-in UI:

  • AWS CloudFront-hosted assets (d1.awsstatic.com)
  • AWS UI framework stylesheets (awsui)
  • Identical copyright footer referencing the current year

The URL structure also mimics the legitimate AWS OAuth flow, including PKCE parameters:

/signin?redirect_uri=https%3A%2F%2Fconsole.aws.amazon.com%2Fconsole%2Fhome
       &client_id=arn%3Aaws%3Asignin%3A%3A%3Aconsole%2Fcanvas
       &code_challenge=hzU4QD5OTEZeurPpybAoADh8GnO_URqBECTzHN4CxkY
       &code_challenge_method=SHA-256

The legitimate-looking client_id ARN and SHA-256 PKCE code challenge make the URL nearly indistinguishable from a genuine AWS authentication request.

Phishing page hosted at signin.aws.cloud-recovery.net mimicking the AWS IAM user sign-in page (click to enlarge)
Phishing page hosted at signin.aws.cloud-recovery.net mimicking the AWS IAM user sign-in page (click to enlarge)

The kit functions as a transparent reverse proxy, forwarding credentials to the legitimate AWS endpoint in real time and relaying responses back to the victim. Although we have not confirmed it, the kit likely supports real-time 2FA code capture.

Product pages

AWS Identity and Access Management product landing page served from the phishing domain (click to enlarge)
AWS Identity and Access Management product landing page served from the phishing domain (click to enlarge)

Navigating to aws.[domain]/ displays product landing pages resembling legitimate AWS product pages, lending additional legitimacy to the phishing site.

Anti-analysis

AWS homepage shown as the redirect destination for anti-analysis URL paths (click to enlarge)
AWS homepage shown as the redirect destination for anti-analysis URL paths (click to enlarge)

The only anti-analysis control we observed is an HTTP redirect triggered by specific URL paths and parameters. The redirect target differs by domain:

  • cloud-recovery[.]net redirects to amazon[.]com
  • cloud-policy[.]com redirects to aws[.]com

Administrative panel

Administrative panel login page exposed on TCP port 3000 on both phishing kit servers (click to enlarge)
Administrative panel login page exposed on TCP port 3000 on both phishing kit servers (click to enlarge)

Both infrastructure clusters expose an administrative panel on TCP port 3000. This panel possibly provides the attacker with:

  • Real-time visibility of captured credentials
  • Campaign management (active phishing URLs, target lists)

We found two other servers (158.94.208[.]32 and 158.94.211[.]216) running the same administrative panel with associations to recently created domains attempting to impersonate M365 and Apple:

o365signin[.]app
o365login[.]app
o365singin[.]com
oauth-icloud[.]com

These domains are not currently live. However, the common administrative panel could point towards a phishing kit that is shared among multiple actors.

Domain infrastructure

Both domain clusters follow a similar subdomain pattern designed to spoof AWS infrastructure:

Subdomain Purpose
signin.aws.[domain] Primary credential harvesting page
aws.[domain] Hosts product landing pages mimicking AWS
console.[domain] Likely used for post-authentication redirection

All three domains were registered through the same registrar, making it a viable pivot point for identifying additional campaign infrastructure. Several other subdomains mimicking AWS services and regions were present but not observed in active use. A selection:

us-west-2.console.aws.cloud-recovery[.]net
us-west-1.console.aws.cloud-recovery[.]net
us-east-2.console.aws.cloud-recovery[.]net
us-east-1.console.aws.cloud-recovery[.]net
signin.aws.cloud-recovery[.]net
sa-east-1.console.aws.cloud-recovery[.]net
phd.aws.cloud-recovery[.]net
me-south-1.console.aws.cloud-recovery[.]net
eu-west-1.console.aws.cloud-recovery[.]net
eu-south-1.console.aws.cloud-recovery[.]net
eu-north-1.console.aws.cloud-recovery[.]net
eu-central-1.console.aws.cloud-recovery[.]net
console.cloud-recovery[.]net
console.aws.cloud-recovery[.]net
cloud-recovery[.]net
cdn.console.cloud-recovery[.]net
ca-central-1.console.aws.cloud-recovery[.]net
b.cdn.console.cloud-recovery[.]net
aws.cloud-recovery[.]net
ap-southeast-2.console.aws.cloud-recovery[.]net
ap-southeast-1.console.aws.cloud-recovery[.]net
ap-south-1.console.aws.cloud-recovery[.]net
ap-east-1.console.aws.cloud-recovery[.]net
af-south-1.console.aws.cloud-recovery[.]net
a.b.cdn.console.cloud-recovery[.]net

Post-compromise authentication

Within 20 minutes of credential submission, the attacker authenticated to the AWS Console from 185.209.196[.]132, a Mullvad VPN egress node. This rapid turnaround suggests either:

  • An automated credential-testing pipeline triggered on submission
  • An operator actively monitoring the admin panel and acting on new captures

How Datadog can help

Datadog includes out-of-the-box security rules for monitoring suspicious behavior related to AWS cloudtrail:

In addition to this, you can hunt in your own environment for indications of this activity:

  • ConsoleLogin events from 178.16.54[.]142 or 69.67.172[.]30
source:cloudtrail @evt.name:ConsoleLogin @network.client.ip:(178.16.54.142 OR 69.67.172.30)
  • AWS cloudtrail activity from Mullvad VPN IPs
source:cloudtrail @threat_intel.results.additional_data.tunnels.operator:MULLVAD_VPN
  • DNS activity to any of the domains listed in the IoC section.
@ocsf.query.hostname:(*.cloud-recovery.net OR *.cloud-policy.com) OR @dns.question.name:(*.cloud-recovery.net OR *.cloud-policy.com)

Conclusion

This campaign remains active at the time of writing. Infrastructure changes observed on February 26, 2026—including updated redirect logic and expanded anti-analysis controls—indicate continued operator maintenance.

We have reported the identified infrastructure to AWS Security who are coordinating on disruption and takedown efforts.

Defenders should treat this campaign as active. Monitoring CloudTrail authentication events, MFA anomalies, and privilege escalation activity remains critical for detecting credential abuse after successful phishing.

Indicators of compromise

IP Role Notes
178.16.54[.]142 Phishing kit server (Cluster 1) Possibly active from the start of February 2026
69.67.172[.]30 Phishing kit server (Cluster 2) Active as of 25 February 2026
185.209.196[.]132 Attacker post-compromise access

Domains (subset of domains included)

Domain Role Registered
cloud-recovery[.]us Root domain (Cluster 3) — no phishing page observed 14 Jan 2026
aws.cloud-recovery[.]us (Cluster 3) — purpose unconfirmed
cloud-recovery[.]net Root domain (Cluster 1) 15 Jan 2026
signin.aws.cloud-recovery[.]net Credential harvesting (Cluster 1)
aws.cloud-recovery[.]net AWS products subdomain (Cluster 1)
console.cloud-recovery[.]net Kit functionality (Cluster 1)
cloud-policy[.]com Root domain (Cluster 2) 25 Feb 2026
signin.aws.cloud-policy[.]com Credential harvesting (Cluster 2)
aws.cloud-policy[.]com AWS products subdomain (Cluster 2)
console.cloud-policy[.]com Kit functionality (Cluster 2)

Did you find this article helpful?

Subscribe to the Datadog Security Digest

Get the latest insights from the cloud security community and Security Labs posts, delivered to your inbox monthly. No spam.

Related Content