Dokumentace Domluvit pilot

Upgrade WAF managed rules

Dne 2022-05-04 zahájil Cloudflare upgrade z předchozí verze spravovaných pravidel WAF na nový WAF Managed Rules, což umožnilo první skupině způsobilých zón provést migraci. V současné době mohou na WAF Managed Rules přejít všechny zóny, včetně partnerských účtů.

Cloudflare postupně převádí všechny zóny na novou verzi WAF Managed Rules. Proces převodu můžete pro danou zónu spustit ručně i v Cloudflare dashboardu nebo přes API. Upgrade je nevratný, jakmile provedete upgrade na nové WAF Managed Rules, nelze se vrátit k předchozí verzi.

Pokud používáte starý dashboard, po dokončení upgradu se vaše pravidla zobrazí v jiném uživatelském rozhraní v Security > WAF > Spravovaná pravidla karta. Pokud používáte nový bezpečnostní dashboard, vaše aktualizovaná pravidla se zobrazí v Security > Bezpečnostní pravidla.

Po upgradu navíc přestanou fungovat rozhraní API pro spravovaná pravidla WAF.

Hlavní výhody

Nová verze WAF Managed Rules nabízí oproti předchozí verzi následující výhody:

Další informace o výhodách WAF Managed Rules najdete v našem blogový příspěvek ↗.


Dopad upgradu

Budete moci upgradovat všechny své zóny, které nemají přepsání WAF založená na URI. Jakmile přejdete na nový WAF, na vaši zónu se bude vztahovat stejná ochrana.

Většina nastavení konfigurace z předchozí verze spravovaných pravidel WAF bude převedena do nové verze, ale některá konkrétní nastavení, která byla původně definována v OWASP ModSecurity Core Rule Set, se ztratí: v případě potřeby je budete muset znovu vytvořit v novém WAF Managed Rules.

Pro uživatele API platí, že rozhraní API pro správu předchozí verze spravovaných pravidel WAF přestanou po upgradu fungovat. Ke správě nových WAF Managed Rules musíte použít Rulesets API.

Konfigurace, které budou upgradovány

Proces upgradu vytvoří ekvivalentní konfiguraci pro následující nastavení spravovaných pravidel WAF:

Konfigurace sady pravidel OWASP bude částečně upgradována. Podrobnosti najdete v následující části.

Konfigurace, které se v procesu upgradu ztratí

Proces upgradu částečně migruje nastavení OWASP ModSecurity Core Rule Set dostupného v předchozí verzi spravovaných pravidel WAF.

Následující nastavení OWASP bude migrováno:

Následující nastavení OWASP bude ne migrovat, protože mezi pravidly v obou verzích neexistuje přímá rovnocennost:

Chcete-li tato nastavení nahradit, budete muset znovu nakonfigurovat Cloudflare OWASP Core Ruleset v WAF Managed Rules podle svých potřeb, totiž případná přepsání podle štítků nebo pravidel. Další informace o konfiguraci nového OWASP Core Ruleset naleznete v Cloudflare OWASP Core Ruleset.

Konfigurace, které vám zabrání v upgradu

Pokud má zóna WAF overrides založené na URI (dostupné pouze přes API), nebudete mít možnost upgradu na WAF Managed Rules. Pro upgrade na WAF Managed Rules musíte:

  1. Odstraňte veškeré existující WAF overrides založené na URI pomocí Odstranění WAF override operace.
  2. Postupujte podle procesu upgradu popsaného níže.

Změny v Cloudflare dashboardu

Po dokončení procesu upgradu zobrazí dashboard Cloudflare vaše pravidla v:

Na rozdíl od starých spravovaných pravidel WAF již neexistuje globální nastavení pro zapnutí nebo vypnutí WAF. Místo toho nasazujete každou spravovanou sadu pravidel samostatně ve své zóně.

Další informace o nasazení WAF Managed Rules na Cloudflare dashboardu najdete v Nasazení spravované sady pravidel WAF v dashboardu.

