メールヘッダインジェクション【情報処理安全確保支援士講座】

2026年1月14日

情報処理安全確保支援士 メールヘッダインジェクション

今回は、情報処理安全確保支援士の試験で問われるメールヘッダインジェクションについて解説します。

アカリ
アカリ
メールヘッダインジェクションというからには、やっぱりメールのヘッダに不正なコードを混入させるんだよね?
トモル
トモル
そうみたいだね~。これも入力フォームの脆弱性を悪用した攻撃みたいだよ!

この記事のまとめ

  1. メールヘッダインジェクションの概要
  2. メールヘッダインジェクションの流れ
  3. メールヘッダインジェクションの対策

メールヘッダインジェクション

情報処理安全確保支援士 メールヘッダインジェクション

メールヘッダインジェクションは、ユーザがフォームに入力したデータからメールを送信するWebアプリケーション上で実施される攻撃です。

不正なメールヘッダをメールに混入させ、意図していないaddressに迷惑メールを送信するあなど、メール送信機能を悪用します。

キュー
キュー
一般的なWebサイトでは入力フォームから決められた固定アドレスに送信されるはずやけど、脆弱性を突くことでアドレスを変更できてしまうんやで

メールヘッダインジェクションの攻撃例

送信先のメールアドレス(To)が固定され、送信元のアドレス(From)と本文をフォームから入力する仕組みとなっているメール通信プログラムの例を挙げます。

送信元のアドレスとして改行コードとメールヘッダを含む文字列を入力すると、意図しないaddressにメールが送られる可能性があります。例えば下記のような仕様のメール送信フォームを考えてみましょう。

メール送信フォーム
  • Toアドレス:example@sikaku-no-iroha.co.jp
  • Fromアドレス:フォームから入力

このメールヘッダを生成し、sendmailコマンドに引き渡すことでメールを送信します。ここで、「ts@test.com%0d%0aBcc%3a%20target@test.jp」といった文字列をFromアドレスに入力すると、下記のようなメールヘッダが生成され、意図しないアドレスにメールが送信されてしまいます。

生成されるヘッダ
  • Toアドレス:example@sikaku-no-iroha.co.jp
  • Fromアドレス:ts@test.com
  • Bccアドレス:target@test.jp
📝【出題履歴】令和6年度秋期 午後問4 メールヘッダインジェクションに関する出題

【問題文】
攻撃者が,セッションフィクセーション脆弱性を悪用するだけでも休職者属性情報を窃取することができるが,図Dの順序で攻撃をした場合,不審なメールが求人企業に届かないので,攻撃に気づかれることなく,WebAPIを悪用して,より多くの求職者属性情報を窃取することができる。

情報処理安全確保支援士試験 令和6年度秋期 午後問4 図D

【設問】

設問2 図D中の g , f に入れる攻撃手順を答えよ。

出題:令和6年度秋期 午後問4

メールヘッダインジェクションの対策方法

メールヘッダインジェクションの対策方法は下記が挙げられます。

メールヘッダインジェクションの対策方法
  • メールヘッダをすべて固定値にし、ユーザの入力値はメールヘッダに出力しない
  • Webアプリケーションの実行環境や言語に実装されているメール送信用のAPIを使用する
  • メールヘッダとして用いるユーザ入力データに対して改行コードのチェックを行う
スポンサーリンク

メールヘッダインジェクション・例題

実際に例題を解いて問題に慣れていきましょう。

Webアプリケーションの問い合わせフォームから送信された利用者の入力内容を、そのまま電子メールの件名や宛先などのメールヘッダに設定して送信している。
このとき、利用者入力に改行コードを埋め込むことで、攻撃者がBccやCcなどの任意のメールヘッダを追加し、不正な大量メール送信を可能にする脆弱性を何というか。(オリジナル)

ア:SMTPコマンドインジェクション
イ:クロスサイトスクリプティング
ウ:メールヘッダインジェクション
エ:オープンリダイレクト

(ログイン後回答すると、ここに前回の正誤情報が表示されます)

問の正解を表示

問の解説を表示

メールヘッダインジェクションは、Webフォームなどの入力値を適切に検証・無害化せず、そのままTo, Cc, Bcc, Subject などのメールヘッダに利用することで発生する脆弱性です。

攻撃者が入力値に \r\n(CRLF)などの改行コードを含めると下記のように、本来想定していない追加のヘッダ行を注入でき、スパム配信やフィッシングメールの踏み台として悪用されます。

Subject: 問い合わせ\r\nBcc: victim1@example.com, victim2@example.com

ア:SMTPコマンドインジェクション
→SMTPセッションそのものに不正なコマンドを注入する攻撃です。本問の「メールヘッダ改ざん」とは異なります。

イ:XSS
→HTMLページにスクリプトを埋め込む攻撃です。したがって誤りです。

エ:オープンリダイレクト
→外部の不正サイトへ利用者をリダイレクトさせる脆弱性です。したがって誤りです。

これより、「ウ」が正解です。

メールヘッダインジェクション・まとめ

この記事のまとめ

  1. メールヘッダインジェクションの概要
  2. メールヘッダインジェクションの流れ
  3. メールヘッダインジェクションの対策

今回はメールヘッダインジェクションについて学習しました。メールヘッダインジェクションは午後(科目B)で出題実績があるので、対策方法を含めて確認しておきましょう。

次回はディレクトリトラバーサルについて学習します。


本気で支援士を狙うなら・・・
支援士ゼミがおすすめです!
  • ベテラン講師による手厚いサポート
  • モチベーションを保てるセキュリティコラムが満載!
  • マンツーマン形式で個別相談もできる!

スポンサーリンク