---
title: "ステートフルインスペクションとは？パケットフィルタリングとの違い【SG試験】"
description: "ステートフルインスペクションは、通信セッションの状態を記録し、通信の流れに合うパケットだけを通すファイアウォール方式です。パケットフィルタリング、WAF、アプリケーションゲートウェイとの違いと、戻り通信を許可できる理由をSG試験向けに整理します。"
last_modified_at: "2026-07-14"
canonical_url: "https://stemtazoo.github.io/sg/stateful-inspection/"
section: "sg"
---

## まず結論

ステートフルインスペクションとは、**ファイアウォールが通信セッションの状態を記録し、その状態に合うパケットだけを通過させる方式**です。

SG試験では、パケット単体を見るパケットフィルタリング方式と、通信の流れを見るステートフルインスペクション方式を切り分けます。

| 方式 | 見るもの | 判断のポイント |
|---|---|---|
| パケットフィルタリング方式 | IPアドレス、ポート番号、プロトコル | パケット単体を見る |
| ステートフルインスペクション方式 | 通信セッションの状態 | 通信の流れ・戻り通信を見る |
| WAF | HTTPリクエストなどの内容 | Webアプリへの攻撃を見る |

迷ったら、**「パケット単体を見る話か、通信の流れを見る話か」**を確認します。

---

## 直感的な説明

ステートフルインスペクションは、**入退場の流れを覚えている受付**のようなものです。

たとえば、社内PCから外部のWebサイトへアクセスしたとします。

1. 社内PCからWebサーバへ通信を開始する
2. ファイアウォールが「この通信は社内PCから始まった」と記録する
3. Webサーバから返答が戻ってくる
4. 記録と合っていれば、正しい戻り通信として通す

外部から内部へ向かうパケットでも、社内PCが始めた通信への返事であれば、通信の流れとして自然です。

単純なパケットフィルタリング方式は、パケットごとにIPアドレスやポート番号などの条件を見ます。

一方、ステートフルインスペクション方式は、**パケット単体ではなく、通信のつながり**も見ます。

---

## 定義・仕組み

ステートフルインスペクション方式は、ファイアウォールが通信の状態を管理する方式です。

ファイアウォールは、通信ごとの情報を**ステートテーブル（状態テーブル）**に一時的に記録します。

| 記録する情報 | 内容 |
|---|---|
| 送信元IPアドレス | 通信を始めた端末 |
| 宛先IPアドレス | 通信先のサーバ |
| 送信元ポート番号 | 送信側のポート番号 |
| 宛先ポート番号 | サービスのポート番号 |
| プロトコル | TCP、UDPなど |
| 通信の向き | 内部から外部、外部から内部など |
| セッション状態 | 通信開始中、確立済みなど |

戻ってきたパケットがこの記録と合っていれば、ファイアウォールは「正しい通信の続き」と判断して通します。

つまり、1個のパケットだけではなく、**前後の流れを踏まえて通過可否を判断する**仕組みです。

参考として、NISTのファイアウォールに関する文書でも、パケットフィルタリング、ステートフルインスペクション、アプリケーションプロキシゲートウェイなどの技術が整理されています。