Změny API

Jakmile je upgrade dokončen, rozhraní API pro práci se spravovanými pravidly WAF přestane fungovat. Jedná se o následující API:

Chcete-li pracovat se spravovanými pravidly WAF (WAF Managed Rules), musíte použít Rulesets API. Další informace o nasazování WAF Managed Rules přes API najdete v Nasazení spravované sady pravidel WAF přes API (zóna).

Změny v Terraformu

Jakmile je upgrade dokončen, následující prostředky Terraformu pro konfiguraci spravovaných pravidel WAF přestane fungovat:

Tyto resource byly podporovány jen v Terraform Cloudflare provider do verze 3.35. Verze 4.x tyto zdroje již nepodporuje ↗.

Chcete-li spravovat konfiguraci nových WAF Managed Rules pomocí Terraformu, musíte použít cloudflare_ruleset ↗ prostředky.


Způsobilé zóny

Fáze 2 (od 2022-09-19)

Ve fázi 2 je k upgradu způsobilá každá zóna. Přesný postup upgradu se liší podle vašeho plánu Cloudflare.

Poznámka: Zóny, které mají WAF overrides založené na URI, které bylo možné spravovat pouze přes API, nebude možné okamžitě upgradovat na nové WAF Managed Rules. Před migrací musíte tato přepsání pravidel odstranit.

Fáze 1 (od 2022-05-04)

Ve fázi 1 se upgrade zpřístupnil podmnožině způsobilých zón, které musely splňovat následující požadavky:


Zahájit upgrade

Upgrade WAF můžete zahájit v Cloudflare dashboardu nebo přes API.

Používání dashboardu

  1. Přihlaste se do Cloudflare dashboard ↗, a vyberte svůj účet a zónu.

  2. A) Pokud používáte starý dashboard:

    • Přejděte na Security > WAF > Spravovaná pravidla kartě.

    B) Pokud používáte nový bezpečnostní dashboard:

    1. Přejděte na Bezpečnostní pravidla stránce.

      Přejděte na Bezpečnostní pravidla ↗
    2. Vyberte Přejít na upgrade spravovaných pravidel.

    Pokud jste zákazníkem plánu Enterprise, dashboard zobrazí následující banner:

    Banner pro upgrade zobrazený zákazníkům s plánem Enterprise.

    Pokud jste zákazníkem plánu Professional/Business, dashboard zobrazí následující banner:

    Banner pro upgrade zobrazený zákazníkům s plánem Pro/Business.
  3. V banneru upgradu vyberte Zkontrolovat konfiguraci. Tento banner se zobrazuje pouze v zónách, které splňují podmínky.

  4. Zkontrolujte navrhovanou konfiguraci WAF. Konfiguraci můžete upravit, například úprava konfigurace spravovaných pravidel WAF nebo vytvořením výjimky, abyste přeskočili vyhodnocení sad pravidel nebo konkrétních pravidel.

  5. Až dokončíte kontrolu, vyberte Nasadit k nasazení nové konfigurace WAF Managed Rules.

    Pokud jste zákazníkem plánu Professional/Business, Cloudflare nasadí novou konfiguraci WAF a poté deaktivuje předchozí verzi WAF. Proces upgradu může trvat několik minut.

    Pokud jste zákazníkem plánu Enterprise, obě implementace WAF budou aktivní současně, jakmile vyberete Nasadit, abyste mohli ověřit novou konfiguraci. Další pokyny najdete v krocích v následující sekci.

Ověřte novou konfiguraci WAF a dokončete upgrade (pouze pro zákazníky Enterprise)

