ブログ | NGINX

F5 と NGINX WAF ポリシーをコントローラ アプリ セキュリティに導入

NGINX-F5 水平黒タイプ RGB の一部
ダフネが勝利 サムネイル
ダフネ・ウォン
2021年9月15日公開

NGINX が 2 年前に F5 に加わって以来、お客様にとって最も重要なメリットの 1 つは、F5 の業界をリードするセキュリティの専門知識が NGINX 製品に統合されたことです。 F5 NGINX App Protect WAFF5 NGINX Controller App Security は、 F5 Advanced WAFF5 Silverline WAF 、その他の F5 セキュリティ ソリューションと同じ Web アプリケーション ファイアウォール (WAF) テクノロジーを活用します。 各製品は、特定の環境、導入シナリオ、管理ユースケースをサポートするために異なるフォーム ファクターを備えていますが、お客様は、同じ既知の信頼できるセキュリティ適用エンジンが、最も高度な Web 攻撃から保護してくれると確信できます。

NGINXとF5のセキュリティソリューションは、F5の業界をリードするWAFテクノロジーを活用しています

また、共有 WAF テクノロジーにより、F5 のお客様は、F5 Advanced WAF などの製品を使用する従来の環境から、NGINX App Protect WAF がより適したコンテナ化されたクラウド環境に移行する際に、セキュリティ チームによってすでに承認されている標準化されたポリシーを保持できるようになります。 製品間での WAF ポリシーの移植性により、F5 および NGINX のお客様は、強力で一貫性のあるコンプライアンス準拠のセキュリティ体制を迅速かつ簡単に確保できます。

アプリケーション配信モジュールに NGINX Controller App Security を導入したとき、誤検知を最小限に抑えながらOWASP Top 10やその他の脅威から保護することに重点を置いたデフォルト ポリシーが付属していました。 アプリケーション配信モジュールのバージョン 3.20 の Controller App Security を使用すると、カスタム NGINX App Protect WAF ポリシーをインポートし、管理対象のすべての展開に配布できるようになりました。 これをBring Your Own NGINX App Protect WAF ポリシー(BYO App Protect ポリシー) と呼びます。

詳細については、以下を読み、このビデオの概要をご覧ください。

アプリのモダナイゼーションの過程で一貫した WAF ポリシーを維持する

従来のアプリケーション配信環境を導入しているお客様の多くは、F5 Advanced WAF または BIG-IP ASM の使用を開始しています。 アプリの最新化を進めるにつれて、WAF サービスの導入に DevOps に合わせたアプローチが必要な新しいアプリに、NGINX App Protect と NGINX Controller App Security を活用できるようになります。

NGINX App Protect WAF は、OWASP Top Ten やその他の高度な脅威に対する防御から、簡素化された宣言型のポリシー定義に至るまで、さまざまな機能を備え、最新のアプリを保護します。 NGINX App Protect WAF インスタンスを管理するために Controller App Security を採用すると、次のような追加の利点があります。

  • セキュリティ チームは、すぐに使用できる可視性が向上し、開発チームと DevOps チームに承認済みの WAF ポリシーと、NGINX App Protect WAF インスタンスのセルフサービス プロビジョニングと管理を提供できます。 さらに良いことに、単一のコントローラー インスタンスで複数のチームをサポートできます。
  • 開発チームと DevOps チームは、データ プレーンでポリシーを適用する NGINX App Protect WAF インスタンスのポリシーや構成を詳細に理解する必要なく、使い慣れたコントローラー API と GUI を使用して、承認された WAF ポリシーをアプリに適用できます。
管理プレーンで動作する NGINX Controller App Security Add-On とデータプレーンで動作する NGINX App Protect WAF を示すトポロジー図
コントローラ アプリ セキュリティは、NGINX App Protect WAF を使用してデータ プレーンにポリシーを適用します

コントローラ アプリ セキュリティのための F5 WAF ポリシーの準備

アプリの最新化を進める中で、すべての F5 および NGINX WAF 実装で一貫したポリシーを維持できるように、 NGINX App Protect ポリシー コンバーターを提供しています。 F5 Advanced WAF ポリシー (XML 形式) を NGINX App Protect WAF ポリシー (JSON 形式) に変換します。 次のセクションで説明するように、変換されたポリシーを Controller App Security に渡すことができます。

