WAFの仕組みは?ファイアウォールとIPS/IDSとの違い

 2017.04.21 Secure Enterpriseポータル

外部ネットワークから内部への侵入を防ぐ手段はいくつか存在します。恐らく最もイメージされるのがファイアウォールを導入し、通信を制御するという対策ではないでしょうか。この考えは半分正解であり、半分不正解でもあります。

サイバー攻撃により内部ネットワークへ侵入する場合いくつかの経路がありますが、ファイアウォールではその全てに対応することはできないのです。

ことWebサイト経由でのサイバー攻撃を想定した場合、ファイアウォールでもIPS/IDS(不正侵入防御/検知システム)でも不十分であり、WAF(ウェブアプリケーションファイアウォール)を導入する必要があります。

今回は、Webサイトを保護するにはなぜWAFでなくてはならないのかを、各セキュリティ製品の違いを整理しつつ紹介していきます。

 ファイアウォール、IPS/IDS、WAFの違い

ファイアウォール

ファイアウォールの基本は外部ネットワークから内部ネットワークへのアクセスに制限をかけ、外部からの侵入を防ぐというものです。ネットワーク上に専用ハードウェアを設置するような製品もあれば、ルータなどのネットワーク機器自体がファイアウォール機能を有している製品もあります。

また、内部から外部への通信のみを許可しセキュリティ性を維持するのがファイアウォールですが、外部から社内ファイルへアクセスしたかったり、Webサーバなど外部向けサービスを提供している場合全てのポートを制御することは不可能です。

従ってそこに脆弱性が発生し、外部からの不正アクセスを許してしまうリスクが生じます。

IPS/IDS

IPS/IDSは外部からの侵入を検知及び防御するための製品であり、ファイアウォールのj補助として導入することの多い製品です。ファイアウォールは前述のように、全てのポートを閉じて外部からの侵入を防ぐことはできません。

従ってIPS/IDSを導入することで、開いているポートへの不正アクセスを検知し、防御することが可能となります。

しかし、IPS/IDSはSQLインジェクションやクロスサイトスクリプティングなど、難読化されているサイバー攻撃の検知には不向きです。このためWebサイト経由で実行されるサイバー攻撃の半数程度を検知できないという特徴があります。

WAF

WAFはWebサイトとWebアプリケーションの間に介在し、クライアントからのHTTP/HTTPS通信を監視することで、不正通信を検知し遮断します。

WAFの基本はシグネチャ(複数の攻撃パターンを定義したファイル)に基づくパターンマッチングです。セキュリティベンダーが提供するシグネチャをもとに、それに該当する不正通信を検知することができます。

ファイアウォールやIPS/IDSとの決定的な違いは防御するレイヤーにあります。主にトランスポート層やセッション層を保護する2製品に対して、WAFはアプリケーション層に対して実行されるサイバー攻撃からシステムを保護します。

つまりSQLインジェクションやクロスサイトスクリプティングといった、Webアプリケーションが抱えやすい脆弱性を狙った攻撃からWebサイトを守ることができるのです。

WAFで検知可能なサイバー攻撃の種類

Webサイト経由でのサイバー攻撃を確実に防御するためには、ファイアウォールでもIPS/IDSでもなくやはりWAFの導入が必須です。では具体的にどのようなサイバー攻撃が検知可能なのか?ここでWAFで検知できる主要なサイバー攻撃について紹介します。

SQLインジェクション

Webアプリケーションとデータベースが連携している場合、クライアントからのリクエストをSQL文に変換してデータベースを操作します。この時、Webアプリケーションに脆弱性があると入力フォームなどに不正SQL文を挿入され、外部からデータベースを操作されてしまう可能性があります。

これによりデータベース内のデータを直接的に参照されてしまったり、データを搾取されてしまう可能性があるのです。

OSコマンドインジェクション

SQLインジェクション同様に、WebサーバのOSが持つ脆弱性を利用するサイバー攻撃です。入力フォームに不正OSコマンドを入力することで、Webサーバを遠隔操作したり、ファイル改ざんといった様々な被害をもたらすことができます。

SQLインジェクションに続いて脆弱性発生率が高いため注意が必要です。

クロスサイトスクリプティング

検索エンジンや入力フォームなどが設置されており、ユーザーが入力したデータによって動的にWebページを生成するようなWebサイトに実行されます。攻撃者は該当ページに不正スクリプトを埋め込むことで、ユーザーがそのWebページのリンクを踏んだ際に不正スクリプトが実行されます。

これにより偽装ページへとユーザーを誘導したり、セッションハイジャックへと繋げる攻撃を仕掛けることが可能です。

Dos攻撃

Dos攻撃は攻撃者が保有する、あるいはマルウェアに感染させたコンピュータを利用し、特定のWebサイトに対して大量のトラフィックを発生させるサイバー攻撃です。攻撃を実行されたWebサイトはサービス停止に追い込まるなどの被害があり、政治的な理由から実行されることの多いサイバー攻撃でもあります。

また、さらに大量のコンピュータから仕掛ける攻撃とDDoS攻撃と言います。

Synフラッド攻撃

クライアントからSYNパケットを送信され、Webサーバがそれに返答を行うと、さらにクライアントから返答が来るまでの間Webサーバは一定時間メモリ領域を確保します。この際にクライアントがWebサーバからの返答を無視すると、Webサーバは来るはずのない返答を待つことになり、その分リソースが減少しています。

こうした攻撃を大量に仕掛けることで、一般ユーザーからのリクエストを処理できないほどサーバリソースを枯渇させ、Webサイトをサービス停止に追い込みます。

バッファオーバーフロー

そもそもバッファとはメモリ上に確保する領域のことであり、プログラムごとにこのバッファの上限が定まっています。しかし、プログラムを実行するCPUはバッファの上限を知らないため、命令を実行するのみです。

この時、バッファの上限を超えるようなデータ処理を要求された場合、データはバッファから溢れて(オーバーフロー)しまします。

バッファから溢れたデータはその他のプログラムに影響を及ぼし、不正にコマンドを実行したり管理者の意図しない動作を引き起こすことが可能です。

ここで紹介したサイバー攻撃に以外にも、Webサイトを対象とした攻撃は多数存在します。それらのサイバー攻撃に対応し、Webサイトを外部の脅威から保護するにはやはりWAFでなくてはなりません。

実際、WAFで検知できるサイバー攻撃のうち、IPS/IDSでは半数以上も検知できなかったという報告もあります。

まとめ

Webサイト保護のためにWAFが必要なのは間違いありませんが、WAFの重要性をまだ感じていないがために導入していない企業も多く存在します。こうした企業の場合、Webサイト経由のサイバー攻撃で被害に遭ってから、WAF導入を検討するというケースが少なくありません。

本稿を読まれている企業の方々には、被害に遭ってからWAFを検討するのではなく、今この時からWebサイト保護のためのWAFを検討していただきたいと思います。