ブログに戻る

フォロー&ご登録

英語のみで利用可能

このページは現在英語でのみ閲覧可能です。ご不便をおかけして申し訳ございませんが、しばらくしてからこのページに戻ってください。

Web アプリケーションファイアウォール (WAF) のベストプラクティス

Liam Mayron

Senior Product Manager , Fastly

ツールは、そのタイプによって特定のチームの領域に分類されます。WAF について考えてみましょう。

Web アプリケーションファイアウォールは、アプリケーション・セキュリティ・チームにより提案されることが多いものの、DevOps のプロセスに携わるどのグループにとっても不可欠であり、メリットがあります。実際、WAF は DevOps チームによって採用される主要テクノロジーです。5,000人以上のアプリケーションクリエイターへのアンケートによると、アプリケーション・セキュリティ・ツールは、初級、中級技術者の DevOps プラクティスの半数以上、および上級技術者チームの59%に使用されています。

WAF が広く使用されていることは驚くに値しません。WAFは、DevOps に多大なメリットをもたらします。アプリケーションを保護し、開発者やオペレーションのランタイムの脅威に関する可視性を高め、セキュリティチームが脆弱性の修正までの悪用を防ぐために仮想パッチのデプロイを行えるようにします。

では、どうすれば DevOps グループは最も効果的に WAF を活用できるのでしょうか?次に、ベストプラクティスの一部をご紹介します。

1. すべての API に WAF を使用する

WAF を使用すると、企業はアプリケーションのランタイムの状況と、ソフトウェアに影響を及ぼすリクエストや攻撃の種類についての可視性を得られます。そのため、インターネットに接続した、マイクロサービスのコンテナ間や API 指向のアーキテクチャにあるすべてのアプリケーションに、最新の WAF を適用するべきです。 

自社のアプリケーションのポートフォリオを充分にカバーしていない企業は、アプリケーションに対する脅威への可視性の大部分を損失しています。WAF の分析、ログ、他ソースからのデータを組み合わせると、企業は進行中の攻撃やアプリケーションの実行エラーに関する詳細なインテリジェンスを得ることが可能です。 

可観測性の向上は、最先端の DevOps チームにおいて大きなトレンドになっています。最も経験豊富なチーム、いわゆる「優秀な技術者」たちは、能力の低い技術者や経験の少ないチームと比較した場合、プロセスにおいてログと攻撃の監視を自動化し、統合している割合が4倍となります。

2. セキュリティをコードの一部にする

コードとしてのセキュリティという方法を用いて、開発者はデプロイの際にランタイムセキュリティの想定をアプリケーションインフラストラクチャに伝えることができます。アプリケーション内ではなく、アプリケーションインフラストラクチャのエッジで入力の前処理をするため、アプリケーションが処理しなくてはならないリクエストのタイプを制限すると、より効率的です。

加えて、最新の WAF を使用するチームでは、脅威対策に関する選択肢が増えます。単純な変更では容易に対処できない複雑な脆弱性は、代わりに WAF にデプロイ可能な仮想パッチを作成することで悪用を阻止できます。 

3. WAF への変更を継続的にテストする

「ログ&ブロック」モードに設定された WAF は、その WAF への変更と更新が適切にテストされなければ、アプリケーションの失敗につながるリスクがあります。残念ながら、自動化されたパフォーマンスとセキュリティテストは、DevOps チームで最も採用率の低い自動化プロセスです。自動化されたパフォーマンスとテストを使用しているのは、能力の低い DevOps チームでは18%のみで、自動化セキュリティテストはさらに少ない15%です。優秀な技術者でさえ、パフォーマンスおよびセキュリティテストを自動化することは少なく、これらの自動化テストを採用しているチームはそれぞれ28%と31%のみであることが、Google の DevOps Research and Assessment (DORA) グループにより示されています。 

テストを行うグループは通常、WAF をアプリケーションのコンポーネントとしてテストプロセスに統合します。アプリケーションへの変更と同様、セキュリティツールからのあらゆる潜在的な影響を、本番環境での変更の実施前に確認できるようにすることは有益です。 

4. WAF の決定に対する賛同を得る

これまで運用チームが DevOps を推進してきたことが資料に示されていますが、近年は開発者たちがアジャイル開発の手法への移行を加速させつつあります。ただし、DevOps 採用の推進者が誰であれ、運用チームと開発チームのどちらもが、自身の業務において引き受けるべきリスクを自覚する必要があります。蓄積されたユーザーデータがなく、トランザクションを処理していないアプリケーションでは、WAF は疑わしいリクエストをブロックするきわめて厳格なモードで実行できるかもしれません。 

しかし、例えばオンライン販売など、Web アプリケーションが自社ビジネスそのものである企業にとっては、正当かもしれない顧客をブロックすると事業の損失につながるため、WAF の調整にはさらなる工夫が必要です。 

そのため、WAF にかかわる幅広い戦略と、決定の指針となる具体的な基準について、企業幹部と緊密に連携することが大切です。

適切に使用すれば、最新の WAF はより高度なインテリジェンスやセキュリティの実施およびレスポンスの迅速化、セキュリティ設定に関する施策の早期実施など、DevOps グループに多大な有用性をもたらします。高度な DevOps プロセスのソフトウェア開発ライフサイクルへのメリットは計り知れません。Google の DORA レポートによると、経験豊富なグループは、能力の低い技術者に比べて200倍の頻度でコードをデプロイし、能力の低い技術者では1週間かかるインシデントを1時間で復旧できます。 

WAF を最大限に活用するには、適切にデプロイする必要があります。これらのベストプラクティスをぜひお役立てください。