進化するファイアウォール
初期のファイアウォールは、先述の通りTCP/IPパケットのヘッダ部分の情報だけをキーにして、パケットの取捨選択を行なっていた。しかし、攻撃側のテクニックも日進月歩で巧妙になり、ファイアウォール側もパケットをより細かく解析する必要に迫られた。その結果、現在のファイアウォールには「ステートフルパケットインスペクション機能(SPI)」や「不正アクセス検知機能」などが実装されるようになった。
SPI
SPIは、パケットフィルタ機能に加えアプリケーション層の通信制御までを行なう。ネットワークの通信状況を細かく監視し、その場面に応じた通信が適切に行われているかをチェックするものだ。
図2の例は、FTPの通信開始時のパケットの検査手順を示している。クライアントがサーバの21番ポートへ接続要求を出すと、ファイアウォールは「サーバの20番ポートからコネクション要求が戻ってくる」ことを予測し、予測通りのパケットが来れば通過させる。つまり、通信の状態を把握することで、コネクションの文脈上ありえないようなパケットを破棄できる。
不正アクセス検知
Webサーバなど外部向けのサーバをファイアウォールの内側に設置する場合、SPIを適用することができず、パケットフィルタだけでサーバを保護している状態になる。この場合、Ping of DeathやIPスプーフィングといった「明らかに不正な外部からの攻撃」だが「ファイアウォールのポリシーには合致している」パケットを通過させてしまう。このため、既知の侵入/攻撃パターンと一致するパケットを遮断する「不正アクセス検知」機能が考案された。この機能を実装したファイアウォールは、不正アクセスのパターンデータベースを持ち、パケットと照合して遮断する。そのため、新たに考案された不正アクセス手法に対しては無力で、パターンデータベースをひんぱんに更新する必要がある。
まとめ
ファイアウォールは、基本的に通信をパケット単位で監視して制御する。そのため、多数のパケットに分割されて送られてくる、ウイルスやスパイウェアなどには対処できない。分割される前のウイルスがいかに危険であったとしても、細かく分割された状態では危険性を検知できないのである。同じ理屈で、スパムメールやフィッシングサイトへのアクセスを止めることもできない。
これらの攻撃へ対処するには、それぞれのアプリケーション用のゲートウェイを設置する手法が用いられる。最近では、これらのゲートウェイをファイアウォールに統合したUTM(Unified Threat Management:統合脅威対策装置)が脚光を浴びている。
この連載の記事
-
第11回
TECH
今どきのウイルスに対抗する方法を教えてください -
第10回
TECH
ユーザー認証でなにができるのですか? -
第10回
TECH
指紋や顔型でユーザー認証をする理由とは? -
第9回
TECH
電子証明書がなぜ必要か知っていますか? -
第7回
TECH
共通鍵暗号のメリットってなに? -
第6回
TECH
IP電話にはどのような危険がありますか? -
第5回
TECH
無線LANって本当に安全なの? -
第4回
TECH
SQLインジェクションやXSSって何されるの? -
第3回
TECH
Winnyは使ってはいけないのですか? -
第2回
TECH
不審なメールはなぜ開いてはいけない? - この連載の一覧へ