最終更新日:2024-04-23
AWS上に構築した自社のWebアプリケーションのセキュリティを高め、攻撃から守りたいと考えている方へ。AWS WAF上で利用できるマネージドルールの特徴や選び方を紹介します。
まずはWebアプリケーションのWAFの関係から解説します。
現在、インターネット通信のほとんどは、HTTPあるいはHTTPを暗号化したHTTPS(HTTP over SSL/TLSあるいはHTTP Secure)という通信プロトコルを利用しています。スマホアプリなどの多くも、裏でHTTPやHTTPSを使って外部のサーバーと通信しています。
また、Webブラウザからのアクセス先も、Webサーバーの裏側(バックエンド)でデータベースサーバーやアプリケーションサーバーなどが様々な処理を行う「Webアプリケーション」が主流に。
Webアプリケーションは高度な機能を持っている一方で、ハッカーの攻撃対象になりやすいです。たとえば、アクセス時に不正なコードをサーバーに対して送り込んでバックエンドのサーバーから情報を盗み出したり、Webサーバーを乗っ取ったりといった攻撃が考えられます。
これらの攻撃は、特定の通信プロトコル以外を遮断したり、限定した接続元(IPアドレス)からの接続だけを許可したりする、一般的なファイアウォールで防ぐのが困難です。
Webアプリケーションに対する攻撃は、Webブラウザを使った正規の通信を通じて実行されるため、通信そのものを止められません。そのうえ、多くのWebアプリケーションはインターネット上にある不特定多数の端末からアクセスを受け付ける必要があるため、接続元のIPアドレスをあらかじめ限定することなどもほぼ不可能です。
Webアプリケーションへの攻撃を防ぐには、すべてのアクセスを受け付けたうえで、「①HTTP/HTTPSのメッセージに含まれる攻撃用のコードや特定の通信パターンを(振る舞い)検知する」「②それらを即座にブロックする」という仕組みが必要となります。こうした仕組みを実現するのが「WAF(Web Application Firewall)」です。
WAFを導入することで、以下のような攻撃を防げるようになります。
ただし、DDoS攻撃に対処するには、ファイアウォールやIDS/IPSを使ったネットワークレベルでの対策も欠かせません。
WAFは元々、主に物理的なWebサーバーを守るためのセキュリティ機器として開発されました。そして、WAFの機能を安価にクラウド経由で提供する「クラウドWAF」が登場。更に現在では、クラウド上の仮想サーバーに対するWAFの機能も提供されるようになっています。
Amazonが提供するクラウドサービス「Amazon Web Services(AWS)」においても、「AWS WAF」というWAF機能を用意。AWS WAFを使えば、AWS上で稼働するWebアプリケーションを様々な攻撃から保護できるようになります。
ただし、ユーザー自身でAWS WAFの設定・管理・維持を行おうとすると、Webのセキュリティに関する高度な専門知識が必要に。なぜなら、AWS WAFをどう制御してWebアプリケーションをどんな攻撃から守るかを具体的に記述する「ルール」を、ユーザーが個別に作成しなければいけないからです。
ルール作成の困難さを軽減するために、AWS WAFでは「マネージドルール」と呼ぶ仕組みを用意しています。マネージドルールとは、「あらかじめ定義されていて自動で管理されるAWS WAFのルール(セット)」です。
マネージドルールを使うことにより、セキュリティの専門家がいない企業でも、手軽にAWS WAFを利用できるようになります。
AWS WAFでは、Webアプリケーションが動く仮想サーバーなどのリソースに対して「Web ACL(Access Control List/アクセス制御リスト)」と呼ばれる設定情報を収めるためのリストを作成。そして、Web ACLにAWS WAFを制御するためのルールを紐付けます。
AWS WAFを適切に機能させるには、自社のセキュリティポリシーに合致するよう、Web ACLおよびそこに紐付けるルールを作成・登録しなければいけません。しかし、以下のような作業負荷がかかってしまうため、一般企業がAWS WAFのルールを自社で適切に設定し運用し続けるのは難しいとされています。
これらルール作成や運用にかかる負荷を大幅に軽減するために、“完成品”であるマネージドルールを利用する必要があるのです。
AWS WAFを利用すると、作成したWeb ACLの数やルールの数、リクエスト数などに応じた料金がかかります。マネージドルールを使うと、AWS WAFの利用料金に追加の料金が発生します(注:AWS公式のものを除く。後述)。
追加で発生する費用は、「月額基本料金(1ユニット当たり20~30ドル前後)+リクエスト数に応じた課金(1ユニット、100万リクエスト当たり1~2ドル程度)」というケースが一般的です。ただし、リージョン数などを含むWebアプリケーションの構成(ユニット数)や、利用するマネージドルールの数・種類などによって変動する従量課金制のため、アクセス集中などにより想定外の高額な支払いが発生する恐れも。事前にしっかりと費用を見積もっておくことが重要です。
AWS WAF向けマネージドルールは、以下の3種類に大別できます。
AWSが用意している公式マネージドルールです。このマネージドルールを使うことで、Webアプリケーションに対する一般的な(≒非常に危険な)既知の攻撃手法の多くに対処できます。「最低限これだけは対策しておきたい」というセキュリティのベースライン確保を主目的とするのであれば、まず公式マネージドルールが選択肢となります。
加えて、ブログサーバー「WordPress」といった一部のWebアプリケーション向けのルールセットなども用意されているので、自社のWebアプリケーションに適合するものを探してみましょう。
同マネージドルールは、あくまでもWebアプリケーションに対する一般的な攻撃を回避できるように作られた、いわば「万人向け」のルールセットといえます。つまり、これを適用するだけであらゆる攻撃を防げる万能ルールセットのようなものではありません。
そのため、「攻撃への防御力をより高めたい」「最新の攻撃手法へいち早く対応したい」といった場合には、次に紹介するサードパーティー製マネージドルールがおすすめです。
大手を含むセキュリティ専業ベンダーが提供するマネージドルール。新たな攻撃手法を調査・分析する技術力や、それに対応するルールを迅速に作成・提供できる体制などに強みを持ちます。
製品ごとに得意・不得意とする領域や、カバーしている範囲などに違いがあります。そのため、どの製品が自社のWebアプリケーションの保護に適しているのか、導入前にしっかりと比較検討しなければいけません。
マネージドルールの設定から運用、サポートまですべて委託したいという企業向けのサービス。AWS WAFの運用に当たって以下のようなニーズがある場合には、こうしたサービスの導入も検討してみてください。
Amazonが提供している公式マネージドルールの種類や、対応できる攻撃などについて解説します。
Amazonが提供する公式マネージドルール。「AWS WAFボットの制御」というルール以外は無料で利用できる。
提供されるルールは、以下の4カテゴリー/11種類。
1.ベースライングループ…様々な一般的な脅威に対する一般的な保護を提供する
2.ユースケース固有のルールグループ…Webアプリケーションごとに異なる脅威に対する保護を提供する
3.IP評価ルールグループ…特定の地域や接続の種類などIPアドレスに基づき、接続をブロックする
4.AWS WAFボット制御ルールグループ…検索エンジンのクローラーなども含む、各種ボットを検査および制御する
「1.ベースライングループ」で提供されているのは、Webアプリケーションへの攻撃を回避するための一般的かつ基本的なルールセットである「コアルールセット(CRS)」や、管理ページへの不正アクセスを防止して管理者権限を守るための「管理者保護」など。
また「2.ユースケース固有のルールグループ」では、SQLインジェクションをはじめSQLデータベースへの攻撃を防ぐ「SQLデータベース」、PHPを使ったWebアプリケーション向けの「PHPアプリケーション」、WordPressを狙った攻撃を回避する「WordPressアプリケーション」などを提供している。
AWS Marketplaceから購入できる主なマネージドルールをご紹介します。どれもセキュリティ分野で実績のあるベンダーが提供している製品です。
日本のセキュリティベンダーが開発するマネージドルール※。Webアプリケーションのセキュリティに関する重大なリスクのランキング「OWASP Top 10」に掲載されているものをはじめ、様々な脅威からWebアプリケーションを保護する。
SQLインジェクションやOSコマンドインジェクション、XSS、ディレクトリトラバーサル攻撃などに対応するルールを用意。そのほかにも、Apache Struts2やApache Tomcat、Oracle Weblogicなどを使った各種Webアプリケーションや、悪意のあるボットに対するルールなどが組み込まれている。
※AWS Marketplace上では米子会社のCyber Security Cloud社が提供元となっている
UTM(統合脅威管理)機器「FortiGate」などで世界的に有名なセキュリティベンダーが提供するルールセット。同社のハードウェアアプライアンス型WAF「FortiWeb 」と同じシグネチャーベースで、Webアプリケーションに対する脅威を除去できる。シグネチャーの配信により、最新の脅威への素早い対処も可能だ。
「OWASP Top 10」リストに含まれる脅威に完全対応。SQLインジェクションやXSSなどWebアプリケーションへの様々な攻撃を防ぐマネージドルール「Fortinet Managed Rules for AWS WAF - Complete OWASP Top 10」を提供。そのほか、AWSのAPI作成・管理サービス「API Gateway」向けのマネージドルール「Fortinet Managed Rules for AWS WAF - API Gateway」といった複数の製品を展開している。
ロードバランサ―(負荷分散装置)やSSL-VPN装置など、各種ネットワーク・アプライアンス製品の開発・販売で世界的シェアを誇る同社が提供するマネージドルール。「OWASP Top 10」リストの脅威をはじめ、SQLインジェクションやXSS、コマンドインジェクション、No-SQLインジェクション、パストラバーサル攻撃など、多数の攻撃をブロックできる。
すべてのルールは、同社のセキュリティスペシャリストによって作成・管理および定期的に更新されるため、ユーザーによる更新作業などは不要。通常のWebアプリケーション向けの「F5 Rules for AWS WAF - Web exploits OWASP Rules」のほか、XMLやJSONを使ったAPI呼び出しを狙うSSRF攻撃を防ぐためのルールセット「F5 Rules for AWS WAF - API Security Rules」なども提供している。
米国のセキュリティ専業ベンダーThereatSTOP社が提供するマネージドルール。800以上の脅威インテリジェンスフィードを集約・分析して作成された「ThreatSTOP CoreThreats ポリシー」を使用することで、高精度な脅威の検出・阻止を実現する。
ボット対策向けの「New and Active Malicious Bots for AWS WAF」や、HTTPを使った様々な攻撃に対処するための「New and Active HTTP Threats for AWS WAF」などを提供。そのほかに、国際武器取引規則(ITAR)および米国財務省・外国資産管理局(OFAC)による規制を遵守するための「ITAR and OFAC for AWS WAF」といった製品も用意している。
WAFやDBA(データベースファイアウォール)など、様々なセキュリティソリューションを提供している同社によるマネージドルール。定期的に監視・更新されるIPホワイトリスト・ブラックリストを使用することで、能動的な脅威の防止・セキュリティ管理を可能にする。
新しく検出された悪意のあるIPは、脅威調査チームによる手動分析を経て、リストへの追加・定期更新が行われる。ITチームが未知の脅威に備える負荷を軽減するのに有用だ。
(出所:Cloudbric WMS for AWS公式Webサイト)
ルール作成から日々の運用、新規脆弱性の出現時や誤検知発生時の対応まで、AWS WAFの導入・運用を総合的に支援するAWS WAF特化型の運用サービス。24時間365日のモニタリングおよびサポート体制を敷いており、AWS WAFの導入から運用までのあらゆるプロセスを同社のセキュリティ専門家がサポートする。
114カ国70万以上のサイトから収集した脅威情報と、日本を含む3カ国で特許取得済みの自社開発AI技術に基づき決定される「危険度スコアリング」を使って、危険なIPアドレスからの接続などを遮断できる。
本記事が対象とするAWS WAF向けのマネージドルールではありませんが、AWS MarketplaceではAWS上で動作するクラウド型WAFそのものも販売されています。有名な製品に以下の2つがあります。
どちらも高度な機能を備えたWAFソフトウェアであり、専門知識があるユーザーならAWS WAFを使うよりも柔軟かつ自社のWebアプリケーションに適したシステム構成でWAFを運用できます。
AWS WAFとマネージドルールでは自社が必要とする要件を十分満たせない場合には、これらの製品やほかのクラウドWAFサービスなどが選択肢となりますが、WAFの設定や運用に関する知識が必要です。
AWS上でWebアプリケーションを安全に運用するには、WAFの利用が欠かせません。AWSが標準装備するAWS WAFの場合、様々な攻撃パターンに対するルールをユーザーが一から設定することも可能ですが、一般のユーザー企業の管理者がこれを適切に行うのは困難です。AWS WAF向けマネージドルールを導入することにより、そうした設定や管理にかかる負荷を大幅に軽減することが可能です。
ただし、マネージドルールの導入に当たっては、気を付けるべきことが二つあります。一つは、マネージドルールは基本的に中身が分からない「ブラックボックス」となっていることです。単にユーザーが何も設定しなくても済むということではなく、「ユーザーが何かを設定できる余地がない」ルールセットであるため、提供元のベンダーを信じて使うしかありません。このことをよく理解した上でルールセットを選択する必要があります。
もう一つは、AWS WAFには2種類のバージョンがあり、マネージドルールも新旧のバージョン間で互換性がないということです。現在使われているのは「AWS WAF V2」と呼ばれるバージョンで、それ以前のAWS WAFについては「AWS WAF Classic」と呼ばれています。たとえば本記事で紹介したAWS公式の「AWS Managed Rules for AWS WAF」は新しいAWS WAF V2向けのマネージドルールであり、古いAWS WAF Classic環境では利用できません。
一方、AWS Marketplaceから購入できるについては、検索結果にV2向けのものもClassic向けのものも混在して表示されるため、間違えて購入しないよう注意が必要です。ちなみに検索エンジンでAWS WAFについて調べる際も、Classicを前提にした古い記事(しかしClassicとは書いていない)と新しいV2を前提にした最近の記事が交じり合って表示されるので、とても混乱を招きやすい状況となっています。
運用サービス付きのマネージドルールは比較的高価ですが、マネージドルールの便利さに手厚い運用サポートが加わった総合的なサービスということで、安心感は抜群です。マネージドルールの「中身が分からない」という不安点についても、専門エンジニアからサポートを受けられるこの種のサービスであれば、少なくとも自社のWebアプリケーションを守るために必要な情報については十分提供してくれるでしょう。コスト的に許せるのであればオススメの選択肢となります。
以上、AWS WAF向けマネージドルールの選び方について、周辺情報も含めてご説明しました。本記事の内容がマネージドルール導入の検討に少しでもお役に立てれば幸いです。
WAF向けマネージドルールサービスをお探しの方は、こちらからサービス紹介資料をダウンロードいただけます。
ペンタセキュリティ株式会社
専門知識やリソースがない企業でもAWS WAFを適切に運用できるようサポートする運用サービス。AWS WAFの導入から利用までの一連のサイクルを、セキュリティ専...
<重要なお知らせ> サイトリニューアルに伴い、初回ログインにはパスワードの再設定が必要です。
アスピックご利用のメールアドレスを入力ください。
パスワード再発行手続きのメールをお送りします。
パスワード再設定依頼の自動メールを送信しました。
メール文のURLより、パスワード再登録のお手続きをお願いします。
ご入力いただいたメールアドレスに誤りがあった場合がございます。
お手数おかけしますが、再度ご入力をお試しください。
ご登録いただいているメールアドレスにダウンロードURLをお送りしています。ご確認ください。
サービスの導入検討状況を教えて下さい。
本資料に含まれる企業(社)よりご案内を差し上げる場合があります。