36 lines
2.6 KiB
Markdown

# SMTP Smuggling
{{#include ../../banners/hacktricks-training.md}}
## Osnovne informacije
Ova vrsta ranjivosti je [**prvobitno otkrivena u ovom postu**](https://sec-consult.com/blog/detail/smtp-smuggling-spoofing-e-mails-worldwide/) gde je objašnjeno da je moguće **iskoristiti razlike u tome kako se SMTP protokol interpretira** prilikom finalizacije e-pošte, omogućavajući napadaču da prokrijumčari više e-poruka u telu legitimne, omogućavajući mu da se lažno predstavi kao drugi korisnici pogođenog domena (kao što je admin@outlook.com) zaobilazeći odbrane kao što je SPF.
### Zašto
To je zato što u SMTP protokolu, **podaci poruke** koji se šalju u e-pošti kontroliše korisnik (napadač) koji može poslati posebno oblikovane podatke koristeći razlike u parserima koji će prokrijumčariti dodatne e-poruke u receptor. Pogledajte ovaj ilustrovani primer iz originalnog posta:
<figure><img src="../../images/image (8) (1) (1) (1) (1).png" alt=""><figcaption><p><a href="https://sec-consult.com/fileadmin/user_upload/sec-consult/Dynamisch/Blogartikel/2023_12/SMTP_Smuggling-Overview__09_.png">https://sec-consult.com/fileadmin/user_upload/sec-consult/Dynamisch/Blogartikel/2023_12/SMTP_Smuggling-Overview__09_.png</a></p></figcaption></figure>
### Kako
Da bi iskoristio ovu ranjivost, napadač treba da pošalje neke podatke koje **Outbound SMTP server misli da je samo 1 e-poruka, dok Inbound SMTP server misli da postoji nekoliko e-poruka**.
Istraživači su otkrili da različiti **Inbound serveri smatraju različite karaktere kao kraj podataka** e-poruke koje Outbound serveri ne smatraju.\
Na primer, regularan kraj podataka je `\r\n.\r`. Ali ako Inbound SMTP server takođe podržava `\n.`, napadač može jednostavno dodati **te podatke u svoju e-poruku i početi da označava SMTP komande** novih e-poruka kako bi ih prokrijumčario, baš kao u prethodnoj slici.
Naravno, ovo može raditi samo ako **Outbound SMTP server ne tretira te podatke** kao kraj podataka poruke, jer u tom slučaju će videti 2 e-poruke umesto samo 1, tako da je na kraju ovo desinkronizacija koja se zloupotrebljava u ovoj ranjivosti.
Potencijalni podaci za desinkronizaciju:
- `\n.`
- `\n.\r`
Takođe, imajte na umu da se SPF zaobilazi jer ako prokrijumčarite e-poruku od `admin@outlook.com` iz e-poruke od `user@outlook.com`, **pošiljalac je i dalje `outlook.com`.**
## **Reference**
- [https://sec-consult.com/blog/detail/smtp-smuggling-spoofing-e-mails-worldwide/](https://sec-consult.com/blog/detail/smtp-smuggling-spoofing-e-mails-worldwide/)
{{#include ../../banners/hacktricks-training.md}}