hacktricks/pentesting-web/email-injections.md

178 lines
16 KiB
Markdown
Raw Normal View History

2023-11-06 08:38:02 +00:00
# ईमेल इंजेक्शन
2022-04-28 16:01:33 +00:00
<figure><img src="../.gitbook/assets/image (3) (1) (1).png" alt=""><figcaption></figcaption></figure>
2022-08-31 22:35:39 +00:00
\
2023-11-06 08:38:02 +00:00
[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) का उपयोग करके आसानी से वर्कफ़्लो बनाएं और संचालित करें, जो दुनिया के सबसे उन्नत समुदाय उपकरणों द्वारा संचालित होते हैं।\
आज ही पहुंच प्राप्त करें:
2022-08-31 22:35:39 +00:00
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
2022-04-28 16:01:33 +00:00
<details>
2023-04-25 18:35:28 +00:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
2023-11-06 08:38:02 +00:00
* क्या आप किसी **साइबर सुरक्षा कंपनी** में काम करते हैं? क्या आप चाहते हैं कि आपकी **कंपनी HackTricks में विज्ञापित हो**? या क्या आपको **PEASS के नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने का उपयोग करने की अनुमति** चाहिए? [**सदस्यता योजनाएं**](https://github.com/sponsors/carlospolop) की जांच करें!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) की खोज करें, हमारा विशेष [**NFT संग्रह**](https://opensea.io/collection/the-peass-family)
* [**आधिकारिक PEASS & HackTricks swag**](https://peass.creator-spring.com) प्राप्त करें
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discord समूह**](https://discord.gg/hRep4RUj7f) या [**टेलीग्राम समूह**](https://t.me/peass) में **शामिल हों** या मुझे **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)** का पालन करें**.
* **अपने हैकिंग ट्रिक्स को** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **और** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **में PR जमा करके साझा करें**
2022-04-28 16:01:33 +00:00
</details>
2023-11-06 08:38:02 +00:00
## भेजे गए ईमेल में इंजेक्शन करें
2023-11-06 08:38:02 +00:00
### भेजने वाले तर्क के बाद Cc और Bcc में इंजेक्शन करें
2021-11-27 01:09:08 +00:00
```
From:sender@domain.com%0ACc:recipient@domain.co,%0ABcc:recipient1@domain.com
```
2023-11-06 08:38:02 +00:00
यह संदेश प्राप्तकर्ता और प्राप्तकर्ता1 खातों को भेजा जाएगा।
2023-11-06 08:38:02 +00:00
### तर्क इंजेक्शन करें
2021-11-27 01:09:08 +00:00
```
From:sender@domain.com%0ATo:attacker@domain.com
```
2023-11-06 08:38:02 +00:00
संदेश मूल प्राप्तकर्ता और हमलावर खाते को भेजा जाएगा।
2023-11-06 08:38:02 +00:00
### विषय तर्क को इंजेक्ट करें
```
From:sender@domain.com%0ASubject:This is%20Fake%20Subject
```
जाली विषय को मूल विषय में जोड़ा जाएगा और कुछ मामलों में इसे बदल दिया जाएगा। यह मेल सेवा के व्यवहार पर निर्भर करेगा।
2023-11-06 08:38:02 +00:00
### संदेश के शरीर को बदलें
2023-11-06 08:38:02 +00:00
दो-पंक्ति फीड इंजेक्ट करें, फिर अपना संदेश लिखें ताकि संदेश के शरीर को बदल सकें।
2021-11-27 01:09:08 +00:00
```
2023-11-06 08:38:02 +00:00
From:sender@domain.com%0A%0AMy%20New%20%0Fake%20Message.
```
2023-11-06 08:38:02 +00:00
### PHP mail() फ़ंक्शन का उपयोग
2023-11-06 08:38:02 +00:00
The PHP `mail()` function is commonly used to send emails from a web application. However, if not properly secured, it can be vulnerable to email injection attacks. Email injection occurs when an attacker is able to manipulate the email headers and inject malicious content into the email.
2023-11-06 08:38:02 +00:00
PHP `mail()` फ़ंक्शन आमतौर पर वेब एप्लिकेशन से ईमेल भेजने के लिए उपयोग किया जाता है। हालांकि, यदि इसे सुरक्षित नहीं किया गया है, तो यह ईमेल इंजेक्शन हमलों के लिए संक्रमित हो सकता है। ईमेल इंजेक्शन तब होता है जब हमलावर ईमेल हैडर्स को मानिपुरेट करके ईमेल में दुष्ट सामग्री इंजेक्ट कर सकता है।
2023-11-06 08:38:02 +00:00
#### Exploiting Email Injection Vulnerabilities
2023-11-06 08:38:02 +00:00
To exploit an email injection vulnerability, an attacker can craft a malicious payload that includes additional email headers. These headers can be used to modify the recipient, subject, or even inject additional recipients into the email.
ईमेल इंजेक्शन संकट का उपयोग करने के लिए, हमलावर एक दुष्ट पेलोड तैयार कर सकता है जिसमें अतिरिक्त ईमेल हैडर्स शामिल होते हैं। इन हैडर्स का उपयोग प्राप्तकर्ता, विषय या ईमेल में अतिरिक्त प्राप्तकर्ताओं को बदलने के लिए किया जा सकता है।
#### Example of Email Injection
Here is an example of a vulnerable PHP code that uses the `mail()` function without proper input validation:
यहां एक ऐसा PHP कोड का उदाहरण है जो सही इनपुट मान्यता के बिना `mail()` फ़ंक्शन का उपयोग करता है:
```php
<?php
$to = $_POST['to'];
$subject = $_POST['subject'];
$message = $_POST['message'];
mail($to, $subject, $message);
?>
2021-11-27 01:09:08 +00:00
```
2023-11-06 08:38:02 +00:00
In this example, the values for the recipient (`$to`), subject (`$subject`), and message (`$message`) are directly taken from user input without any validation. This allows an attacker to manipulate these values and inject additional email headers.
इस उदाहरण में, प्राप्तकर्ता (`$to`), विषय (`$subject`) और संदेश (`$message`) के लिए मान उपयोगकर्ता इनपुट से सीधे लिए जाते हैं बिना किसी मान्यता के। इससे हमलावर को इन मानों को मानिपुरेट करने और अतिरिक्त ईमेल हैडर्स इंजेक्ट करने की अनुमति मिलती है।
#### Prevention Techniques
To prevent email injection attacks, it is important to properly validate and sanitize user input before using it in the `mail()` function. This can be done by:
- Validating and sanitizing user input using appropriate functions or regular expressions.
- Using whitelisting techniques to only allow specific characters or patterns in the input.
- Implementing proper input validation and sanitization measures throughout the application.
2021-11-27 01:09:08 +00:00
2023-11-06 08:38:02 +00:00
ईमेल इंजेक्शन हमलों को रोकने के लिए, `mail()` फ़ंक्शन में उपयोग करने से पहले उपयोगकर्ता इनपुट की सही मान्यता और सैनिटाइज़ेशन करना महत्वपूर्ण है। इसे निम्नलिखित तकनीकों द्वारा किया जा सकता है:
- उपयुक्त फ़ंक्शन या नियमित अभिव्यक्तियों का उपयोग करके उपयोगकर्ता इनपुट की मान्यता और सैनिटाइज़ेशन करना।
- इनपुट में केवल विशिष्ट वर्ण या पैटर्न की अनुमति देने के लिए व्हाइटलिस्टिंग तकनीक का उपयोग करना।
- एप्लिकेशन के लिए सही मान्यता और सैनिटाइज़ेशन उपायोग करना।
2021-11-27 01:09:08 +00:00
```bash
# The function has the following definition:
php --rf mail
Function [ <internal:standard> function mail ] {
2023-11-06 08:38:02 +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
}
```
2023-11-06 08:38:02 +00:00
#### पांचवां पैरामीटर ($अतिरिक्त_पैरामीटर)
2021-11-27 01:09:08 +00:00
2023-11-06 08:38:02 +00:00
इस खंड में हम **इस पैरामीटर का दुरुपयोग कैसे कर सकते हैं यह मानकित करेंगे जब किसी हमलावर के पास इसका नियंत्रण होता है**
2021-11-27 01:09:08 +00:00
2023-11-06 08:38:02 +00:00
यह पैरामीटर PHP द्वारा बाइनरी सेंडमेल को आमंत्रित करने के लिए उपयोग किए जाने वाले कमांड लाइन में जोड़ा जाएगा। हालांकि, इसे फ़ंक्शन `escapeshellcmd($अतिरिक्त_पैरामीटर)` के साथ सैनिटाइज़ किया जाएगा।
2021-11-27 01:09:08 +00:00
2023-11-06 08:38:02 +00:00
इस मामले में एक हमलावर **सेंडमेल के लिए अतिरिक्त पैरामीटर्स को इंजेक्ट कर सकता है**
2021-11-27 01:09:08 +00:00
2023-11-06 08:38:02 +00:00
#### /usr/sbin/sendmail के अंतर
2021-11-27 01:09:08 +00:00
2023-11-06 08:38:02 +00:00
**sendmail** इंटरफ़ेस **MTA ईमेल सॉफ़्टवेयर** (Sendmail, Postfix, Exim आदि) द्वारा प्रदान किया जाता है जो सिस्टम पर स्थापित होता है। हालांकि, **मुख्य कार्यक्षमता** (-t -i -f पैरामीटर जैसे) संगतता के कारण **एक ही रहती है**, **अन्य फ़ंक्शन और पैरामीटर** MTA के स्थापित होने पर बहुत अधिक भिन्न हो सकते हैं।
2021-11-27 01:09:08 +00:00
2023-11-06 08:38:02 +00:00
यहां कुछ उदाहरण हैं sendmail कमांड/इंटरफ़ेस के विभिन्न मैन पेज के:
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
2023-11-06 08:38:02 +00:00
**sendmail के मूल्य के आधार पर** अलग-अलग विकल्पों की खोज की गई हैं जिनका दुरुपयोग करके फ़ाइलों को लीक किया जा सकता है या फिर अनियमित कमांड्स को निष्पादित किया जा सकता है। देखें कैसे [**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
2023-11-06 08:38:02 +00:00
## ईमेल नाम में इंजेक्शन करें
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
### ईमेल के अनदेखे हिस्से
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
चिह्न: **+, -** और **{}** असामान्य मौकों पर टैगिंग के लिए उपयोग किए जा सकते हैं और अधिकांश ईमेल सर्वर द्वारा अनदेखा किए जाते हैं
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
* उदा। john.doe+intigriti@example.com → john.doe@example.com
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
**दोनों ओर से ब्रैकेट्स () के बीच टिप्पणियां** भी अनदेखी की जाएंगी
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
* उदा। john.doe(intigriti)@example.com → john.doe@example.com
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
### व्हाइटलिस्ट बाईपास
2022-12-29 12:18:46 +00:00
2023-01-04 14:57:03 +00:00
<figure><img src="../.gitbook/assets/image (4) (6).png" alt=""><figcaption></figcaption></figure>
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
### उद्धरण
2022-12-29 12:18:46 +00:00
<figure><img src="../.gitbook/assets/image (6) (4).png" alt=""><figcaption></figcaption></figure>
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
### आईपी
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
आप वर्गाकार ब्रैकेट्स के बीच डोमेन के रूप में आईपी भी उपयोग कर सकते हैं:
2022-12-29 12:18:46 +00:00
* john.doe@\[127.0.0.1]
* john.doe@\[IPv6:2001:db8::1]
2023-11-06 08:38:02 +00:00
### अन्य सुरक्षा दुर्बलताएं
2022-12-29 12:18:46 +00:00
![](<../.gitbook/assets/image (296).png>)
2023-11-06 08:38:02 +00:00
## तृतीय पक्ष SSO
2022-12-29 12:18:46 +00:00
### XSS
2023-11-06 08:38:02 +00:00
कुछ सेवाएं जैसे **github** या **salesforce** आपको एक **XSS पेलोड के साथ ईमेल पता बनाने की अनुमति देती हैं**। यदि आप इस प्रदाताओं का उपयोग करके अन्य सेवाओं में लॉगिन कर सकते हैं और यह सेवाएं ईमेल को सही ढंग से सैनिटाइज़ नहीं कर रही हैं, तो आप XSS का कारण बन सकते हैं।
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
### खाता अधिकार
2022-12-29 12:18:46 +00:00
2023-11-06 08:38:02 +00:00
यदि **SSO सेवा** आपको **दिए गए ईमेल पते की पुष्टि किए बिना खाता बनाने की अनुमति देती है** (जैसे **salesforce**) और फिर आप उस खाते का उपयोग करके एक अलग सेवा में लॉगिन कर सकते हैं जो salesforce का विश्वास करती है, तो आप किसी भी खाते तक पहुंच सकते हैं।\
ध्यान दें कि salesforce द्वारा दिए गए ईमेल की पुष्टि की जाती है लेकिन ऐप्लिकेशन को इस जानकारी का ध्यान रखना चाहिए।
2021-11-27 01:09:08 +00:00
2023-11-06 08:38:02 +00:00
## जवाब-को
2022-04-28 16:01:33 +00:00
2023-11-06 08:38:02 +00:00
आप _**From: company.com**_ और _**Replay-To: attacker.com**_ का उपयोग करके एक ईमेल
[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) का उपयोग करके आसानी से वर्कफ़्लो बनाएं और संचालित करें, जो दुनिया के सबसे उन्नत समुदाय उपकरणों द्वारा संचालित होते हैं।\
आज ही पहुंच प्राप्त करें:
2022-04-28 16:01:33 +00:00
2022-08-31 22:35:39 +00:00
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}