We've been making changes to how we organize and display our docs. Our work isn't done but we'd love your feedback.
Getting started
Basics
Domains & Origins
Performance

Configuration
Basics
Conditions
Dictionaries
Domains & Origins
Request settings
Cache settings
Headers
Responses
Performance
Custom VCL
Image optimization
Video

Security
Access Control Lists
Monitoring and testing
Securing communications
TLS
Web Application Firewall

Integrations
Logging endpoints
Non-Fastly services

Diagnostics
Streaming logs
Debugging techniques
Common errors

Account info
Account management
Billing
User access and control

Reference

    Fastly WAF ルールセットの更新とメンテナンス

      Last updated August 30, 2018

    Fastly はサイトを攻撃から防御するための Fastly WAF ルールセットの更新を提供します。

    OWASP および Trustwave のルールセットの更新は以下の手順で行われます:

    1. Fastly は定期的に OWASP コアルールセットと Trustwave ルールセットに更新がないかを確認します。
    2. Fastly はルールをキャッシュノード上で実行するため Varnish Configuration Language (VCL) に翻訳します。
    3. Fastly はルールが適切に動作するか Fastly プラットフォーム上でテストします。ルールは偽陽性を減らす一方で、効率性とパフォーマンスが最大になるよう調整されます。
    4. 問題が発見された場合は修正が行われます。
    5. ルールセットの更新を Fastly のグローバルネットワークに展開します。
    6. Fastly は顧客にルールセットの更新と、ルールセットの更新手順を通知します。

    ルールセットのメンテナンス

    以下のテーブルは、各ルールセットの更新と変更内容について説明します:

    ID バージョン/日付 変更の種別 影響のあるルールセット
    3vnl3cwPda9Q3WYCDRuGW v10
    2018-09-05
    • 新規 OWASP ルール 932190 の追加。低いパラノイアレベルにおいて RCE (OS ファイルへのアクセスを試みる) 攻撃の軽減
    • 新規 OWASP ルール 941110 の追加。スクリプトタグを用いた XSS 攻撃の軽減
    • 新規 OWASP ルール 944100 の追加。Java deserialization 脆弱性 (CVE-2017-9805, CVE-2017-10271) を用いた RCE 攻撃の軽減
    • 新規 OWASP ルール 944110 の追加。Java process spawn 脆弱性 (CVE-2017-9805) を用いた RCE 攻撃の軽減
    • 新規 OWASP ルール 944120 の追加。Java serialization (CVE-2015-5842) を用いた RCE 攻撃の軽減
    • 新規 OWASP ルール 944240 の追加。Java serialization (CVE-2015-5842) を用いた RCE 攻撃の軽減
    • 新規 OWASP ルール 944130 の追加。疑わしい Java クラスの検知
    • 新規 OWASP ルール 944250 の追加。Java method を用いた RCE 攻撃の検知
    • 新規 OWASP ルール 944200 の追加。Java serializationのきっかけに用いられるマジックバイトの検知
    • 新規 OWASP ルール 944210 の追加。Java serializationのきっかけとなるBase64 エンコードされたマジックバイトの検知
    • 新規 OWASP ルール 944220 の追加。脆弱性のある Java クラスの利用を検知
    • 新規 OWASP ルール 944300 の追加。疑わしいキーワードにマッチした Base64 エンコードされた文字列の検知
    • 新規 Fastly 内部ルール 4134010 の追加。CVE-2018-11776 Apache Struts v2 脆弱性の軽減
    • 新規 Fastly 内部ルール 4113010 の追加。疑わしい X-Rewrite-URL ヘッダーの検知
    • 新規 Fastly 内部ルール 4113020 の追加。疑わしい X-Original-URL ヘッダーの検知
    • 新規 Fastly 内部ルール 4113030 の追加。リクエストにある ESI ディレクティブの検知
    • 新規 Fastly 内部ルール 4113050 の追加。ボティーにある ESI ディレクティブの検知
    • Trustwave ルール 2200000 の削除。IP ブラックリスト
    • Trustwave ルール 2200002 の削除。TOR Exit Nodes ブラックリスト
    • OWASP
    • Fastly ルール
    • Trustwave
    67LUkBwzFzESzumlU2L0T8 v9
    2018-08-05
    • 新規 Fastly 内部ルール 4134010 の追加。XXE 攻撃 への対応
    • 新規 Fastly 内部ルール 4112019 の追加。CtrlFunc Botnet 攻撃への対応
    • 新規 Fastly 内部ルール 4113001 の追加。疑わしい X-Forwarded-Host ヘッダーへの対応
    • 新規 Fastly 内部ルール 4113002 の追加。X-Forwarded-Host と Host ヘッダーの不一致への対応
    • 新規 Fastly 内部ルール 4120010 の追加。クライアントの X-Forwarded-Host ヘッダーに含まれる不正文字検知
    • 新規 Fastly 内部ルール 4120011 の追加。クライアントの X-Forwarded-For ヘッダーに含まれる不正文字検知
    • OWASP ルール 930130 の更新。 制限ファイルの追加
    • OWASP
    • Fastly ルール
    552NEtnDyzucKd3vTjLgFC v8
    2018-05-15
    • OWASP ルール 920230, 920260, 920270, 920271, 920272, 920273, 920274, 920360 にログデータフィールドを追加
    • 新規 Fastly 内部ルール 4170001 の追加。Drupal sa-core-2018-004 攻撃への対応
    • しきい値ルール 1010090 メッセージの調整
    • OWASP
    • Fastly ルール
    6LG4xleIDKWLblCJczGpi9 v7
    2018-03-28
    • Drupal sa-core-2018-002 アタックを緩和する新規 Fastly 内部ルール 4170000 の追加
    • Fastly internal 4112060 Wordpress PingBack ルールの更新
    • DDos Bot からの攻撃を防御する Fastly 内部ルール(ルールID 4112013 および 4112016)の更新
    • Fastly ルール
    1D0OPmXjm6ZMOe9rMGAeQj v6
    2018-01-25
    • Trustwave ルールを最新のバージョンに更新
    • DDos Bot からの攻撃を防御する Fastly 内部ルール(ルールID 4112010-4112018、4112030、4112031、および 4112060)の追加
    • チャンク形式での2 KB を超える HTTP POST ボディをブロックするための、(既存ルール 10040 を補完する)Fastly 内部ルール 10041 の追加。
    • Trustwave
    • Fastly ルール
    2YXlqZJQxMkWyAjM4kggR3 v5
    2017-11-13
    • OWASP 3.0.2 CRS ルールセットへのアップデート
    • 最新の Trustwave ルールの適用
    • 2 kibibyte を超えるサイズの HTTP POST をブロックするための Fastly 内部ルール 10040 の追加。
    • OWASP
    • Trustwave
    • Fastly ルール
    2vyJNHO7fngQYJXU8UGUY6 v4
    2017-10-11
    • ルール 932140 の更新。Windows における SAML 偽陽性 への対応
    • いくつかの OWASP における変換不足の再設定
    • CVE-2017-9805 を防ぐための Fastly 内部ルールの追加
    • OWASP
    • Fastly ルール
    4Z09wgjp7do8NrOIzlckFS v3
    2017-08-15
    • しきい値変数の再設定: http_violation_score_threshold, lfi_score_threshold, php_injection_score_threshold, rce_score_threshold, rfi_score_threshold, session_fixation_score_threshold, sql_injection_score_threshold, xss_score_threshold
    • 不要なしきい値変数の削除: brute_force_counter_threshold, dos_counter_threshold, outbound_anomaly_score_threshold, trojan_score_threshold
    • OWASP ルールセットへの追加バグ修正
    • OWASP
    • Trustwave
    39EE4tZnEM9Q8hxFJMHYU5 v2
    2017-04-27
    • OWASP
    • Trustwave
    • Fastly ルール

    ルールセットの更新手順

    最新のルールセットを利用するには、以下の手順を実施して下さい:

    現在のルールセットの確認

    WAF のルールセットを更新する前に、現在有効となっているルールセットの値を記録することを推奨します。記録した情報は、WAF を前のバージョンに戻すために利用することが出来ます。

    現在有効なルールセットを確認するためには以下の cURL コマンドをターミナルアプリケーションなどから実行して下さい:

    1
    2
    
    curl -s -H Fastly-Key:<your Fastly API token> -H Accept:application/vnd.api+json \
          https://api.fastly.com/service/<your Fastly service ID>/version/<your service version number>/wafs/<your WAF ID>
    

    cURL の実行結果は以下のようになります。relationships オブジェクトに<Your active rules ID>(現在アクティブなルールセット ID) が含まれまるので、この ID を記録して下さい。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    
    {
        "data": {
            "attributes": {
                "last_push": null,
                "prefetch_condition": null,
                "response": null,
                "version": "1"
            },
            "id": "<your WAF ID>",
            "relationships": {
                "configuration_set": {
                    "data": {
                        "id": "<Your active rules ID>",
                        "type": "configuration_set"
                    }
                }
            },
            "type": "waf"
        }
    }
    

    ルールセットのバージョンを変更する

    WAF のルールセットのバージョンを変更するには、以下の手順を実施して下さい:

    1. 適用したい新しいルールセットの ID をルールセットのメンテナンスから確認して下さい。
    2. 利用中の端末上で、新しいファイル updated_relationship.json を作成して下さい。
    3. 以下の JSON を作成したファイルにコピーして <your rules ID> の箇所を、新たに適用したいルールセットの ID と置き換えて下さい。:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      
      {
          "data": {
              "id": "<your WAF ID>",
              "relationships": {
                  "configuration_set": {
                      "data": {
                          "id": "<your rules ID>",
                          "type": "configuration_set"
                      }
                  }
              },
              "type": "waf"
          }
      }
      
    4. updated_relationship.json ファイルに変更を保存して下さい。
    5. WAF のルールセットのバージョンを変更するために、ファイルを保存したディレクトリで、ターミナルから以下の cURL コマンドを実行して下さい。:

      1
      2
      3
      
      curl -s -X PATCH -H Fastly-Key:<your Fastly API token> -H Accept:application/vnd.api+json \
        -H Content-Type:application/vnd.api+json -d @updated_relationship.json \
        https://api.fastly.com/service/<your Fastly service ID>/version/<your service version number>/wafs/<your WAF ID>
      
    6. WAF のルールセットバージョンの変更には少し時間がかかります。以下の cURL コマンドで、変更の進捗状況を確認して下さい。:

      1
      2
      
      curl -s -H Fastly-Key:<your Fastly API token> -H Accept:application/vnd.api+json \
            https://api.fastly.com/service/<your Fastly service ID>/version/<your service version number>/wafs/<your WAF ID>
      

       新しいルールセットの ID が出力されれば、処理は完了しています。

    更新したルールの適用

    WAF へのルールセットの更新が確認出来たら、以下の手順で更新された WAF ルールセットを設定に適用して下さい:

    1. ルールセットの更新のために、ターミナルから以下の cURL コマンドを実行して下さい。

      1
      2
      3
      
      curl -s -X PATCH -H Fastly-Key:<your Fastly API token> -H Accept:application/vnd.api+json \
        -H Content-Type:application/vnd.api+json -d '{"data":{"id":"<your WAF ID>","type":"ruleset"}}' \
        https://api.fastly.com/service/<your Fastly service ID>/wafs/<your WAF ID>/ruleset
      

      以下のようなレスポンスが返却されます:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      
      {
          "data": {
              "id": "WAF_ID",
              "type": "ruleset"
          },
          "links": {
              "related": {
                  "href": "https://api.fastly.com/service/<your Fastly service ID>/wafs/<your WAF ID>/update_statuses/<update status ID>"
              }
          }
      }
      
    2. 最新のルールを WAF に適用するには少し時間がかかります。処理の進捗状況を確認するためには、前ステップで表示された URL を cURL コマンドから実行して下さい。:    

      1
      2
      
      curl -s -H Fastly-Key: FASTLY_API_TOKEN -H Accept:application/vnd.api+json \
      https://api.fastly.com/service/<your Fastly service ID>/wafs/<your WAF ID>/update_statuses/<update status ID>
      

      処理が完了すると、レスポンスの waf_update_statusstatuscomplete となります。

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      
      {
          "data": {
              "attributes": {
                  "completed_at": "2017-04-05 18:47:28 UTC",
                  "created_at": "2017-04-05 18:47:27 UTC",
                  "message": null,
                  "status": "complete",
                  "updated_at": "2017-04-05 18:47:28 UTC"
              },
              "id": "<updated rules ID>",
              "type": "waf_update_status"
          }
      }
      

    前バージョンのルールセットへの復帰

    WAF ルールセットの更新に問題があった場合、前バージョンのルールセットへの復帰が可能です。 現在のルールセットの確認 で記録したルールセットの ID を利用して、ルールセットのバージョンを変更する更新したルールの適用に記載された手順を実施して下さい。

    Back to Top

    Additional resources: