WAFとは? 仕組み・種類・他のセキュリティとの違いをわかりやすく解説
情報セキュリティ対策の一つに「WAF」があります。WAFとは、Webアプリケーションの脆弱性を守るセキュリティ対策です。
この記事では、WAFの仕組みやWAF以外のセキュリティ対策、具体的なWAFの種類、注意点などを解説します。
特に自社のセキュリティ対策を検討している人は深く学べる内容ですので、ぜひ最後までご覧ください。
WAFとは
WAF(Web Application Firewall)は、Webアプリケーションに対する悪意あるサイバー攻撃を防ぐために開発された防御ツールです。
一般的なファイアウォールとは異なり、WAFはWebアプリケーションの脆弱性を悪用する攻撃を対象にしているのが特徴です。
例えば、GmailやSkypeなどをWAFで保護すると、悪意のあるアクセスを遮断できます。
企業におけるWAFの必要性
Webアプリケーションを多用する現代の企業にとって、Webアプリケーションの脆弱性を狙ったサイバー攻撃の増加は大きな懸念点となります。自社サービスの提供停止や顧客情報流出などにより、会社の信用度が欠如するリスクがあるためです。
このような状況下において、WAFはWebアプリケーションの安全性を高めたい企業に役立ちます。サーバやwebアプリケーションの安全性を高めることと同時に、それだけでは防ぐことのできない脅威を多段的に防御する仕組みとなります。
さらに、攻撃によって被害を受けた場合でも緊急対応が可能となり、Webサイトの迅速な復旧に役立ちます。
WAFの導入を検討すべき企業とは?
Webアプリケーションを利用してビジネスを展開している企業は、WAFの導入を検討すべきでしょう。大切な情報を保存するWebアプリケーションは、サイバー攻撃の対象になりやすいためです。
大規模なBtoCを行わないBtoBや、限られたメンバーだけのWebアプリケーションであってもwebサイトで公開するのであればWAFを検討したほうが良いでしょう。脆弱なサーバは第三者による踏み台に使われる可能性があります。
WAFとその他のセキュリティ対策との違い
WAFとその他のセキュリティ対策との違いをまとめました。
ファイアウォール
ファイアウォールは、主に内部ネットワークの入り口で外部からの攻撃を防ぐ役割があります。しかし、ファイアウォールで守れる範囲には限界があります。従来は不正な通信はIPアドレスやポートなど、通信のレイヤーの中でも下位レベルのなかで行われていました。
これらの古くからある攻撃方法は現在も存在していますが、コンピュータシステムが発達し、現在では特殊なソフトウェアを導入することなく、ブラウザソフトだけでさまざまなことが行えるようになりました。
一方、攻撃者側もアプリケーションと同じ通信レイヤーを悪用して攻撃する手法も発達し、従来型の保護機能だけでは対処できなくなってきています。
WAFはシステムの脆弱性を狙った攻撃や、ユーザーが複数のサイトで使用しているIDやパスワードを悪用した不正アクセスに対応しています。
また、防御できる攻撃の種類にも違いがあります。WAFは、SQLインジェクションやクロスサイトスクリプティングを検知できますが、ファイアウォールは検知できません。
- SQLインジェクション:Webアプリケーションにおけるセキュリティの不備を悪用
- クロスサイトスクリプティング:脆弱性のあるWebサイトの利用者に対し、悪質ななスクリプトを読み込ませる
IPS/IDS
IPS/IDSとWAFは監視対象や目的、守備範囲が異なります。まず、IDS(Intrusion Detection System)は不正アクセスを検知するシステムであり、ネットワークのトラフィックを監視し、異常や攻撃を検出します。
しかし、IDSは検知のみで実際の防御機能はありません。
一方、IPS(Intrusion Prevention System)はIDSと同様の検出機能を持ちながら、実際に防御する能力があります。不正アクセスや攻撃が検出された場合、IPSは遮断や遅延させることでシステムを保護します。
IPS/IDSどちらを活用するかは、利用するシステムが受けるリスクの程度や運用コスト、保護する側のサービスの適合状況などを総合的に判断して決定します。
それに対してWAFは、Webアプリケーションの脆弱性を標的にした攻撃を検知し、遮断することが目的のセキュリティ対策です。
WAFの仕組みは2つに分類される
WAFでは攻撃の検知に「シグネチャ」を用いており、シグネチャの定義の方法には、ブラックリスト型とホワイトリスト型があります。それぞれ詳しく見ていきましょう。
1.ブラックリスト型
シグネチャとは、マルウェアの帰属を特定・判別するために用いられるデータです。マルウェアとは、プログラム可能なデバイスやネットワークへの悪用が目的のソフトウェア名です。
基本的な破壊活動(データ改ざんや盗聴など)をベースにしたマルウェアは、「ほとんどが過去に存在したものから内容を改変した「亜種」をほぼ毎日大量に生産しています。
ブラックリスト型のWAFでは、既知の攻撃パターンをシグネチャとして定義し、これらに一致する通信を拒否します。複数のWebアプリケーションに対して適用が可能である点がメリットです。しかし、ブラックリスト型は未知の攻撃に対応できないデメリットがあります。
2.ホワイトリスト型
ホワイトリスト型のWAFでは、許可された通信をシグネチャに登録し、登録されたシグネチャと一致しない通信をブロックする方式です。未知の攻撃に対応できることが大きなメリットです。
また、特に機密性の高い情報を扱うwebアプリケーションでは、許可する通信を厳格に決めることで、セキュリティを高められます。
しかし、Webアプリケーションごとに許可する通信を、細かく定義する必要があり、管理が煩雑になりがちです。webアプリケーションの場合は、OSやミドルウェアなどのセキュリティアップデートにより挙動が変わる可能性があるでしょう。
適切な設定と継続的なメンテナンスが重要になります。許可された通信の定義が不十分だと、正当な通信がブロックされる場合や、通信の定義が緩いとホワイトリストを通り抜けて不正な攻撃を受けてしまう可能性があります。
WAFが対応できる攻撃の種類
WAFが対応できる攻撃の種類をまとめました。
SQLインジェクション
SQLインジェクションは、データベースと連動したWebサイトに対する攻撃手法で、不正なSQL文を使ってデータベースを操作します。SQLインジェクションは、機密情報の流出やデータの改ざんが発生する場合があります。
SQLインジェクションへの対応はWAFだけではなく、アプリケーション側でも攻撃を受けにくい実装を行う必要があるでしょう。
OSコマンドインジェクション
OSコマンドインジェクションは、WebアプリケーションがOSのコマンドを実行する際、攻撃者が不正なコマンドを挿入しシステムに損害を与える攻撃手法です。
この攻撃はWebサイトのセキュリティ問題で、個人情報の流出などにつながる可能性があるでしょう。OSコマンドインジェクションもWAFだけではなく、OS側の継続的なアップデートなど総合的なセキュリティ対策が必要です。
バッファオーバーフロー
バッファオーバーフローは、プログラムのメモリ領域を超えたデータを書き込むことで、他のメモリ領域に不正なコードを実行させる攻撃手法です。攻撃者はシステムの制御を奪い、任意のコードを実行することができます。
クロスサイトスクリプティング
クロスサイトスクリプティング(XSS)は、脆弱性のある入力フォームや掲示板に悪意ある第三者が罠を仕掛け、個人情報を盗む被害を引き起こす攻撃手法です。
リンクをクリックすることで別のWebサイトに遷移し、悪意のある画面が表示され、マルウェア感染などが発生する可能性があるでしょう。XSSもWAFによる保護だけではなく、アプリケーション側も攻撃を受けにくくする実装を行う必要があります。
DDoS攻撃
DDoS攻撃は分散型サービス拒否攻撃とも呼ばれており、複数のコンピューターから大量のアクセス要求を送付し、ターゲットとなるサーバーのリソースを枯渇させる攻撃手法です。DDoS攻撃によりサーバーのリソースが枯渇すると、正常なサービスを提供できなくなります。
ディレクトリトラバーサル
ディレクトリトラバーサルは「横断」という意味で、通常は参照できないファイル階層への攻撃を指します。攻撃者はアプリケーションの脆弱性を利用して、許可されていないファイルやディレクトリにアクセスし、機密情報を盗んだり、システムを破壊したりできます。
ディレクトリトラバーサルを防ぐためには、各種アクセス権を最小限にすることが前提となります。公開環境にする際には、必要以上のアクセス権がないことなどを精査することも必要となります。
3種類のWAFの特徴
WAFは大きく次の3種類に分けられます。それぞれ詳しく見ていきましょう。
1.ソフトウェア型
ソフトウェア型WAF(ホスト型)は、保護対象となるWebサーバーにWAFのソフトウェアをインストールし通信内容を検査する方法です。
ホスト型は、サーバーにインストールすると簡単に運用できるのがメリットです。しかし、Webサーバーに直接インストールするため、サーバーのリソースの消費や、サーバー自体が攻撃対象になる可能性があるでしょう。
そのため、適切なリソース管理やサーバーのセキュリティ対策が必要です。
2.アプライアンス型
アプライアンス型WAFは、社内ネットワークのセキュリティ強度を向上させるために導入されることが多いでしょう。WAFは専用のハードウェア機器として提供され、ネットワーク上で独立して動作するうえ、一般的に高いセキュリティ性能を発揮します。
アプライアンス型WAFは専用機器を導入する必要があるため、初期費用が高くなるのがデメリットですが、多くの企業にとって有益な投資となるでしょう。アプライアンス型WAFには、非常に高いセキュリティ性能と安定したパフォーマンスがあるためです。
3.クラウド型
クラウド型WAFは、DNSの設定変更により、WAFサービス事業者が提供するネットワークを経由するようにして検査と防御をします。専用機器を用意する手間が省けるうえ、WAFの運用をサービスの提供事業者へ任せられるメリットがあります。
しかし、サイト数や一度に取り交わされる通信量が多い場合、課金形態によってはコスト高くなるデメリットがあります。したがって、大きなファイルのインストールやアップロードには不向きでしょう。
企業にWAFを導入する際の注意点
WAFの導入時に適切な検討をせずに導入してしまうと、可用性が損なわれたり、保護すべき事象が保護できないかもしれません。
また、必要以上にコストがかかる可能性もあるでしょう。実際の導入に向けては次の注意点を理解しましょう。
リスクの本質と防ぎ方の定義を決める
現在提供または利用しているwebアプリケーションに対して、どのようなリスクがあるのか、そのリスクによってどれほどの被害や脅威が存在するのかを明確にします。
例えば、BtoCで使うオンラインショッピングは非常に高度なセキュリティを必要としており、外部から攻撃を受けてサービス停止や情報漏洩などの被害が想定されます。
一方、社内運用などの限定的な環境における運用であれば、WAFを使わなくてもグローバルIP制限やクライアント証明書などを用いて、よりシンプルで安価な方法で保護できます。
定期点検とセキュリティ要件のアップデート
初めてWAFを導入する際には、詳細な設定や閾値の調整が必要ですので、一度設定すればすべてが完了するわけではありません。インターネット上の脅威は日々進化しているため、今現在のWAFの設定が数年後には時代遅れになる可能性もあるでしょう。
また、セキュリティ技術は日進月歩で進化しているため、WAFを導入した時には存在していた問題が解決されているケースもあります。自社の状況に応じて四半期ごとや半年ごと、年間ごとなど、定期的に現在のセキュリティ要件を見直すとよいでしょう。
WAFについてのまとめ
WAFにはソフトウェア型やアプライアンス型、クラウド型など3種類あるうえ、ブラックリスト型とホワイトリスト型の仕組みに分かれています。
メリットやデメリットがそれぞれ異なりますので、自社のセキュリティ対策の状況や目的に合わせた方法で導入するとよいでしょう。
【書式のテンプレートをお探しなら】