F5 Advanced WAF ポリシーを NGINX App Protect WAF ポリシーに変換する手順と、手順へのリンクを以下に示します。

F5 Advanced WAF ポリシーを NGINX App Protect ポリシーに変換する手順を示す図
F5 Advanced WAF ポリシーを NGINX App Protect ポリシーに変換する
  1. NGINX App Protect Policy Converter の Docker イメージをダウンロードしてインストールします
  2. F5 Advanced WAF ポリシーをエクスポートします(手順は「BIG‑IP ASM セキュリティ ポリシー」を参照していますが、F5 Advanced WAF ポリシーにも適用されます)。
  3. ポリシーを JSON 形式の NGINX App Protect WAF ポリシーに変換します

NGINX アプリ保護 WAF ポリシーをコントローラー アプリ セキュリティに組み込む

アプリケーション配信モジュールのバージョン 3.20 の Controller App Security では、 BYO App Protect ポリシープロセスを使用して NGINX App Protect WAF ポリシーを導入し、管理されているすべての NGINX App Protect インスタンスに配布できます。 NGINX App Protect WAF ポリシーはネイティブのものでも、前のセクションで説明したように F5 Advanced WAF から変換したものでもかまいません。

BYO App Protect ポリシー プロセスでは、カスタム NGINX App Protect WAF ポリシーを含むセキュリティ関連ポリシーの論理コンテナである、セキュリティ戦略と呼ばれるコントローラ オブジェクトが使用されます。 次に、アプリ内のセキュリティ戦略を参照して、関連付けられた WAF ポリシーをアプリに適用します。

BYO App Protect ポリシー プロセスの詳細については、製品ドキュメントを参照してください。

選択したインターフェースについては、次のセクションの手順を参照してください。

手順を完了すると、BYO App Protect ポリシー プロセスを使用して Controller App Security に取り込まれた WAF ポリシーの更新が、関連付けられたセキュリティ戦略を参照するすべてのアプリ コンポーネントに自動的に伝播されます。

アプリケーション配信モジュールのバージョン 3.20 の Controller App Security では、単一のファイルで定義された WAF ポリシーのみがサポートされます。 外部参照を使用した WAF ポリシー (複数のファイルで表される WAF ポリシー) のサポートは、将来のリリースで計画されています。

APIの使用

