Webサイトのセキュリティ対策の基本として、WAF(ワフ)について知っておくことは重要です。WAFの役割と重要性、WAFによって防げるサイバー攻撃の種類を詳しく解説します。WAFの種類と、それぞれのメリット・デメリットについても解説しているので、導入の参考にしてください。
WAF(ワフ)とは何か
WAF(ワフ)とは「Web Application Firewall」の頭文字を取った言葉で、脆弱性を利用したサイバー攻撃からWebサイトやアプリケーションを守るシステムのことです。後述する多種多様なサイバー攻撃に対応する機能があります。
Webサイト運営やサーバー運用のセキュリティ対策に不可欠なものとして、多くのメディアや企業が導入しているシステムです。
通常の「ファイアウォール」との違い
WAFにはファイアウォールという用語が使われていますが、通常は別のセキュリティ対策として「ファイアウォール」と「WAF」の両方が導入されます。
ファイアウォールとは、サーバーやコンピューターがネットワークに接続する出入り口を監視し、不正なアクセスなどから保護するシステムです。外部からポート番号を調べる「ポートスキャン」などの攻撃からネットワークを保護できます。
通常のファイアウォールは「ネットワーク」のセキュリティ対策であり、WAFは「Webサイト・Webアプリケーション」のセキュリティ対策という違いがあります。
通常のファイアウォールは、内部ネットワークが外部から不正なアクセスを受けることを防ぐ機能はありますが、外部に公開されたWebアプリケーションの脆弱性を狙った攻撃には対応できません。
「IDS・IPS」との違い
IDS・IPSも、WAFやファイアウォールと役割の異なるセキュリティ対策として、併せて導入されることが多くあります。
IDS・IPSは不正なアクセスを「監視」するもので、主にサーバーの「OS・ミドルウェア」を保護するためのシステムです。サーバーに対して大量のデータを送信する「DDoS」(ディードス)などの攻撃からサーバーを保護できます。
IDS(Intrusion Detection System)は、不正なアクセスを「検知」する機能を持つシステムです。
IPS(Intrusion Prevention System)は、不正アクセスの検知機能に加えて、ミドルウェアやOSの脆弱性を狙った攻撃から「防御」する機能を持っています。
WAFが対応するサイバー攻撃のタイプ
WAFではどのようなサイバー攻撃に対応できるのでしょうか。よく知られた7つのサイバー攻撃を解説します。
ブルートフォースアタック
ブルートフォースアタックとは、パスワードを解読するために、入力する文字列の組み合わせを少しずつ変えて、繰り返しログインを試みるサイバー攻撃です。「総当たり攻撃」とも呼ばれます。
解読ソフトによって自動的に入力することで、単純なパスワードなら短時間で解読可能です。ブルートフォースアタックの被害に遭うと、不正なユーザーにログインされ、Webサイトの内容を改ざんされたり、情報を盗み取られたりなどの結果につながります。
ログインに失敗できる回数を制限したり、複雑なパスワードを使ったりなどの方法で対策できますが、WAFによっても防御可能です。
クロスサイトスクリプティング
クロスサイトスクリプティングとは、Webサイトやアプリケーション上に罠を仕掛けられてしまうサイバー攻撃です。
Webサイト上に公開されているコメント欄やSNSなどに悪意のあるリンクを設置し、それをクリックしたユーザーを偽サイトなどに誘導して、パスワードや個人情報を抜き取るというものです。
主な標的はWebサイトではなく閲覧するユーザーですが、自社のWebサイト上に悪意のあるリンクが埋め込まれることは避けなければなりません。
そのために、コメント欄に入力された値を無害化する「サニタイジング」という対策ができますが、WAFの導入も有効です。
OSコマンドインジェクション
OSコマンドインジェクション(コマンド注入)は、Webサイトのデータが保存されたサーバーのOSに対して、不正な命令を仕掛けるサイバー攻撃です。
攻撃者はOSに対する命令文(OSコマンド)を、WebサーバーのOSに対して不正に実行させます。その結果、Webサイトの内容を改ざんしたり、他のWebサイトを攻撃するために利用したりなどの行為が可能になってしまう仕組みです。
対策としては、OSにコマンドを伝達する「シェル」を利用するようなプログラムをWebサイトに実装しないという方法があります。
とはいえ、どうしてもシェルを利用する必要があるなど、その方法が使えないこともあるでしょう。WAFを実装することで、OSコマンドインジェクションへの対策を強化できます。
SQLインジェクション
SQLインジェクションは、Webサイトの「データベース」を狙ったサイバー攻撃です。
攻撃者はデータベース管理に使用されるSQL(シークェル)という言語を、Webサイトに対して不正に注入(インジェクション)します。その結果データベースが改ざんされ、個人情報の抜き取りや、Webサイト内容の改ざんなどが可能になってしまう仕組みです。
対策としては、SQLインジェクションにつながるような文字列を無効化できる「エスケープ処理」が知られていますが、WAFを導入することも役立ちます。
バッファオーバーフロー
バッファオーバーフローとは、サーバー内でプログラムを実行するためのメモリ領域である「バッファ」に働きかけるサイバー攻撃です。
バッファに格納しきれないほどのデータを溢れさせる(オーバーフローさせる)ためのプログラムをサーバー内に潜り込ませることで、管理権限を乗っ取ります。その結果、データの改ざんなどが可能になる仕組みです。
コードを記述する際にオーバーフローが起こりにくいように注意することで対策できますが、WAFを導入することも効果があります。
ディレクトリトラバーサル
ディレクトリトラバーサルとは、Webサーバー内のフォルダ(ディレクトリ)に不正アクセスするサイバー攻撃です。
攻撃者は公開されているフォルダから、非公開のフォルダへと横断(トラバーサル)して、情報を抜き取ります。その結果、情報漏洩やデータの改ざんなどが可能になる仕組みです。
主な対策としては、Webサイトがファイルを参照する仕組みを工夫して、外部から参照されにくい仕様にすることが挙げられますが、WAFを導入することも有効です。
ゼロデイ攻撃
ゼロデイ攻撃とは、Webサイトやソフトウェアに脆弱性が発見されてから短時間(ゼロデイ)のうちに攻撃を仕掛けることです。
それまでは発見されていなかった新たな脆弱性を利用されてしまうので、事前の対策が難しいという特徴があります。
WAFには、多様化しているサイバー攻撃手法に対して自動的に対応する機能があるので、ゼロデイ攻撃に対しても有効です。特に、最新情報をスピーディに反映できる「クラウド型」のWAFは、その点で優れています。WAFの種類について詳しくは、次の項目から詳しく解説していきます。
WAFの種類と導入方法
WAFには「ソフトウェア型」「アプライアンス型」「クラウド型」の3種類があります。それぞれの導入方法と、メリット・デメリットを確認しましょう。
ソフトウェア型(ホスト型)
ソフトウェア型とは、保護したいサーバー内にインストールするタイプのWAFです。「ホスト型」とも呼ばれます。導入コストが低く、ネットワークの構成変更が不要であり、少ない手間で導入できることがメリットです。
ただしサーバー内で動作するため、WAF自体がサーバーに負荷をかけることになり、Webサイト・Webアプリケーションの表示速度や処理速度に影響するというデメリットがあります。
アプライアンス型(ゲートウェイ型)
アプライアンス型とは、保護したいサーバーに、WAF専用の機器(ハードウェア)を接続するタイプのWAFです。「ゲートウェイ型」とも呼ばれます。
専用の機器を購入する必要があるため、初期費用が高くなりますが、大規模なネットワークに対応できるため、保護するサーバーの台数が多い場合には、コストパフォーマンスが良くなります。
またサーバーの外で動作するため、サーバー本体に負荷をかけない点もメリットです。
クラウド型(サービス型)
クラウド型とは、インターネット上で提供されるWAFを利用するタイプです。「サービス型」とも呼ばれます。
月額契約などで利用料を支払うことで導入でき、新たな機器を購入したり、サーバーにソフトウェアをインストールしたりする必要はありません。WAFの提供会社が管理してくれるので、自社で管理・運用する手間も省くことができます。
ただしセキュリティ対策の質は、サービスの提供会社に依存することになるため、高品質なサービスを提供している会社をよく選ぶ必要があります。
まとめ
サイバー攻撃の種類は多様化していて、次々と新しい手口が生まれています。さまざまなサイバー攻撃から自社のWebサイトを守るためにWAFを導入することは不可欠です。サイトエンジンでは、Webサイトの立ち上げ、コンテンツ企画の提案、セキュリティ対策の構築を含めた、総合的なコンサルティングサービスを提供しています。まずはお気軽にご相談ください。