AWS WAFとはどのようなものか

2017.11.17

WAF

AWS-WAF

世界規模で通販サイトとして活躍するAmazonは、通販以外にも多くのサービスを提供しています。ITサービスとして代表的なものにAWSがあります。調査会社Canalysによると、Amazon Web Services(AWS)はクラウドインフラ市場で30%以上のシェアを有しており、競合他社に比べて大きく上回っているといいます。(参考:AWS、クラウドインフラ市場でシェア3割–Canalys – ZDNet Japan
日本でもAWSユーザーが増加しており、新しくサーバを選ぶ際にAWSを検討する人は多いのではないでしょうか。
今回はAWSで使用できるAWS WAFについて基本的な点をまとめます。

目次

AWS WAFとはどのようなものか

WAF(Web Application Firewall)とは、Webアプリケーションの脆弱性を悪用した攻撃をブロックするセキュリティ対策です。AWS WAFはAWSで提供されているWAFで、「Amazon CloudFront」や「ELB(Elastic Load Balancer)」、「ALB(Application Load Balancer)」に付属される形で提供されています。実はWAFはファイアウォールの一つですが、通常のファイアウォールとは別物です。最近問題になっているサイバー攻撃は、データベースやクラウド上にあるWebアプリケーションには、通常のファイアウォールでは効果がありません。WAFとファイアウォールや IDS/IPS との違いは、アプリケーションレベルで通信の中身を解析し、特定の攻撃パターン(シグネチャ)に一致する通信を検知・遮断する点です。

Amazon CloudFrontとは

Amazon CloudFrontはデータ、ビデオ、アプリケーション、API といったコンテンツをユーザーに安定かつ高速に配信することを目的としたグローバルコンテンツ配信ネットワーク (CDN) サービスです。

CDNは次のような働きをしています。
オリジンサーバのコンテンツを世界中に配備されているエッジサーバでキャッシュしておき、ユーザーからリクエストがあるとエッジサーバへ誘導します。エッジサーバでキャッシュされたファイルを配信することで、オリジンサーバの負荷を減らし安定・高速な配信を可能にします。また、Amazon CloudFrontには急激なアクセスに対して自動的にスケール(アクセスに対応するためにリソースを増加すること)する機能もついています。

ALBとELBとは

AWSで提供しているロードバランサーをALB・ELBと呼び、AWSにおいて通信を複数サーバ(インスタンス)へ負荷分散するサービスです。
ELBが以前から提供されていましたが、2016年にALBの提供が始まったことでELBは標準ロードバランサー(Classic)という位置づけになっています。

AWS WAFの特徴

AWS WAFは料金設定の違いが、他社と比べると明確です。一般的なクラウド型WAF同様に専用機器を準備する必要はありません。料金は設定した分だけ課金される体系です。(初期費用は不要です)

<AWS WAFの課金対象>
・ウェブアクセスコントロールリスト (ウェブ ACL) 数
・ウェブ ACL ごとに追加するルール数
・受け取るウェブリクエスト数
(参考:料金 – AWS WAF(Web アプリケーションファイアーウォール

AWS WAFを導入する際に気をつけなくてはいけないことは、AWSの設定や運用における継続的な調整をする必要があることです。ベンダーが提供しているクラウド型WAFのようにベンダー任せにすることはできません。また、CloudFront、ALB、ELBを利用には費用が発生するため、AWS WAFとは別に費用を見積もっておく必要があります。

Web ACLとRule、Conditionの関係

AWS WAFには「Web ACLs」、「Rules」、「Conditions」というメニューで構成されています。Ruleを束ねたWeb ACLをCloudFront、ALB、ELBに適用します。RulesはConditionを束ねたもので、複数設定することができます。Rules毎に設定するConditionでフィルタするIPアドレスやSQLインジェクションへの対応、特定文字列のマッチングといった設定をします。

DDoS攻撃への対応 AWS Shield

AWS WAFのウェブACLを使用すると、AWS Shieldが付属されるかたちで提供されます。
AWS Shieldには、追料金不要で使用できる「AWS Shield Standard」と、追加料金が発生する「AWS Shield アドバンスド」があります。AWS Shield アドバンスドは月額料金+データ転送使用量で課金されます。(AWS WAFに対して別途料金を支払う必要はありません。)
また、AWS Shield アドバンスドはAWS Shield Standardとは異なり、攻撃量に応じて料金が上がることはありません。DDoS攻撃などによりリクエスト数が増加した場合も安心です。

ベンダーが提供するクラウド型WAFとAWS WAFの違い

WAFが利用できるサービスは多いですが、ベンダーによるものと、AWSのWAFは根本的に違っています。ベンダーが提供するクラウド型WAFは、WAFをサービスとして利用するだけであり、設定や運用はベンダー側で対応してくれます。従って、基本的にはDNS設定を変更するだけで導入できるメリットがあります。
一方、AWS WAFはWeb ACL内のConditionにおいて細かく設定が可能であったり、APIが利用可能であったりと、導入が容易ではありません。逆に柔軟な対応をしたい場合に適しているともいえます。

AWS WAF運用サービス「WafCharm」

「WafCharm」はAIによる「AWS WAF」のルール(シグネチャ)自動運用サービスです。AIが数千億件のビックデータを活用し、ユーザー毎に最適なルールをAWS WAFに自動で適用します。
細かい設定や定期的なチューニングが必要なAWS WAFですが、このサービスを利用することで、驚くほど簡単にAWS WAFを運用することができます。
AWSマネジメントコンソールで一元管理ができるため、シグネチャの切り替えもユーザー自身で設定ができるなど運用面での自由さもあります。
開発エンジニアによるサポート体制も整っているため、運用における疑問点も解決できます。

クラウド型WAF攻撃遮断くん

クラウド型WAF「攻撃遮断くん」は、DNSを切り替えるだけで導入ができるタイプとサーバへエージェントをインストールするタイプの2種類提供していますが、どちらも簡単に導入することができます。複雑な設定や運用は不要でありながら、お客様の環境に合わせてシグネチャカスタマイズにも柔軟に対応しています。

安価で高セキュリティなサービスを提供するクラウド型WAF「攻撃遮断くん」の詳細資料は、こちらからダウンロード頂けます。

まとめ

今回はAWS WAFの基本的な点についてご紹介してきました。
WAFにはAWS WAFやクラウド型以外にも、アプライ型やホスト型のWAFもあります。どれが良いとのではなく自社のサーバ環境やリソースと相談して選択するのが良いといえるでしょう。

この記事と一緒に読まれています