WAFとは?!セキュリティ対策の仕組みをわかりやすく解説
目次
WAFはWEBアプリケーションを不正アクセスから守り、データ流出を起こさないために効果的な対策です。
しかし、十分に活用するには、そもそもWAFとは何かを知っておく必要があります。
この記事では、WAFとは何か、どのような仕組みでWEBアプリケーションを守るのかなどを分かりやすく解説します。
WAF導入を検討されている方には知っておくと役立つ内容ですので、是非ご覧ください。
WAFとは?
WAFとは、「Web Application Firewall」の略です。Webアプリケーションの脆弱性を悪用した攻撃からWebサイトを保護する対策のひとつです。
インターネットバンキングやゲーム、ECサイトなどのWEBアプリケーションでは、パスワードや個人情報、クレジットカード情報など、大切な情報がやり取りされています。
世界中からアクセスできるWEBアプリケーション上の情報は、不正アクセスを受けるリスクが高まります。
実際に多くの有名企業でも、不正アクセスによる情報漏洩の被害が出ているのはご存じの通りです。
従来のファイアウォールでは、IPアドレスとポート番号により悪意のある通信を遮断していましたが、WEBアプリケーションへの攻撃までは防ぐことができませんでした。
WAFは「シグネチャ」と呼ばれる、不正な通信や攻撃パターンを識別するためのルールを設定することでWebアプリケーションにおける通信の中身をチェックし、不正な通信や通過させたくない通信を遮断できます。
WAFの仕組み
WAFは蓄積されたアクセスパターンをルール化した「シグネチャ」に基づいて、そのアクセスを遮断するか通過させるかを決定します。
シグネチャには不正なアクセスのパターンを定義する「ブラックリスト」と、安全なアクセスのパターンを定義する「ホワイトリスト」の2種類があります。
「ブラックリスト」は、不正なアクセスパターンがシグネチャとマッチングすることで脅威を検出します。多くのWAFで採用されていて一般的なのはこの「ブラックリスト」方式です。
ただし、シグネチャに設定されているのはすでに知られた攻撃パターンです。そのため新たなパターンの攻撃を受けた場合は防ぐことが難しいのがデメリットといえます。
「ブラックリスト」方式では日々生まれてくる脅威に対応できるよう、シグネチャを更新し続ける必要があります。
対して「ホワイトリスト」は、アクセス許可する通信をシグネチャに設定し、それ以外の通信は通過できない仕組みになっています。必要最低限のアクセスしか通過させないため、不正なアクセスを受ける心配がより少なくなります。
ただし、正常な通信でもシグネチャとマッチしなければ遮断されてしまう場合もあるのがデメリットです。
WAFはどんな攻撃に対応できる?
WAFはシグネチャを用いて通信を監視することで、次のような攻撃に対応することができます。
- SQLインジェクション
- パスワードリスト攻撃
- XXS(クロスサイトスクリプティング)攻撃
SQLインジェクション
Webアプリケーションの脆弱性の中で最も危険度が高いとされるのが、SQLインジェクションです。
SQLデータベースに不正アクセスを受け、データ流出したという事例は多くあります。
従来のファイアウォールだけでは防げなかった、SQLデータベースを狙った悪意のあるアクセスを、WAFにより判別して遮断することが可能になります。
パスワードリスト攻撃
パスワードリスト攻撃とは、悪意のある攻撃者が何らかの方法で入手したIDやパスワードのリストを用いて、実際のユーザのアカウントにログインしてしまう攻撃手法です。
ユーザ側がIDやパスワードの使いまわしをしないのが一番の対策なのですが、使いまわしをするユーザは依然として多いのが現状です。
WAFを導入すれば同じIPアドレスから同じ処理が行われている通信を監視し、不正なログインを試みている通信を判別できます。
XXS(クロスサイトスクリプティング)攻撃
掲示板サイトなどWEBアプリケーションへの訪問者が、リンクをクリックしてスクリプトを実行すると、別のWebサイト(クロスサイト)に遷移して悪意のあるスクリプトが実行されます。
その結果、個人情報など重要な情報の流出につながるのがXXS(クロスサイトスクリプティング)攻撃です。
WAFによって保護されたWEBアプリケーションであれば、ユーザが送信するリクエストの内容を監視することで被害を防ぐことができます。
ここまでWAFにより防ぐことができる攻撃を3つご紹介しましたが、WAFがあればすべての攻撃を防げるというわけではありません。
WAFはファイアウォールやIPS(不正侵入防止システム)と合わせて用いることでよりセキュリティを強固なものにすることが可能です。WEBアプリケーションの脆弱性を監視、対処することも重要です。
WAFの種類
WAFには次の3種類があり、それぞれにメリットとデメリットがあります。
- アプライアンス型
- ソフトウェア型
- クラウド型
アプライアンス型
アプライアンスとは、特定の機能や目的に特化した機器のことです。
WAF専用の機器を、データセンターなどで外部ネットワークとWebサーバの間に設置して使用します。WAF専用の機器は一般的に高価で、専用の知識を持つエンジニアが運用する必要があるためコストがかかります。
WAF機器一台で複数のサーバに対応できるのはメリットですが、多数のWEBサーバを抱える環境でなければ、コストパフォーマンスが悪いと言えるでしょう。
ソフトウェア型
ソフトウェア型のWAFはホスト型とも呼ばれます。
WEBサーバにインストールして使用します。以前はサーバへの負荷がかかることがデメリットとされていましたが、ハードウェアの性能アップにより、現在では影響は少なくなってきています。シンプルな構成のため、どのようなネットワーク構成にも導入できます。そのため短期間での導入が可能です。
アプライアンス型に比べて導入コストが抑えられることもメリットです。
クラウド型
WAFをサービスとして提供するベンダーと契約して導入するのがクラウド型です。
シグネチャ更新などの運用管理はサービス側で行われるため、ユーザ側にセキュリティに詳しい担当者がいなくても導入可能であることが大きなメリットです。
また月単位で契約できるサービスもあるため、短期間のみ運用するWEBアプリケーションへの導入にも向いています。
この記事を書いた人
MPH WEBコンサルティング事業部
専門分野:WEBコンサルティング,WEB広告,SEO,DX,MA
様々な企業・事業者のWEBマーケティングを支援してきたMPHのWEBコンサルティング事業部が、経営に役立つIT・WEBに関するノウハウや最新情報を発信しています。