Pokud jste zákazníkem plánu Enterprise, po nasazení nové konfigurace WAF budou obě implementace WAF aktivní současně. V této fázi (nazývané ověřovací režim) máte v dashboardu Cloudflare přístup k oběma implementacím WAF Managed Rules a banner s upozorněním na upgrade zůstane zobrazený, dokud upgrade nedokončíte. Nová verze WAF Managed Rules se bude spouštět před předchozí verzí.

  1. Pomocí aktuálního režimu ověřování zkontrolujte chování nové konfigurace WAF v Security Events. Další informace najdete v Analýza nového chování WAF v Security Events.

  2. Až dokončíte kontrolu konfigurace s oběma povolenými WAF, vyberte Připraveno k aktualizaci v banneru pro upgrade a poté vyberte Vypnutí předchozí verze. Tato operace dokončí upgrade a deaktivuje předchozí verzi WAF.

Po dokončení upgradu dashboard zobrazí všechna vaše aktualizovaná pravidla v:

Chcete-li zjistit, zda je upgrade dokončený, obnovte dashboard.

Používání API

  1. Použijte Zkontrolovat kompatibilitu s aktualizací WAF operaci a zjistěte, zda může zóna vzhledem ke své aktuální konfiguraci přejít na nový WAF:

    curl "https://api.cloudflare.com/client/v4/zones/{zone_id}/waf_migration/check?phase_two=1" \
    --header "Authorization: Bearer <API_TOKEN>"

    Příklad odpovědi:

    {
    	"result": {
    		"compatible": true,
    		"migration_state": "start"
    	},
    	"success": true,
    	"errors": [],
    	"messages": []
    }

    Pokud odpověď obsahuje "compatible": true, to znamená, že zóna může přejít na nový WAF a můžete pokračovat v procesu upgradu. Pokud odpověď obsahuje "compatible": false, to znamená, že vaše zóna vzhledem k aktuální konfiguraci není pro upgrade způsobilá. Více informací najdete v Způsobilé zóny s podrobnostmi.

  2. Chcete-li získat novou konfiguraci WAF odpovídající vaší aktuální konfiguraci, použijte Získání nové konfigurace WAF operace:

    curl "https://api.cloudflare.com/client/v4/zones/{zone_id}/waf_migration/config?phase_two=1" \
    --header "Authorization: Bearer <API_TOKEN>"

    Příklad odpovědi:

    {
    	"result": {
    		"name": "default",
    		"rules": [
    			{
    				"id": "",
    				"version": "",
    				"action": "execute",
    				"expression": "true",
    				"description": "",
    				"ref": "",
    				"enabled": true,
    				"action_parameters": {
    					"id": "efb7b8c949ac4650a09736fc376e9aee",
    					"overrides": {
    						"rules": [
    							{
    								"id": "23ee7cebe6e8443e99ecf932ab579455",
    								"action": "log",
    								"enabled": false
    							}
    						]
    					}
    				}
    			}
    		]
    	},
    	"success": true,
    	"errors": [],
    	"messages": []
    }