コントローラ API を使用して WAF ポリシーをコントローラ App Security に取り込むには、次の手順を実行します。

  1. NGINX App Protect WAF ポリシーをPUTリクエストとともにセキュリティ ポリシー エンドポイントに渡します。

    https://{{CONTROLLER_FQDN}}/api/v1/security/policies/{{policy}}
    

    次のような JSON オブジェクトを使用します。

    {
    "メタデータ": {
    "名前": "lowriskapppolicy",
    "表示名": 「低リスク アプリ保護ポリシー」、
    「説明」: 「社内の低リスクアプリ向けの企業 WAF ポリシー」
    
    },
    「desiredState」: {
    「content」: {
    「policy」: {
    「name」: 「lowriskapppolicy」
    
    「template」: {
    「name」: "POLICY_TEMPLATE_NGINX_BASE"
    },
    "applicationLanguage": "utf-8",
    "enforcementMode": "blocking",
    "signatures": [
    {
    "signatureId": 123458888,
    「有効」: false
    },
    {
    「署名 ID」: 304500123,
    「有効」: false
    }
    ],
    }
    }
    }
    }
    }
    
  2. セキュリティ戦略エンドポイントへのPUTリクエストを使用して WAF ポリシーを参照するセキュリティ戦略を作成します。

    https://{{CONTROLLER_FQDN}}/api/v1/security/strategies/{{strategy}}
    

    次のような JSON オブジェクトを使用します。

    {
    "メタデータ": {
    "名前": "lowriskstrategy",
    "表示名": 「低リスクアプリ戦略」、
    「説明」: 「社内の低リスクアプリに関する企業戦略」
    
    },
    "desiredState": {
    "content": {
    "securityPolicyRef": "/security/policies/lowriskapppolicy"
    }
    }
    }
    
  3. WAF ポリシーをアプリ コンポーネント (アプリのアプリ URI など) に適用し、アプリ コンポーネント エンドポイントへのPUTまたはPOSTリクエストでセキュリティ戦略を参照します。

    https://{{Controller_FQDN}}/api/v1/services/environments/{{env}}/apps/{{app}}/components/{{component}}
    

    次のような JSON オブジェクトを使用します。

    {
    "metadata": {
    "name": "main"
    },
    "desiredState": {
    "ingress": {
    "uris": {
    "/": {
    } 
    },
    . . . 
    
    "security": {
    "strategyRef": {
    "ref": "/security/strategies/lowriskstrategy"
    },
    "waf": {
    "isEnabled": true
    }
    },
    . . . 
    }
    

GUIの使用

コントローラ GUI を使用して WAF ポリシーをコントローラ App Security にインポートして適用するには、次の手順を実行します。

  1. 「セキュリティ戦略の作成」ページでセキュリティ戦略を作成します。

  2. NGINX App Protect WAF ポリシーがすでにコントローラで使用可能な場合は、ポリシーフィールドのドロップダウン メニューから選択します。

    まだリストされていない場合は、 「+ 新規作成」をクリックします。 表示される「セキュリティ ポリシーの作成」ポップアップ ウィンドウで、JSON 形式の NGINX App Protect WAF ポリシーを含むファイルをアップロードします。

  3. WAF ポリシーを適用するアプリの「アプリ コンポーネントの編集」ページで、関連するセキュリティ戦略を選択します。

NGINX コントローラ内でのポリシーの共有

BYO App Protect ポリシー プロセスを使用してポリシーを Controller App Security に取り込んだ後は、異なるチームによって管理されている場合でも、Controller で定義されているすべてのアプリ間でポリシーを共有できます。 複数のコントローラ アプリ コンポーネント (または URI などのアプリのサブコンポーネント) が同じポリシーを参照するようにすると、多くのアプリと API にわたってセキュリティ体制を標準化できます。

複数のアプリが同じ BYO App Protect WAF ポリシーを参照する方法を示す図
複数のアプリが同じポリシーを参照できる

コントローラは、WAF ポリシーの管理とバージョン管理を集中化します。 新しいバージョンのポリシーを公開すると、それを参照するすべてのコントローラ アプリ コンポーネントが更新され、操作が大幅に簡素化されます。

まとめ

F5 WAF テクノロジー プラットフォームにより、同じ WAF 保護ポリシーの移植性と再利用性が実現し、アプリ全体で標準化されたセキュリティ体制が実現します。 この設計哲学は、F5 および NGINX WAF ソリューションによって保護されるすべてのユースケースのサポートにも役立ち、アプリ セキュリティの管理と展開をより迅速、容易、かつ繰り返し可能にします。

Controller App Security の BYO App Protect ポリシー機能 (Controller ADM 3.20 で利用可能) を使用すると、カスタム NGINX App Protect WAF ポリシーを使用できるようになり、NGINX App Protect WAF または F5 Advanced WAF を使用して構築された堅牢で一貫性のある実証済みのポリシーで新しいアプリを簡単に保護できるようになります。 何よりも、BYO App Protect Policy と Controller App Security を使用すると、検証済みの単一のポリシーを多数のアプリに適用できるため、ポリシー変更プロセスが大幅に簡素化され、効率化されます。

NGINX コントローラーは、セキュリティ チームがアプリ チームにセルフサービス モデルでセキュリティを提供できるようにし、組織の生産性とセキュリティの両方を強化し続けます。

NGINX コントローラー アプリ セキュリティを自分で試してみませんか? 今すぐ30 日間の NGINX コントローラー無料トライアルを開始するか、使用事例についてご相談ください


「このブログ投稿には、入手できなくなった製品やサポートされなくなった製品が参照されている場合があります。 利用可能な F5 NGINX 製品およびソリューションに関する最新情報については、 NGINX 製品ファミリーをご覧ください。 NGINX は現在 F5 の一部です。 以前の NGINX.com リンクはすべて、F5.com の同様の NGINX コンテンツにリダイレクトされます。"