---
title: "SEOポイズニングとは？DNSキャッシュポイズニング・XSSとの違い【基本情報技術者試験】"
description: "SEOポイズニングを、検索結果の上位表示を悪用して不正サイトへ誘導する攻撃として整理し、DNSキャッシュポイズニング、XSS、ソーシャルエンジニアリングとの違いを解説します。"
last_modified_at: "2026-08-02"
canonical_url: "https://stemtazoo.github.io/fe/seo-poisoning/"
section: "fe"
---

## まず結論

SEOポイズニングとは、**検索エンジンの順位付けを悪用し、悪意のあるWebサイトを検索結果の上位に表示させる攻撃**です。

基本情報技術者試験では、次のように切り分けます。

```text
検索結果の上位表示を悪用
→ SEOポイズニング

DNSの名前解決情報を改ざん
→ DNSキャッシュポイズニング

Webページに悪意あるスクリプトを混入
→ クロスサイトスクリプティング（XSS）

人の心理や不注意を利用
→ ソーシャルエンジニアリング
```

覚える一文はこれです。

> **検索順位を悪用して不正サイトへ誘導するのがSEOポイズニング。**

## 直感的な説明

SEOは本来、Webページを検索結果で見つけてもらいやすくするための工夫です。

SEOポイズニングは、その仕組みを悪用します。

たとえば、利用者がソフトウェアのダウンロード方法を検索したとします。

```text
利用者が検索する
↓
悪意あるサイトが上位に表示される
↓
正規サイトだと思って開く
↓
偽サイトやマルウェア配布ページへ誘導される
```

検索結果の上位にあると、安全で信頼できるページのように見えます。

攻撃者は、この思い込みを利用します。

## 定義・仕組み

SEOポイズニングでは、攻撃者が悪意のあるページや改ざんしたページを、検索結果で目立つ位置に表示させようとします。

典型的な流れは次のとおりです。

1. 攻撃者が悪意のあるWebページを用意する
2. 人気のある検索キーワードをページへ含める
3. 検索順位が上がるように細工する
4. 利用者が検索結果からページを開く
5. 偽サイト、詐欺ページ、マルウェア配布ページなどへ誘導する

重要なのは、攻撃の入口が**検索結果**であることです。

### SEOとの違い

SEOそのものは攻撃ではありません。

SEOは、Webページの内容や構造を整え、検索エンジンへ正しく伝えるための手法です。

```text
利用者に正しく見つけてもらう
→ SEO

悪意あるサイトへ誘導するために検索順位を悪用
→ SEOポイズニング
```

### 誘導後に起こること

SEOポイズニング自体は、利用者を悪意あるページへ誘導する手口です。

誘導された後には、次のような攻撃につながることがあります。

- 偽ログインページでID・パスワードを盗む
- マルウェアをダウンロードさせる
- 偽の警告画面を表示する
- 不正なソフトウェアを実行させる
- 詐欺サイトで個人情報を入力させる

このテーマは、基本情報技術者試験の情報セキュリティに関係する内容です。公式の出題範囲やシラバスは、[IPA：基本情報技術者試験](https://www.ipa.go.jp/shiken/kubun/fe.html) から確認できます。

## 科目Aでどう出る？

科目Aでは、攻撃の説明から正しい名称を選ぶ問題として出題されます。

問題文では、まず**何が悪用・改ざんされたか**を確認します。

| 問題文の手掛かり | 攻撃 |
|---|---|
| 検索結果の上位に悪意あるサイトを表示 | SEOポイズニング |
| DNSサーバのキャッシュを改ざん | DNSキャッシュポイズニング |
| 入力内容を利用してスクリプトを実行 | XSS |
| 人をだまして情報を聞き出す | ソーシャルエンジニアリング |

### 選択肢を切る順番

```text
検索結果・検索順位が出ているか
→ SEOポイズニング

DNS・名前解決・キャッシュが出ているか
→ DNSキャッシュポイズニング

入力欄・スクリプト・Cookieが出ているか
→ XSS

電話・メール・なりすまし・心理的誘導が出ているか
→ ソーシャルエンジニアリング
```

「利用者を不正サイトへ誘導する」という結果だけでは、複数の攻撃が候補になります。

そのため、**どの仕組みを悪用したか**を見ることが大切です。

## どんな場面で使う？

SEOポイズニングは、利用者が検索エンジンを使って情報やソフトウェアを探す場面で問題になります。

特に注意が必要なのは、次のような場面です。

- 無料ソフトを検索してダウンロードする
- 有名サービスのログインページを検索する
- エラー解決方法を検索する
- 話題のニュースや災害情報を検索する
- ドライバや更新プログラムを検索する

対策では、検索結果の順位だけを信用しないことが重要です。

```text
検索上位
≠
公式サイト
≠
安全なサイト
```

実務では、次のような確認が役立ちます。

- URLやドメイン名を確認する
- 公式サイトや正規の配布元から入手する
- 検索広告と通常の検索結果を区別する
- 不審なダウンロードを実行しない
- セキュリティソフトやWebフィルタリングを利用する

## よくある誤解・混同

### SEOそのものが攻撃である

誤りです。

SEOは本来、Webページを検索結果で見つけやすくするための手法です。

悪意あるサイトへ誘導する目的で検索順位を悪用した場合が、SEOポイズニングです。

### DNSキャッシュポイズニングと同じ

違います。

どちらも不正サイトへ誘導する可能性がありますが、悪用する仕組みが異なります。

```text
検索順位を悪用
→ SEOポイズニング

DNSの名前解決情報を改ざん
→ DNSキャッシュポイズニング
```

### XSSと同じ

違います。

XSSは、Webアプリケーションの入力処理などの不備を利用して、悪意あるスクリプトを実行させる攻撃です。

```text
検索結果から誘導
→ SEOポイズニング

Webページ上でスクリプトを実行
→ XSS
```

### ソーシャルエンジニアリングと同じ

ソーシャルエンジニアリングは、人の心理や行動の隙を利用して情報を得る手法の総称です。

SEOポイズニングでも利用者の思い込みを利用しますが、試験では次のように分けます。

```text
検索エンジンの順位を悪用
→ SEOポイズニング

電話・会話・なりすましなどで人をだます
→ ソーシャルエンジニアリング
```

### 検索上位なら安全

誤りです。

検索結果の順位は、安全性を保証するものではありません。

上位に表示されていても、URL、運営者、配布元を確認する必要があります。

## まとめ（試験直前用）

- SEOポイズニングは、検索結果の上位表示を悪用する攻撃
- 目的は、利用者を悪意あるサイトへ誘導すること
- DNS・名前解決・キャッシュ改ざんならDNSキャッシュポイズニング
- 入力欄やスクリプト実行ならXSS
- 人の心理や不注意を直接利用するならソーシャルエンジニアリング
- 検索上位だから安全とは限らない
- 「何が悪用されたか」で選択肢を切る

> **検索結果ならSEO、DNSなら名前解決、入力欄ならXSS、人ならソーシャルエンジニアリング。**
