ステートフルインスペクション方式のFW
はじめに
2025年10月のプロジェクトマネージャ試験受験を終え、2026年春の情報処理安全確保支援士に向けて勉強中です。
本記事を含めた各知識のインデックスや学習の道のりについては、「情報処理安全確保支援士への道のり(随時更新中)」をご参照ください。
本記事は学習した内容を記載しています。
該当問題
ステートフルインスペクション方式のFW
通信状態を保持し、その情報に基づいてパケットを許可/拒否するFWです。
つまり、送られてきたパケットを見るだけではなく、その通信が確立しているかを理解する方式がステートフルインスペクション方式です。
なぜ状態(ステート)を持つ必要があるのか
状態テーブルの仕組み
FWは状態テーブルに記録する際は、下記情報を登録します。
- 送信元IP
- 宛先IP
- 送信元ポート
- 宛先ポート
- プロトコル(TCP/UDP)
- TCPフラグ(SYN/ACK/FINなど)
- セッション開始時刻
- セッションの状態(ESTABLISHEDなど)
- NAT の変換情報
- タイムアウト値
TCPにおけるステート管理
ステートフルインスペクション方式のFWは、状態遷移を持つTCPが正しいハンドシェイクを行っているかを監視し、不自然なパケットをブロックできます。
これは、パケットフィルタFWにはない強力な機能です。
追跡する情報は下記の通りです。
- SYN
- SYN/ACK
- ACK
- ESTABLISHED
- FIN
- FIN/ACK
- TIME_WAIT
UDPにおけるステート管理
UDPは接続確立という概念がなく、TCPのように状態を持つことはしません。
そのため、ステートフルFWは以下のように疑似セッションを作ります。
ステートフルFWが防げる攻撃
- 外部からの不正な新規接続
- SYN Flood(半開状態監視)
- ポートスキャン(不正なSYNパケットを拒否)
- IPスプーフィング(戻りパケットの整合性チェック)
- 不正な TCPフラグ攻撃(FIN/Xmas Scan)
パケットフィルタ方式との違い
| 項目 | パケットフィルタ FW(Stateless) | ステートフル FW |
|---|---|---|
| 参照する情報 | IP / ポート / フラグ | IP / ポート / フラグ +通信状態 |
| 応答パケットの扱い | 明示的ルールが必要 | 自動で許可される |
| TCP状態の理解 | なし | あり(SYN/ACK/FIN など分析) |
| セキュリティ | 低〜中 | 高 |
| 性能 | 速い | やや重い |
NATとStatefulFirewallの連携
多くのFWはNATも同時に行います。
つまり、状態テーブルには「通信状態 + アドレス変換情報」が保存されています。
さらに高機能なファイアウォール
- アプリケーションゲートウェイ(プロキシ型)
- HTTP/SMTPなどアプリケーション層を解析
- ウイルススキャンやURLフィルタが可能
- 次世代ファイアウォール(NGFW)
- アプリ識別(App-ID)
- ユーザ単位の制御(User-ID)
- IPS機能
- SSL/TLS復号(SSLインスペクション)
- UTM
- FW
- IPS
- アンチウイルス
- SPAM対策