Konfigurace vrácená v uvedeném příkladu výše, která by odpovídala stávající konfiguraci předchozí verze WAF, obsahuje:

  1. (Volitelné, pouze pro zákazníky s plánem Enterprise) Pokud provádíte upgrade zóny Enterprise na WAF Managed Rules, můžete před dokončením upgradu přejít do ověřovacího režimu. V tomto režimu budou aktivní obě implementace WAF. Použijte Aktualizace vstupní sady pravidel zóny operaci a nezapomeňte zahrnout waf_migration=validation&phase_two=1 parametry řetězce dotazu:

    curl --request PUT \
    "https://api.cloudflare.com/client/v4/zones/{zone_id}/rulesets/phases/http_request_firewall_managed/entrypoint?waf_migration=validation&phase_two=1" \
    --header "Authorization: Bearer <API_TOKEN>" \
    --header "Content-Type: application/json" \
    --data '{
      "name": "default",
      "rules": [
        {
          "action": "execute",
          "expression": "true",
          "description": "",
          "enabled": true,
          "action_parameters": {
            "id": "efb7b8c949ac4650a09736fc376e9aee",
            "overrides": {
              "rules": [
                {
                  "id": "23ee7cebe6e8443e99ecf932ab579455",
                  "action": "log",
                  "enabled": false
                }
              ]
            }
          }
        }
      ]
    }'

    Po vyvolání tohoto koncového bodu API budou povolena jak spravovaná pravidla WAF, tak WAF Managed Rules. Zkontrolujte vzorkované protokoly v Security Events, zda nedochází k blokování legitimního provozu, a proveďte případné potřebné úpravy konfigurace WAF Managed Rules. Můžete například přidat přepis pro jediné pravidlo, které ho vypne nebo změní jeho akci.

  2. Chcete-li dokončit upgrade a zakázat spravovaná pravidla WAF, nastavte konfiguraci nového WAF pomocí nastavení, která jste získali v kroku 2 a případně upravili v kroku 3. Nezapomeňte zahrnout waf_migration=pending&phase_two=1 parametry řetězce dotazu.

    curl --request PUT \
    "https://api.cloudflare.com/client/v4/zones/{zone_id}/rulesets/phases/http_request_firewall_managed/entrypoint?waf_migration=pending&phase_two=1" \
    --header "Authorization: Bearer <API_TOKEN>" \
    --header "Content-Type: application/json" \
    --data '{
      "name": "default",
      "rules": [
        {
          "id": "",
          "version": "",
          "action": "execute",
          "expression": "true",
          "description": "",
          "ref": "",
          "enabled": true,
          "action_parameters": {
            "id": "efb7b8c949ac4650a09736fc376e9aee",
            "overrides": {
              "rules": [
                {
                  "id": "23ee7cebe6e8443e99ecf932ab579455",
                  "action": "log",
                  "enabled": false
                }
              ]
            }
          }
        }
      ]
    }'

Jakmile je poskytnutá konfigurace uložena a nová spravovaná pravidla WAF jsou zapnutá, předchozí verze spravovaných pravidel WAF se automaticky vypne kvůli přítomnosti waf_migration=pending&phase_two=1 parametry. Tím zajistíte, že vaše zóna zůstane během procesu aktualizace chráněna jednou z verzí WAF.


Analýza nového chování WAF v Security Events

Pro zákazníky s plánem Enterprise

Pokud jste zákazníkem plánu Enterprise, použijte ověřovací režim procesu upgrade WAF, abyste ověřili chování nové konfigurace WAF Managed Rules. Cloudflare aktivuje ověřovací režim po nasazení nové konfigurace WAF. V tomto režimu zůstává předchozí verze WAF stále aktivní, takže během procesu upgrade můžete ověřit chování nové konfigurace. Nová WAF Managed Rules se spustí před předchozí verzí.

Přejděte na vzorkované protokoly v Security Events v režimu ověřování a zkontrolujte následující:

Pro zákazníky s plánem Business/Professional

Zákazníci s plánem Business a Professional nemají přístup k ověřovacímu režimu, což znamená, že nové chování WAF budou moci zkontrolovat až po přechodu na nová spravovaná pravidla WAF.

Ve dnech následujících po upgradu zkontrolujte vzorkované protokoly v Security Events, zda WAF Managed Rules neblokují nějaké legitimní požadavky. Pokud zjistíte nesprávně zablokované požadavky, upravte akci odpovídajícího pravidla WAF na Log. Další informace o změně akce pravidla spravované sady pravidel naleznete v Konfigurace jednotlivých pravidel spravované sady pravidel.

Zkontrolujte také požadavky, které měly být zablokovány. V takovém případě zvažte vytvoření pravidlo firewallu nebo Vlastní pravidlo WAF k zablokování těchto požadavků.


Operace API

Přechod na nová spravovaná pravidla WAF prostřednictvím API vyžaduje volání následujících operací API:

