【すてーとふるいんすぺくしょん】

ステートフルインスペクション とは?

💡 会話の流れを覚えているから、怪しい割り込みを見逃さない門番
📌 このページのポイント
ステートフルインスペクション vs パケットフィルタリング パケットフィルタリング パケットA パケットB パケットC IP/ポートのみ チェック IP/ポートのみ チェック IP/ポートのみ チェック 個別に判断(流れを見ない) ステートフルインスペクション SYN 接続要求 SYN-ACK 応答 ACK 確立 状態テーブル SYN ✓ SYN-ACK ✓ ACK ✓ ESTABLISHED 流れを追跡して判断
ステートフルインスペクションとパケットフィルタリングの比較
ひよこ ひよこ

ステートフルインスペクションって何なの?普通のファイアウォールと違うの?

ペンギン先生 ペンギン先生

普通のパケットフィルタリングは、届いたパケットの「送信元」「宛先」「ポート番号」だけを見て通すか止めるか決めるんだ。でもステートフルインスペクションは、過去の通信の流れまで覚えているんだよ。

ひよこ ひよこ

流れを覚えてるってどういうことなの?

ペンギン先生 ペンギン先生

たとえば、レストランの受付をイメージしてみて。普通のフィルタリングは「予約名簿に名前があるか」だけ確認する。ステートフルインスペクションは「この人はさっき入店して、今は食事中で、次はお会計のはず」という流れまで把握しているんだよ。だから突然「お会計します」って入ってきた知らない人を怪しいと判断できるんだ。

ひよこ ひよこ

なるほど!具体的にはどんな情報を覚えているの?

ペンギン先生 ペンギン先生

TCP通信なら、3ウェイハンドシェイクの状態を追跡するよ。SYN→SYN-ACK→ACKという正しい手順で接続が始まったか、今はデータ転送中か、切断処理中かといった状態をテーブルに記録しているんだ。

ひよこ ひよこ

じゃあ、正しい手順を踏んでいない通信はブロックできるんだね!

ペンギン先生 ペンギン先生

そのとおり。たとえばいきなりACKパケットだけ送りつけてくるような攻撃は、「この接続のSYNを受けていないぞ」と判断して弾けるんだよ。これはパケット単体を見るだけでは分からないことだね。

ひよこ ひよこ

すごく賢いけど、処理が重くなったりしないの?

ペンギン先生 ペンギン先生

状態テーブルを維持する分、メモリは消費するよ。大量の同時接続があるとテーブルが膨らむから、DDoS攻撃で意図的にテーブルを溢れさせる「ステートテーブル枯渇攻撃」という手法もあるんだ。だから現代のファイアウォールはテーブルサイズの上限やタイムアウト設定が重要になるよ。

ひよこ ひよこ

弱点もあるんだね…。今はもっと進化した技術もあるの?

ペンギン先生 ペンギン先生

次世代ファイアウォールはステートフルインスペクションをベースに、アプリケーション層まで検査する「ディープパケットインスペクション」や侵入防止システム(IPS)を組み合わせているよ。ステートフルインスペクションは今でもファイアウォールの土台として欠かせない技術だね。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ステートフルインスペクション」って出てきたら「通信の流れを記憶して検査するファイアウォール技術」と思えばだいたいOK!
📖 おまけ:英語の意味
「Stateful Packet Inspection」 = 状態を保持するパケット検査
💬 「Stateful(状態を持つ)」+「Inspection(検査)」。通信の文脈を覚えておいて判断するから「ステートフル」なんだよ
← 用語集にもどる