目次
はじめに
今回も、応用情報技術者試験の過去問を解いていきます。
今回のテーマは SPF(Sender Policy Framework) です。
SPFは、電子メールのなりすまし対策で使われる代表的な仕組みです。
メールセキュリティでは、
- SPF
- DKIM
- DMARC
の3つがセットで登場することが多いため、それぞれの違いを整理しておくことが重要です。
今回の問題では、特に
「SPFは何を使って送信元を確認するのか」
がポイントになります。
問題
問43
SPF(Sender Policy Framework)の仕組みはどれか。
| 選択肢 | 内容 |
|---|---|
| ア | 電子メールを受信するサーバが、電子メールに付与されているデジタル署名を使って、送信元ドメインの詐称がないことを確認する。 |
| イ | 電子メールを受信するサーバが、電子メールの送信元のドメイン情報と、電子メールを送信したサーバのIPアドレスから、送信元ドメインの詐称がないことを確認する。 |
| ウ | 電子メールを送信するサーバが、電子メールの宛先のドメインや送信者のメールアドレスを問わず、全ての電子メールをアーカイブする。 |
| エ | 電子メールを送信するサーバが、電子メールの送信者の上司からの承認が得られるまで、一時的に電子メールの送信を保留する。 |
解答
正解:イ
解説
SPFは、
そのドメインからメールを送信してよいIPアドレスかどうかを、受信側メールサーバが確認する仕組み
です。
メールを受信したサーバは、SMTP通信で使われる送信元ドメインについてDNSを参照し、
このドメインからメールを送信してよいサーバはどれか
を確認します。
そして、
- DNSに公開されている送信許可情報
- 実際にメールを送ってきたサーバのIPアドレス
を照合します。
許可されたIPアドレスであれば、SPFの認証結果は Pass になります。
したがって、正解は イ です。
図で理解するSPF
SPFの流れを簡単に表すと、次のようになります。
送信メールサーバ
IPアドレス:192.0.2.10
│
▼
受信メールサーバ
│
├─ 送信元ドメインを確認
│ example.com
│
▼
DNSに問い合わせ
「example.com のSPF情報は?」
│
▼
DNSのTXTレコード
v=spf1 ip4:192.0.2.10 -all
│
▼
接続元IPアドレス
192.0.2.10
│
▼
SPFで許可されている
│
▼
SPF Pass
ここで重要なのは、
SPFは「IPアドレス」を使って確認する
という点です。
SPFで確認している「送信元」とは
ここは少し注意が必要です。
メールには一般的に、
From: user@example.com
のような送信者情報が表示されます。
しかし、SPFが直接確認するのは、この画面上に表示されるFromヘッダーそのものではありません。
SPFでは主にSMTP通信の
MAIL FROM(エンベロープFrom)
などで使用されるドメインを確認します。
イメージすると、
メール画面で見える送信元
From: user@example.com
↓
SPFが主に確認する情報
MAIL FROMで使われるドメイン
+
接続元IPアドレス
となります。
応用情報技術者試験では、
「送信元ドメインとIPアドレスを確認する」
と覚えておけば問題ありません。
SPF Passなら安全なメールなのか
SPFでPassになったからといって、
そのメールが完全に安全であることまで保証されるわけではありません。
SPFで分かるのは、
このIPアドレスは、このドメインからメールを送ることを許可されている
ということです。
そのため、
- メールを書いた人物が本人か
- メール本文が安全か
- フィッシングメールではないか
といったことまでSPFだけで判断することはできません。
SPFはあくまで、送信元サーバの認証に使われる仕組みと考えると分かりやすいです。
SPF情報はどこに登録されるのか
SPFの情報はDNSに登録されます。
現在は一般的に、DNSの TXTレコードとして公開します。
例えば、
example.com
TXT
"v=spf1 ip4:192.0.2.10 -all"
という情報が登録されていたとします。
これは簡単にいえば、
example.comからメールを送ってよいIPv4アドレスは192.0.2.10です
という意味です。
一般的には、このような情報を
SPFレコード
と呼びます。
他の選択肢が違う理由
ア:デジタル署名を確認する
これは DKIM(DomainKeys Identified Mail) に近い説明です。
DKIMでは、送信側がメールに電子署名を付与します。
受信側はDNSから公開鍵を取得し、電子署名を検証します。
これによって、
- どのドメインが署名したか
- 署名対象となったメール内容が途中で改ざんされていないか
を確認できます。
SPFでは電子署名を使わないため、アは誤りです。
ウ:全ての電子メールをアーカイブする
これはメールアーカイブに関する説明です。
メールアーカイブとは、送受信したメールを保存しておく仕組みです。
SPFとは関係ありません。
したがって、ウは誤りです。
エ:上司の承認までメール送信を保留する
これはメール送信時の承認や誤送信防止などに関する仕組みを想定した内容です。
SPFとは関係ありません。
したがって、エも誤りです。
問題の用語解説
SPF(Sender Policy Framework)
SPFは、ドメイン側がDNSに
「このIPアドレスからメールを送信してよい」
という情報を公開しておき、受信側が実際の送信元IPアドレスと照合する仕組みです。
主にメールのなりすまし対策として利用されます。
覚え方は、
SPF = IPアドレスを見る
です。
DKIM(DomainKeys Identified Mail)
DKIMは、電子メールに電子署名を付与する仕組みです。
受信側はDNSから公開鍵を取得し、電子署名を検証します。
これによって、
- 署名したドメイン
- メール内容が途中で変更されていないか
を確認できます。
覚え方は、
DKIM = 電子署名を見る
です。
DMARC
DMARCは、SPFやDKIMの認証結果を利用して、メールのなりすまし対策を強化する仕組みです。
特に重要なのが、
メールのFromヘッダーに表示されるドメインと、SPFまたはDKIMで認証されたドメインが整合しているか
を確認することです。
この整合性は Alignment(アラインメント) と呼ばれます。
さらにドメイン管理者は、
- none
- quarantine
- reject
といった方針をDNSで公開できます。
つまり、DMARCは単純に
「SPFとDKIMの結果を見る」
だけではなく、
SPF・DKIMの結果とFromドメインの整合性を確認し、処理方針を示す仕組み
と理解するのが正確です。
SPF・DKIM・DMARCの違い
3つの違いを整理すると、次のようになります。
| 項目 | SPF | DKIM | DMARC |
| 主な確認対象 | 送信元IPアドレス | 電子署名 | SPF・DKIMとFromドメインの整合性 |
| 主な役割 | 送信元サーバの認証 | 署名ドメイン・改ざんの確認 | なりすまし対策のポリシー適用 |
| DNS利用 | ○ | ○ | ○ |
| 覚え方 | IP | 署名 | SPF+DKIM+From |
試験ではまず、
SPF → IPアドレス
DKIM → 電子署名
DMARC → SPF・DKIM+From
と整理すると覚えやすいです。
体系的位置づけ
今回のSPFは、応用情報技術者試験では次のような位置づけになります。
情報セキュリティ
│
└─ 電子メールセキュリティ
│
├─ SPF
│ └─ 送信元IPアドレスを確認
│
├─ DKIM
│ └─ 電子署名を確認
│
└─ DMARC
└─ SPF・DKIMとFromの整合性を確認
SPFだけ単独で覚えるより、
SPF・DKIM・DMARCを一つのグループとして整理する
方が理解しやすくなります。
今回の問題の重要ポイント
今回の問題で特に押さえておきたいポイントは4つです。
ポイント1:SPFはIPアドレスを見る
SPFでは、
実際にメールを送信してきたサーバのIPアドレス
を利用します。
ポイント2:DKIMは電子署名を見る
「電子署名」という言葉が出てきたら、まずDKIMを考えます。
IPアドレス → SPF
電子署名 → DKIM
この対応は非常に重要です。
ポイント3:SPF Passでも本人確認ではない
SPFでPassになるのは、
そのIPアドレスが、そのドメインからメールを送ることを許可されている
という意味です。
メールを書いた人物本人まで確認しているわけではありません。
ポイント4:DMARCまでセットで覚える
メール認証技術では、
SPF
↓
送信元IPを確認
DKIM
↓
電子署名を確認
DMARC
↓
SPF・DKIMとFromドメインの整合性を確認
という関係を押さえておくと、関連問題にも対応しやすくなります。
まとめ
今回の正解は、
イ
でした。
SPFは、
送信元ドメインについてDNSに公開された情報と、実際にメールを送ってきたサーバのIPアドレスを照合する仕組み
です。
試験対策として最も重要なのは、
SPF = IPアドレス
DKIM = 電子署名
DMARC = SPF・DKIM+Fromドメインの整合性
という違いです。
特にSPFとDKIMは混同しやすいため、
IPならSPF、署名ならDKIM
と覚えておくと判断しやすくなります。

コメント