Název Metoda + koncový bod Popis
Zkontrolovat WAF
kompatibilita s aktualizací
GET /zones/<ZONE_ID>/waf_migration/check?phase_two=1 Kontroluje, zda lze aktuální zónu s ohledem na její stávající konfiguraci aktualizovat na nový WAF.
Získání nového WAF
konfigurace
GET /zones/<ZONE_ID>/waf_migration/config?phase_two=1 Získá novou konfiguraci spravovaných pravidel WAF, která odpovídá aktuální konfiguraci (předchozí verzi spravovaných pravidel WAF).
Aktualizace zóny
vstupní sada pravidel
PUT /zones/<ZONE_ID>/rulesets/ phases/http_request_firewall_managed/entrypoint?waf_migration=<VALUE>&phase_two=1 Aktualizuje konfiguraci vstupní sady pravidel zóny pro http_request_firewall_managed fáze.
Dostupné hodnoty pro waf_migration parametr řetězce dotazu:
- pending / 1: Definuje novou konfiguraci WAF Managed Rules a deaktivuje předchozí verzi spravovaných pravidel WAF, jakmile se zadaná konfigurace uloží a nový WAF se aktivuje.
- validation / 2: (pouze pro zóny Enterprise) Definuje novou konfiguraci WAF Managed Rules a aktivuje nový WAF Managed Rules souběžně s předchozí verzí, čímž se přejde do ověřovacího režimu. Chcete-li ověřovací režim ukončit a dokončit upgrade, zavolejte stejný koncový bod API s waf_migration=pending.
Získání stavu WAF GET /zones/<ZONE_ID>/waf_migration/status Získá stav starých a nových spravovaných pravidel WAF pro zónu (povoleno/zakázáno). Odpověď obsahuje také aktuální stav (nebo režim) upgradu.

Chcete-li získat úplný endpoint, musíte před výše uvedené endpointy doplnit základní URL Cloudflare API:

https://api.cloudflare.com/client/v4


Možné chyby při upgradu

Kontaktujte Cloudflare Support k získání nápovědy k následujícím chybám:


Další zdroje

Konfigurace nových WAF Managed Rules pomocí Cloudflare API

Místo dřívějších API pro správu balíčků WAF, skupin pravidel a pravidel nyní musíte použít Rulesets API, abyste mohli programově nakonfigurovat WAF Managed Rules.

Můžete také vytvořit přepisy, abyste určili změny, které se mají provést nad rámec výchozí konfigurace WAF Managed Rules. Tyto změny budou mít přednost před výchozím chováním spravované sady pravidel.

Další informace najdete v následujících zdrojích:

Konfigurace nových WAF Managed Rules pomocí Terraformu

Místo dřívějších prostředků pro správu balíčků WAF, skupin pravidel a pravidel nyní musíte použít cloudflare_ruleset ↗ Terraform resource pro konfiguraci WAF Managed Rules. Příklady konfigurace najdete v Konfigurace WAF Managed Rules pomocí Terraformu.

Nahraďte konfiguraci pomocí cf-terraforming

Můžete použít cf-terraforming ↗ nástroj k vygenerování konfigurace Terraformu pro vaši novou konfiguraci WAF Managed Rules po upgradu. Poté nové prostředky importujte do stavu Terraformu.

