Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OCI WAFの設定と動作確認

OCI WAFの設定と動作確認

oracle4engineer

February 12, 2021
Tweet

More Decks by oracle4engineer

Other Decks in Technology

Transcript

  1. インターネット通信の仕組み Copyright © 2020, Oracle and/or its affiliates 4 ドメイン名・IPアドレスなどの情報を関

    連付けて保持 DNS サーバー www A xxx.xx.xxx.x7 mail A xxx.xx.xxx.13 shopping A xxx.xx.xxx.17 aaa A xxx.xx.xxx.23 bbb A xxx.xx.xxx.31 … … … クライアント http://www.wafdemo.tk🔍 ドメイン名:wafdemo.tk IPアドレス:xxx.xx.xxx.x7 Aレコード:www.wafdemo.com ③取得したIPアドレスのWebサーバーへ接続 xxx.xx.xxx.x7 Webサーバー ④HTTPレスポンス
  2. Web Application Firewall (WAF)を利用したインターネット通信 Webアプリケーションの脆弱性を悪用した攻撃からWebサイトを保護するセキュリティ対策 5 Copyright © 2020, Oracle

    and/or its affiliates DNS サーバー クライアント http://www.wafdemo.tk🔍 ➄取得したIPアドレスのWeb サーバー(WAF)へ接続 ⑦Webサーバー(WAF)へ通信を転送 xxx.xx.xxx.x7 Webサーバー ⑧HTTPレスポンス ⑧HTTPレスポンス WAF ドメイン名:wafdemo.tk CNAMEレコード:www.wafdemo.tk → Oracle WAF生成のFQDNに変換し て再問い合わせ ⑥セキュリティチェック ②CNAMEレコードでWAFアド レスに別名参照されている www CNAME xxxxxxxxx.yyy.zzz.waas.oci.oraclecloud.net mail A 150.136.124.13 shopping A 150.136.124.17 aaa A 150.136.124.23 bbb A 150.136.124.31 192.xx.xx.155 www.wafdemo.tkは xxx.xx.xxx.x7 へ転送と設定済み waas.oci.oraclecloud.netを管理するDNSサーバー(Oracleが自動管理) xxxxxxxxx.yyy.zzz. A 192.xx.xx.155 ③参照された別名を他 のDNSに問い合わせ
  3. インターネット通信の比較 ✓ WAFなし ① DNSサーバーに対してドメイン(Aレコード)のIPア ドレスを問い合わせ ② DNSサーバーがWebサーバーのIPアドレスを回 答 ③

    取得したIPアドレスに通信 ✓ WAFあり ① DNSサーバーに対してドメイン(CNAMEレコー ド)のIPアドレスを問い合わせ ② DNSサーバーはWebサーバーのIPアドレスでは なく、WAFのIPアドレスを回答 ③ 取得したWAFのIPアドレスに通信 ④ WAFによるセキュリティチェック ⑤ WAFが通信をWebサーバーへ転送 6 Copyright © 2020, Oracle and/or its affiliates DNS サーバー クライア ント Web サーバー WAF DNS サーバー クライ アント Web サー バー
  4. OCI WAFの責任共有モデル Oracle •新しい脆弱性に基づく新保護 ルールの作成 •WAFインフラストラクチャのパッチ と更新 •分散型サービス(DDoS)攻撃の モニタリング •WAFの高可用性(HA)の提供

    お客様 •WAF関連の設定・構築(DNS, イングレスルール, ネットワーク) •保護対象のWebアプリケーション へのWAFポリシーの設定 •保護ルール推奨事項の確認と受 け入れ(オフ/検知/ブロック) •WAFアクセス制御とBot管理 ルールの設定 7 Copyright © 2020, Oracle and/or its affiliates 異常/望 まれない 挙動のロ グのモニタ リング
  5. 設定手順例について 今回はWAFの動作を確認するための設定手順の一例を紹介します。 実際のDNS設定等についてはネットワークやセキュリティ要件、ホスティングの関係から様々なパターンが考えられますが、 本資料では便宜的に • Webサーバー(Apache)を自分で立ち上げ • DNSはフリーサービス(freenom)で独自ドメインを取得 • WAFはOCI

    のエッジサービスで提供されているWAFを使用 の構成でWAFの動作を確認します。 なおWebサーバーの立ち上げ手順は本資料では省略いたします。 また、実稼働済みの環境でWAFを設定する際は、多くの場合で自ドメインの取得は省略されます。 本資料はOCI WAFの動作確認、OCI WAFの学習にお役立てください。 9 Copyright © 2020, Oracle and/or its affiliates
  6. 設定手順 1. ドメイン取得 2. Aレコード登録 3. WAFポリシー作成 4. CNAME登録 5.

    保護ルール設定 Copyright © 2020, Oracle and/or its affiliates 11
  7. 設定手順 1. ドメイン取得 2. Aレコード登録 3. WAFポリシー作成 4. CNAME登録 5.

    保護ルール設定 Copyright © 2020, Oracle and/or its affiliates 12 無料ドメインサービス、freenomで 独自ドメインを取得
  8. 1. ドメイン取得 WAFの動作上、CNAMEレコードの設定が可能なDNSサービスが必要です 14 Copyright © 2020, Oracle and/or its

    affiliates 無料ドメインサービスにアクセスし、使用したいドメインを入力 https://www.freenom.com/ja/index.html?lang=ja ※freenomでは.tk, .ml, .ga, .cf, .gqのドメインが取得可能
  9. 設定手順 1. ドメイン取得 2. Aレコード登録 3. WAFポリシー作成 4. CNAME登録 5.

    保護ルール設定 Copyright © 2020, Oracle and/or its affiliates 19 FreenomにWebサーバーのIPアドレスをA レコードとして登録し、DNSの動作を確認
  10. 2. Aレコード登録 24 Copyright © 2020, Oracle and/or its affiliates

    Aレコードを登録したドメインで、アプリにアクセスできることを確認 ※アクセスするURL: <Aレコードで登録したName>. <取得したドメイン> 例) my.jennywafdemo.tk
  11. 設定手順 1. ドメイン取得 2. Aレコード登録 3. WAFポリシー作成 4. CNAME登録 5.

    保護ルール設定 Copyright © 2020, Oracle and/or its affiliates 26 OCI WAFサービスでWAFポリシーを作成。A レコードの代わりにWAFのドメインとして登録 するCNAMEが生成されます。
  12. 3. WAFポリシー作成 27 Copyright © 2020, Oracle and/or its affiliates

    🈪→セキュリティ→Webアプリケーション・ファイアウォールへ移動
  13. 3. WAFポリシー作成 Copyright © 2020, Oracle and/or its affiliates 29

    ※すぐには反映されません。 5分程度でポリシーがアクティブになります。
  14. 3. WAFポリシー作成 ポリシーがアクティブなことを確認 Copyright © 2020, Oracle and/or its affiliates

    30 ポリシーがアクティブになると、 CNAMEが自動生成されます。次の 手順でCNAMEをDNSに登録する ため、CNAMEをメモしてください。
  15. 設定手順 1. ドメイン取得 2. Aレコード登録 3. WAFポリシー作成 4. CNAME登録 5.

    保護ルール設定 Copyright © 2020, Oracle and/or its affiliates 32 DNSにCNAMEレコードを登録。 既に稼働済みのサイトの場合はここでWWWのA レコードを削除し、CNAMEに変更することになりま す。設定を誤ると、Webサイトが表示されなくなる のでご注意ください。
  16. 4. CNAME登録 34 Copyright © 2020, Oracle and/or its affiliates

    DNSにCNAMEレコード名と値を追加し、変更を保存
  17. 設定手順 1. ドメイン取得 2. Aレコード登録 3. WAFポリシー作成 4. CNAME登録 5.

    保護ルール設定 Copyright © 2020, Oracle and/or its affiliates 36 OCIコンソールから保護ルールを有効 化
  18. 5. 保護ルール設定 a. 保護ルールの有効化 37 Copyright © 2020, Oracle and/or

    its affiliates WAFポリシーの保護ルールをクリック
  19. 5. 保護ルール設定 a. 保護ルールの有効化 38 Copyright © 2020, Oracle and/or

    its affiliates Shellshock exploit attemptを保護ルールから選択し、ブロックをクリック ※Shellshock exploit attemptはシェル からの攻撃コマンドを指します
  20. 5. 保護ルール設定 b. 保護ルール設定の編集 41 Copyright © 2020, Oracle and/or

    its affiliates ブロック・アクションを「エラー・ページを表示」に変更
  21. 5. 保護ルール設定 b. 保護ルール設定の編集 42 Copyright © 2020, Oracle and/or

    its affiliates 変更内容を確認して「変更の保存」をクリック ※アプリを攻撃すると、 Access to the website is blocked と表示される設定に変更
  22. 5. 保護ルール設定 c. 保護ルールの公開 43 Copyright © 2020, Oracle and/or

    its affiliates 「すべて公開」をクリックし、変更内容を公開
  23. 5. 保護ルール設定 Copyright © 2020, Oracle and/or its affiliates 44

    ※通常10~20分ほどで公開が完了 します。
  24. 2. 攻撃コマンドを実施 保護ルールで設定した エラー・メッセージが表示される Copyright © 2020, Oracle and/or its

    affiliates 48 (){ :;}がshellshockを指します。 絶対パスのcatコマンドで、Webサーバーが起動しているOSの /etc/passwdの中身の表示する攻撃コマンドになります。