[NIST SP 800-41 Rev.1 Guidelines on Firewalls and Firewall Policy](https://csrc.nist.gov/pubs/sp/800/41/r1/final)

### ファイアウォール方式の切り分け

| 方式 | 見ているもの | 試験での判断基準 |
|---|---|---|
| パケットフィルタリング方式 | IPアドレス、ポート番号、プロトコル | パケット単体の条件で判断する |
| ステートフルインスペクション方式 | 通信セッションの状態 | 通信の流れ・状態を見る |
| アプリケーションゲートウェイ方式 | アプリケーションプロトコルの内容 | プロキシとして中継し、内容を検査する |
| サーキットレベルゲートウェイ方式 | コネクションの確立 | 接続の成立を見て制御する |
| WAF | Webアプリケーションへの通信内容 | Webアプリへの攻撃を防ぐ |
| 次世代ファイアウォール（NGFW） | アプリケーション、利用者、脅威情報など | 従来型FWより細かく制御する |
| UTM | 複数のセキュリティ機能 | FW、ウイルス対策、IPSなどをまとめる |

選択肢では、**何を見て判断しているか**に注目します。

---

## どんな場面で使う？

ステートフルインスペクション方式は、社内ネットワークとインターネットの境界などで使われます。

### 内部から開始した通信の戻りを許可する

社内PCから外部Webサイトへアクセスした場合、その返事は外部から内部へ戻ってきます。

ステートテーブルに記録があれば、正しい戻り通信として許可できます。

### 外部から突然始まる通信を遮断する

外部から社内PCへ突然パケットが届いても、対応する通信記録がなければ、正しい通信の続きではないと判断しやすくなります。

### 戻り通信用のルールを管理しやすくする

パケットフィルタリング方式だけで戻り通信を管理すると、許可ルールが複雑になりやすくなります。

ステートフルインスペクション方式では、通信状態に合う戻り通信だけを通しやすいため、必要以上に広い範囲を開けずに済みます。

ただし、万能ではありません。

SQLインジェクションやクロスサイトスクリプティングのように、HTTP通信の中身を詳しく見る必要がある攻撃には、WAFなど別の対策が必要です。

---

## よくある誤解・混同

### 誤解1：パケットフィルタリング方式と同じである

どちらもパケットを通すか止めるか判断しますが、見る範囲が違います。

| 比較項目 | パケットフィルタリング | ステートフルインスペクション |
|---|---|---|
| 見る情報 | ヘッダー情報中心 | ヘッダー情報＋通信状態 |
| 判断方法 | ルールに一致するか | 通信の流れとして自然か |
| 戻り通信 | 個別ルールが必要になりやすい | 状態テーブルから判断しやすい |
| キーワード | IPアドレス、ポート番号 | セッション、状態、戻り通信 |

### 誤解2：通信内容の本文まで詳しく検査する

ステートフルインスペクションは、通信状態を見ますが、HTTPリクエストの本文などを深く解析する仕組みではありません。

- Webアプリへの不正な入力を検査する → WAF
- アプリケーションごとにプロキシを用意する → アプリケーションゲートウェイ方式
- 通信状態を見る → ステートフルインスペクション方式

### 誤解3：通信を暗号化する仕組みである

ステートフルインスペクションの役割は、通信の通過可否を判断することです。

通信を暗号化する代表例は、TLSやVPNです。

### 誤解4：不正な通信を必ず防げる

通信の流れが正しく見える攻撃や、許可された通信の中に含まれる不正な内容までは、十分に検出できないことがあります。

必要に応じて、IDS、IPS、WAF、ログ監視などと組み合わせます。

### SG試験での判断軸

- **パケット単体**を見る → パケットフィルタリング方式
- **通信の状態・流れ**を見る → ステートフルインスペクション方式
- **アプリケーションごとのプロキシ** → アプリケーションゲートウェイ方式
- **コネクションの確立**を見る → サーキットレベルゲートウェイ方式
- **Webアプリへの攻撃**を見る → WAF

---

## 確認問題（SG試験対策）

ステートフルインスペクション方式の説明として、最も適切なものはどれか。

- ア. IPアドレスやポート番号だけを見て、パケット単体で通過可否を判断する。
- イ. 通信セッションの状態を記録し、その状態に合う戻り通信などを許可する。
- ウ. HTTPリクエストのパラメータを詳しく検査し、SQLインジェクションを防ぐ。
- エ. 利用者の認証情報を一元管理し、シングルサインオンを実現する。

<details markdown="1">
<summary>▶ クリックして答えと解説を見る（ここを開く）</summary>

**正解：イ**

- ア：パケットフィルタリング方式の説明です。
- イ：適切です。通信セッションの状態を記録し、その状態に合うパケットを通します。
- ウ：WAFの説明に近いです。
- エ：認証基盤やシングルサインオンの説明です。

判断ポイントは、**「通信セッションの状態」「戻り通信」**です。

</details>

---

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

- ステートフルインスペクションは、**通信セッションの状態を管理するファイアウォール方式**
- パケット単体ではなく、通信の流れや戻り通信を見る
- パケットフィルタリングは、IPアドレスやポート番号などの条件を中心に見る
- HTTPリクエストの中身を詳しく見るのはWAF
- 通信を暗号化する仕組みではない
- SG試験では、**「状態を管理する」「セッションを追跡する」「戻り通信を許可する」**で判断する