Doporučené kroky pro nahrazení staré konfigurace spravovaných pravidel WAF v Terraformu novou konfigurací založenou na sadě pravidel pro nová WAF Managed Rules jsou následující:

  1. Následujícím příkazem vygenerujte všechny konfigurace sad pravidel pro zónu:

    cf-terraforming generate --zone <ZONE_ID> --resource-type "cloudflare_ruleset"
    resource "cloudflare_ruleset" "terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31" {
      kind    = "zone"
      name    = "default"
      phase   = "http_request_firewall_managed"
      zone_id = "<ZONE_ID>"
      rules {
        [...]
      }
      [...]
    }
    [...]
  2. Předchozí příkaz může vrátit také konfigurace dalších sad pravidel pro jiné produkty Cloudflare založené na Ruleset Engine. Vzhledem k tomu, že hledáte konfiguraci WAF Managed Rules, ponechte pouze Terraform resource pro http_request_firewall_managed fáze a uložit ji do .tf konfiguračního souboru. V dalším kroku budete potřebovat celý název prostředku.

  3. Importujte cloudflare_ruleset prostředek, který jste dříve identifikovali, do stavu Terraformu pomocí terraform import příkaz. Například:

    terraform import cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31 zone/<ZONE_ID>/3c0b456bc2aa443089c5f40f45f51b31
     cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Importing from ID "zone/<ZONE_ID>/3c0b456bc2aa443089c5f40f45f51b31"...
     cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Import prepared!
       Prepared cloudflare_ruleset for import
     cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Refreshing state... [id=3c0b456bc2aa443089c5f40f45f51b31]
    
     Import successful!
    
     The resources that were imported are shown above. These resources are now in
     your Terraform state and will henceforth be managed by Terraform.
  4. Spustit terraform plan, abyste ověřili, že Terraform nyní kontroluje stav nového cloudflare_ruleset prostředek, a to vedle dalších existujících prostředků, které již Terraform spravuje. Například:

    terraform plan
    
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Refreshing state... [id=3c0b456bc2aa443089c5f40f45f51b31]
    [...]
    cloudflare_waf_package.my_package: Refreshing state... [id=14a2524fd75c419f8d273116815b6349]
    cloudflare_waf_group.my_group: Refreshing state... [id=0580eb5d92e344ddb2374979f74c3ddf]
    [...]
  5. Ze stavu Terraformu odstraňte veškerý stav související s předchozí verzí spravovaných pravidel WAF:

    1. Následujícím příkazem najdete všechny prostředky související s předchozí verzí spravovaných pravidel WAF:

      terraform state list | grep -E '^cloudflare_waf_(package|group|rule)\.'
      cloudflare_waf_package.my_package
      cloudflare_waf_group.my_group
    2. Spustit terraform state rm ... v režimu dry-run, abyste zjistili dopad odstranění těchto zdrojů bez provedení jakýchkoli změn:

      terraform state rm -dry-run cloudflare_waf_package.my_package cloudflare_waf_group.my_group
      Would remove cloudflare_waf_package.my_package
      Would remove cloudflare_waf_group.my_group
    3. Pokud dopad vypadá správně, spusťte stejný příkaz bez -dry-run parametr, aby se prostředky skutečně odebraly ze stavu Terraformu:

      terraform state rm cloudflare_waf_package.my_package cloudflare_waf_group.my_group
      Removed cloudflare_waf_package.my_package
      Removed cloudflare_waf_group.my_group
      Successfully removed 2 resource instance(s).
  6. Po odebrání prostředků balíčku WAF, skupiny a pravidla ze stavu Terraform odstraňte cloudflare_waf_package, cloudflare_waf_group, a cloudflare_waf_rule prostředky z .tf konfiguračních souborů.

  7. Spustit terraform plan, abyste ověřili, že se prostředky, které jste odstranili z konfiguračních souborů, už nezobrazují. Neměly by vám zůstat žádné čekající změny.

    terraform plan
    cloudflare_ruleset.terraform_managed_resource_3c0b456bc2aa443089c5f40f45f51b31: Refreshing state... [id=3c0b456bc2aa443089c5f40f45f51b31]
    [...]
    
    No changes. Your infrastructure matches the configuration.
    
    Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed.

Podrobnosti o importu prostředků Cloudflare do Terraformu a používání cf-terraforming nástroj, přečtěte si následující zdroje:


Závěrečné poznámky

Koncept paranoia level neexistovala ve verzi OWASP (2.x) použité ve spravovaných pravidlech WAF. Na základě doporučení v průvodci OWASP proces migrace WAF nastaví paranoia level Cloudflare OWASP Core Ruleset na PL2.

Novou verzi WAF Managed Rules nelze zakázat pomocí Page Rules, protože Web Application Firewall: Off nastavení v Page Rules se vztahuje pouze na předchozí verzi WAF managed rules. Chcete-li zakázat nové WAF Managed Rules, musíte nakonfigurovat výjimky (známé také jako přeskakovací pravidla).

Požádejte o pilot zdarma

Domluvit pilot