ステートフルパケットインスペクション

読み:すてーとふるぱけっといんすぺくしょん / 英語表記:Stateful Packet Inspection

ファイアウォールが、通信の状態(セッション)を記録しておき、許可した通信に対する応答のパケットを自動的に通過させる方式。応答の向きの許可ルールを個別に書かなくてよい。

イマシルちゃんの解説

ファイアウォールが、通るパケットを1つずつ見て、「通っていい?」を判断するとするね。

社内から外のサイトに行く通信を許可したら、サイトからの返事も通してあげないと、通信にならないよね。
ステートフルパケットインスペクションは、「さっき社内から出ていった通信の返事だな」って覚えておいて、
その返事だけを自動で通してくれるんだ。
関係ない外からの通信は通さないから、安全なんだよ!

より深い解説

定義

ステートフルパケットインスペクション(SPI)は、通過する通信のセッション(送信元・宛先のIPアドレスとポート番号、プロトコル、TCPの状態など)を状態表に記録し、その状態に照らして、パケットを通すかどうかを判断するファイアウォールの方式である。

静的パケットフィルタリングとの違い

静的パケットフィルタリングステートフルパケットインスペクション
判断の材料パケット1つ1つのヘッダー(アドレス、ポート番号)パケットのヘッダー+通信の状態
応答の通信応答の向きのルールも明示的に書く必要がある許可した通信の応答は、自動的に通す
応答を装った攻撃応答に見せかけたパケット(ACKの付いたパケットなど)を通してしまうことがある記録にない応答は通さない
ルールの数多くなる少なくて済む

許可ルールの読み方

ステートフルパケットインスペクションを持つファイアウォールの許可ルールは、通信を始める向き(最初のパケットを送る側から、受ける側への向き)だけを書けばよい。

項番送信元宛先プロトコル/宛先ポート番号意味
1内部セグメントプロキシサーバTCP/8080PCからプロキシへの接続(応答は自動で通る)
2プロキシサーバインターネットTCP/80、TCP/443プロキシからWebサイトへの接続
3DMZのサーバsyslogサーバUDP/514DMZの機器からのログの送信

宛先のポート番号は、通信を受ける側(サーバ)のポート番号である。送信元のポート番号は、クライアントが一時的に選ぶため、通常は指定しない。

UDPの扱い

UDPには接続の開始と終了がないが、ステートフルのファイアウォールは、送信元・宛先の組を記録し、一定時間内に返ってきた逆向きのパケットを応答として通す。DNSやNTPの問い合わせと応答などが、これに当たる。

午後での問われ方

ファイアウォールの許可ルールの表を穴埋めさせる問題がよく出る。「どの機器から、どの機器へ、どのプロトコルとポート番号で、通信を始めるか」を、本文の構成から読み取ることが鍵になる。また、機能を停止したサーバのために設定していたルールを、どれと特定して削除するか、新しいサービスを使うために、どのルールを追加するかも問われる。

実際の試験ではここに出る!

この用語が出てくる記事

↑