Amazon Web Services ブログ

AWS WAF 用 AWS Managed Rules の発表

セキュアなアプリケーションの構築とデプロイは非常に重要な作業で、対象となる脅威も常に変化しています。当社では、クラウド上で強力なセキュリティ体勢を維持する苦労を低減するために、改善作業を継続的に行っています。本日、当社は新な機能として AWS Managed Rules for AWS WAF を公開しました。これにより、ルールを直接作成したり管理する必要がなく、アプリケーションの保護ができます。また、AWS WAF に対する複数の改善も行いました。向上した新しいコンソールと API によって、これまでなかったほど簡単にアプリケーションの安全維持ができます。

AWS WAF は、ウェブアプリケーションのファイヤーウォールです。これを使うと、アプリケーションに向けられたトラフィックの内、どれに許可を与えどれを拒否するかを制御するためのルールを定義できます。AWS WAF は、たとえば SQL インジェクションとかクロスサイトのスクリプトによる攻撃など、一般的な脅威をブロックするのに役立ちます。AWS WAFは、Amazon API GatewayAmazon CloudFrontApplication Load Balancer と合わせて使用することができます。本日は、多くのエキサイティングな改善点を公開していきます。今回発表した OR 演算子により、以前は複数のルールが必要であった評価が行えるようになるので、従来のルール作成にあった複雑さが低減されます。API の使いやすさも大いに改善されており、複雑なルールも 1 度の API 呼び出しだけで作成や更新が行えます。WAF Capacity Unit (WCU) が加わったことで、ウェブの各アクセスコントロールリスト (ACL) でルールは 10 個までという制限を撤廃しています。WCU に切り替えれば、数百のルールを作成できるようになります。ウェブのアクセスコントロールリスト (ACL) に追加された各ルールは、デプロイされているタイプに基づいた容量を消費します。そして、各ウェブ ACL には WCU の制限が定義されています。

新しい AWS WAF を使用する

ここで、変更点のいくつかを確認しながら、AWS Managed Rules for AWS WAF を使用できるようにしてみましょう。先ず、AWS WAF を開き、新しいバージョンに切り替えます。

次に、新しくウェブ ACL を作成して、アカウントにある既存の API Gateway リソースに追加します。

これで、ウェブ ACL へのルール追加を開始できます。この新しい AWS WAF では、ルールエンジンが改良されています。ステートメントを AND、OR、そして NOT 演算子と組み合わせることができ、より複雑なルールロジックを実装できます。

WAF v2 論理演算子のスクリーンショット

ここでは、POST という HTTP メソッドを使うすべてのリクエストをブロックする、シンプルなルールを作成しています。もう 1 つの嬉しい改善点に、テキスト変換に関する複数のサポートがあります。たとえば、HTML エンティティをデコードするためにリクエストをすべて変換し、小文字にすることなどが可能です。

これからは、JSON オブジェクトでウェブ ACL のルールを (そして ACL 本体も) 定義して、アプリケーションのコードに合わせバージョン管理されたアセットとして使用できます。1 度の API 呼び出しから、これらの JSON ドキュメントにルールの作成や更新をさせることも可能です。

AWS Managed Rules for AWS WAF の使用

それではここで、完全に新しく追加された AWS Managed Rules を試してみることにしましょう。AWS Managed Rules によれば、あっという間に保護機能を作れます。ルールのメインテナンスは AWS Threat Research チームが行っており、新たな脅威が特定されるごとに、新しいルールが追加されています。追加されるルールセットは、 AWS Marketplace で入手可能です。マネージド型ルールグループを選択し、ウェブ ACL に追加するだけで、AWS WAF が即座に既知の脅威に対する保護を開始してくれます。

ここでは、SQL 攻撃から保護してくれるルールグループを選択しました。同時に、中心的なルールセットも有効化しました。中心的ルールセットでは、OWASP Top 10 に公開されている一般的な脅威とセキュリティリスクをカバーしています。新しくウェブ ACL を作成し変更点が適用されればすぐに、SQL インジェクションに代表されるようなあらゆるタイプの攻撃から、アプリケーションが保護されます。今回、ACL に追加してみた 2 つのルールと、それがどのような形態を取っているかをチェックしてみましょう。

今回のデモ用ルールは非常にシンプルですので、さほどの容量は必要としません。それに比べ、マネージド型ルールの方はかなり容量を使いますが、このウェブ ACL には、まだ多くのルールを追加できる容量が残っています。

知っておくべきこと

ここまでは、新たに改善された AWS WAF が与えるメリットの簡単なご紹介でした。実際にコンソールを使い、これを使用可能にする前に、いくつか心に留めておくべき事柄があります。

  • 新しい AWS WAFAWS CloudFormation をサポートしており、CloudFormation テンプレートを使っての、ウェブ ACL とルールの作成と更新が行えます。
  • AWS Managed Rules の使用に関しての追加料金などはありませんが、各マネージドルールグループは、ルールと同様にカウントされ、ルールと同様の料金が発生します。詳細は料金ページをご確認ください。AWS Marketplace の販売者が提供するマネージド型ルールにサブスクライブすると、販売者が設定したマネージド型ルール料金がかかります。
  • AWS WAF の料金体系には変更はありません。

では皆さん、いつもどおり構築作業を (安全に) 楽しんでください。re:Invent もしくは re:Invent livestreams でお目にかかるのを楽しみにしています。

— Brandon