-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[EDU-4603] feature: add WAF rules for specific cookie guide (#1178)
* feature: add guide - EN. * feature: add guide PT // links in EN * feature: add link to Guides page * Update allowlist-waf-cookie.mdx * refactor: only console flow * refactor: adjusts and comments * refactor: ending paragraph
- Loading branch information
1 parent
1ea97e0
commit cb32122
Showing
4 changed files
with
230 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
114 changes: 114 additions & 0 deletions
114
src/content/docs/en/pages/guides/waf/allowlist-waf-cookie.mdx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
--- | ||
title: How to configure WAF rules to allow requests with a specific cookie | ||
description: With this solution, your web application firewall can accurately filter and manage incoming requests based on specified cookies. | ||
meta_tags: edge, security, edge firewall, session cookies, WAF, WAF Rule Sets, allowlist | ||
namespace: documentation_secure_waf_specific_cookie | ||
permalink: /documentation/products/guides/secure/waf-rules-for-specific-cookie/ | ||
--- | ||
|
||
This guide implements a solution to configure security policies to manage requests based on specific cookie values through Edge Firewall and WAF Rules. With this solution, your firewall will manage incoming requests based on specified cookies, enabling granular control using multiple rule sets to the same endpoint, ensuring that legitimate traffic reaches your application. | ||
|
||
Implementing security policies based on specific cookie values can be helpful in scenarios such as receiving requests from authenticated users or third-party tools integrated into your infrastructure, demanding particular policies for these scenarios. | ||
|
||
To configure WAF rules to allow requests with a specific cookie, you must complete the following three main steps: | ||
|
||
- [Create a primary WAF Rule Set](#creating-a-primary-waf-rule-set). This will be your standard WAF instance and will attend to all the requests that aren't static. | ||
- [Create a secondary WAF Rule Set](#creating-a-secondary-waf-rule-set-for-a-specific-cookie). This will allow for a specific cookie and include a Custom Allowed Rule. | ||
- [Define two rules for Rule Engine for Edge Firewall](#configuring-rules-in-the-rules-engine-for-edge-firewall). This will define the criteria and behaviors to process the requests accordingly, combining your WAF rule sets. | ||
|
||
--- | ||
|
||
## Requirements | ||
|
||
To implement this solution, you must have: | ||
|
||
- An [existent edge firewall](/en/documentation/products/guides/secure/edge-firewall-configure-main-settings/) with the WAF add-on activated. | ||
|
||
--- | ||
|
||
## Creating a primary WAF Rule Set | ||
|
||
First, you must create your primary **WAF Rule Set** that will be used as a standard. | ||
|
||
1. Access [Azion Console](/en/documentation/products/guides/how-to-access-azion-console/) > **WAF Rules**. | ||
2. Click the **+ WAF Rule** button. | ||
3. Give a unique and descriptive name to identify your new WAF rule set. | ||
- This example will use `My Primary WAF - Standard`. | ||
4. Define your **Threat Type Configuration**, selecting the family threats and sensitivity. | ||
5. Make sure the **Active** switch is enabled. | ||
6. Click the **Save** button. | ||
|
||
--- | ||
|
||
## Creating a secondary WAF Rule Set for a specific cookie | ||
|
||
Still on the **WAF Rules** page, you must create a secondary **WAF Rule Set** including a [Custom Allowed Rule](/en/documentation/products/secure/edge-firewall/web-application-firewall/custom-allowed-rules/). To do so: | ||
|
||
1. Click the **+ WAF Rule** button to create the second instance. | ||
2. Give a unique and descriptive name to identify your new WAF rule set. | ||
- This example will use `My secondary WAF - Allow cookie`. | ||
3. Define your **Threat Type Configuration**, selecting the family threats and sensitivity. | ||
4. Make sure the **Active** switch is enabled. | ||
5. Click the **Save** button. | ||
|
||
To create a Custom Allowed Rule, still in the WAF Rule Set you created: | ||
|
||
1. Select the **Allowed Rules** tab. | ||
2. Click the **+ Allowed Rule** button. | ||
3. In the **Rule ID** dropdown menu, select a rule. | ||
- This example will use the `1005 Possible SQL Injection attack: MySQL keyword | found in Body, Path, Query String or Cookies.` rule. | ||
- Read more about all the [available internal rules](/en/documentation/products/secure/edge-firewall/web-application-firewall/custom-allowed-rules/). | ||
4. In **Description**, explain the reason this rule was allowed. | ||
5. In **Path**, this example will use `/` to apply the rule to the whole site. | ||
- Type a more specific path to attend to your needs, if required. | ||
6. In the **Match Zone** dropdown menu, select the **Conditional Request Header** option. | ||
- In the **Header** field, type `Cookie` | ||
- Select the **Value** option in **Matches on**. | ||
7. Click the **Save** button. | ||
|
||
--- | ||
|
||
## Configuring rules in the Rules Engine for Edge Firewall | ||
|
||
In this step, you must instantiate the rules to execute your recently created WAF Rule Sets accordingly. | ||
|
||
:::note | ||
Behaviors and rules will be executed in the order they're arranged. | ||
::: | ||
|
||
1. Open the **Product menu** and select **Edge Firewall**. | ||
2. Select the existent edge firewall where you want to configure the new rules. | ||
3. Go to the **Rules Engine** tab. | ||
4. Click the **+ Rules Engine** button. | ||
5. Give a name for the rule and, optionally, a description. | ||
- This example will use `First rule - Standard` as a name. | ||
6. In the **Criteria** field, define the following logic: | ||
- If `Request URI` `does not match` `\.(png|jpg|css|js|jpeg|gif|ico|ttf|svg|woff|woff2|ashx|asmx|svc|otf|eot)(\?.*)?$` | ||
7. Click the `+ And` button to enable a second Criteria and define the following logic: | ||
- `Request URI` `does not match` `[my-allowed-cookie|123]`. | ||
- Replace `my-allowed-cookie-123` with the value for the cookie you want to allow. | ||
8. In **Behavior**, select **Set WAF Rule Set** option. It'll open two new fields: | ||
- In **Select a WAF Rule**, select the primary rule set you created before. In this case, the one called `My Primary WAF - Standard`. | ||
- In **Select a WAF Mode**, select **Blocking**. | ||
9. Click the **Save** button. | ||
|
||
Now, you must define the rule for the secondary WAF Rule Set. | ||
|
||
Still on the **Rules Engine** tab: | ||
|
||
1. Click the **+ Rules Engine** button. | ||
2. Give a name for the rule and, optionally, a description. | ||
- This example will use `Second Rule - Cookies` as a name. | ||
3. In the **Criteria** field, define the following logic: | ||
- If `Header Cookie` `matches` `[my-allowed-cookie|123]`. | ||
- Replace `my-allowed-cookie-123` with the value for the cookie you want to allow. | ||
4. In **Behavior**, select **Set WAF Rule Set** option. It'll open two new fields: | ||
- In **Select a WAF Rule**, select the secondary rule set you created before. In this case, the one called `My secondary WAF - Allow cookie`. | ||
- In **Select a WAF Mode**, select **Blocking**. | ||
5. Click the **Save** button. | ||
|
||
Done. Now, when a request reaches your application, Edge Firewall will check if it includes your specific cookie. If it doesn't include your specific cookie, it'll execute your standard rule. If it identifies the specified cookie, the request will be evaluated by the second rule; in this case, it won't weigh the specific Rule ID and cookie on its evaluation, it'll still check all other rules. | ||
|
||
:::tip | ||
You can use [Azion Observe products](/en/documentation/products/observe/overview/) to monitor your application delivery, incoming traffic, and how your security logics are being applied and with which requests. | ||
::: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
114 changes: 114 additions & 0 deletions
114
src/content/docs/pt-br/pages/guias/waf/allowlist-waf-cookie.mdx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
--- | ||
title: Como configurar regras de WAF para permitir requisições com um cookie específico | ||
description: Com esta solução, seu web application firewall pode filtrar e gerenciar com precisão as requisições entrantes com base em cookies especificados. | ||
meta_tags: edge, segurança, WAF Rule Sets, allowlist, edge firewall, cookies de sessão, WAF, WAF Rule Sets | ||
namespace: documentation_secure_waf_specific_cookie | ||
permalink: /documentation/products/guides/secure/waf-rules-para-cookie-especifico/ | ||
--- | ||
|
||
Este guia implementa uma solução para configurar políticas de segurança para gerenciar requisições com base em valores de cookie específicos através do Edge Firewall e das WAF Rules. Com esta solução, seu firewall gerenciará as requisições entrantes com base em cookies especificados, permitindo controle granular usando múltiplos conjuntos de regras para o mesmo endpoint, garantindo que o tráfego legítimo chegue à sua aplicação. | ||
|
||
Implementar políticas de segurança com base em valores de cookie específicos pode ser útil em cenários como receber requisições de usuários autenticados ou ferramentas de terceiros integradas à sua infraestrutura, exigindo políticas específicas para esses cenários. | ||
|
||
Para configurar regras WAF para permitir requisições com um cookie específico, você deve completar os seguintes três passos principais: | ||
|
||
- [Criar um conjunto de regras WAF primário](#crie-um-conjunto-de-regras-waf-primario). Este será seu padrão de WAF e atenderá a todas as requisições que não são estáticas. | ||
- [Criar um conjunto de regras WAF secundário](#crie-um-conjunto-de-regras-waf-secundario-com-um-cookie-especifico). Isso permitirá definir um cookie específico e incluirá uma Custom Allowed Rule. | ||
- [Definir duas regras para o Rule Engine do Edge Firewall](#configure-regras-no-rules-engine-para-edge-firewall). Isso definirá os critérios e comportamentos para processar as requisições, combinando seus conjuntos de regras WAF. | ||
|
||
--- | ||
|
||
## Pré-requisitos | ||
|
||
Para implementar esta solução, você deve ter: | ||
|
||
- Um [edge firewall existente](/pt-br/documentacao/produtos/guias/secure/edge-firewall-definir-main-settings/) com o **WAF** ativado. | ||
|
||
--- | ||
|
||
## Crie um conjunto de regras WAF primário | ||
|
||
Primeiro, você deve criar seu conjunto de regras WAF primário que será usado como padrão. | ||
|
||
1. Acesse o [Azion Console](/pt-br/documentacao/produtos/guias/como-acessar-o-azion-console/) > **WAF Rules**. | ||
2. Clique no botão **+ WAF Rule**. | ||
3. Dê um nome único e descritivo para identificar seu novo conjunto de regras WAF. | ||
- Este exemplo usará `My Primary WAF - Standard`. | ||
4. Defina sua **Threat Type Configuration**, selecionando as famílias de ameaças e a sensibilidade. | ||
5. Certifique-se de que o switch **Active** esteja ativado. | ||
6. Clique no botão **Save**. | ||
|
||
--- | ||
|
||
## Crie um conjunto de regras WAF secundário com um cookie específico | ||
|
||
Ainda na página **WAF Rules**, você deve criar um **conjunto de regras WAF** secundário incluindo uma [Custom Allowed Rule](/pt-br/documentacao/produtos/secure/edge-firewall/web-application-firewall/custom-allowed-rules/). Para fazer isso: | ||
|
||
1. Clique no botão **+ WAF Rule** para criar a segunda instância. | ||
2. Dê um nome único e descritivo para identificar seu novo conjunto de regras WAF. | ||
- Este exemplo usará `My secondary WAF - Allow cookie`. | ||
3. Defina sua **Threat Type Configuration**, selecionando as famílias de ameaças e a sensibilidade. | ||
4. Certifique-se de que o switch **Active** esteja ativado. | ||
5. Clique no botão **Save**. | ||
|
||
Para criar uma **Custom Allowed Rule**, ainda na página do conjunto de regras WAF que você criou: | ||
|
||
1. Selecione a aba **Allowed Rules**. | ||
2. Clique no botão **+ Allowed Rule**. | ||
3. No menu suspenso **Rule ID**, selecione uma regra. | ||
- Este exemplo usará a regra `1005 Possible SQL Injection attack: MySQL keyword | found in Body, Path, Query String or Cookies.` | ||
- Saiba mais sobre todas as [regras internas disponíveis](/pt-br/documentacao/produtos/secure/edge-firewall/web-application-firewall/custom-allowed-rules/). | ||
4. Em **Description**, explique o motivo pelo qual esta regra foi permitida. | ||
5. Em **Path**, este exemplo usará `/` para aplicar a regra a todo o site. | ||
- Digite um caminho mais específico para atender às suas necessidades, se necessário. | ||
6. No menu suspenso **Match Zone**, selecione a opção **Conditional Request Header**. | ||
- No campo **Header**, digite `Cookie` | ||
- Selecione a opção **Value** em **Matches on**. | ||
7. Clique no botão **Save**. | ||
|
||
--- | ||
|
||
## Configure regras no Rules Engine para Edge Firewall | ||
|
||
Nesta etapa, você deve instanciar as regras no Rules Engine para executar seus conjuntos de regras WAF recém-criados. | ||
|
||
:::note | ||
Os comportamentos (*behaviors*) e regras serão executados na ordem em que estão dispostos. | ||
::: | ||
|
||
1. Abra o **Product menu** e selecione **Edge Firewall**. | ||
2. Selecione o edge firewall existente onde você deseja configurar as novas regras. | ||
3. Vá para a aba **Rules Engine**. | ||
4. Clique no botão **+ Rules Engine**. | ||
5. Dê um nome para a regra e, opcionalmente, uma descrição. | ||
- Este exemplo usará `First rule - Standard` como nome. | ||
6. No campo **Criteria**, defina a seguinte lógica: | ||
- If `Request URI` `does not match` `\.(png|jpg|css|js|jpeg|gif|ico|ttf|svg|woff|woff2|ashx|asmx|svc|otf|eot)(\?.*)?$` | ||
7. Clique no botão `+ And` para habilitar um segundo critério e defina a seguinte lógica: | ||
- `Request URI` `does not match` `[my-allowed-cookie|123]`. | ||
- Substitua `my-allowed-cookie-123` pelo valor do cookie que você deseja permitir. | ||
8. Em **Behavior**, selecione a opção **Set WAF Rule Set**. Isso abrirá dois novos campos: | ||
- Em **Select a WAF Rule**, selecione o conjunto de regras primário que você criou anteriormente. Neste caso, o chamado `My Primary WAF - Standard`. | ||
- Em **Select a WAF Mode**, selecione **Blocking**. | ||
9. Clique no botão **Save**. | ||
|
||
Agora, você deve definir a regra do Rules Engine para o conjunto de regras WAF secundário. | ||
|
||
Ainda na aba **Rules Engine**: | ||
|
||
1. Clique no botão **+ Rules Engine**. | ||
2. Dê um nome para a regra e, opcionalmente, uma descrição. | ||
- Este exemplo usará `Second Rule - Cookies` como nome. | ||
3. No campo **Criteria**, defina a seguinte lógica: | ||
- If `Header Cookie` `matches` `[my-allowed-cookie|123]`. | ||
- Substitua `my-allowed-cookie-123` pelo valor do cookie que você deseja permitir. | ||
4. Em **Behavior**, selecione a opção **Set WAF Rule Set**. Isso abrirá dois novos campos: | ||
- Em **Select a WAF Rule**, selecione o conjunto de regras secundário que você criou anteriormente. Neste caso, o chamado `My secondary WAF - Allow cookie`. | ||
- Em **Select a WAF Mode**, selecione **Blocking**. | ||
5. Clique no botão **Save**. | ||
|
||
Pronto. Agora, quando uma requisição chega à sua aplicação, o Edge Firewall verificará se ela inclui seu cookie específico. Se não incluir seu cookie específico, ele executará sua regra padrão. Se identificar o cookie especificado, a requisição será avaliada pela segunda regra; neste caso, não levará em conta o ID da regra e o cookie específico em sua avaliação, mas ainda verificará todas as outras regras. | ||
|
||
:::tip | ||
Você pode usar os [produtos Observe da Azion](/pt-br/documentacao/produtos/observe/visao-geral/) para monitorar a entrega da sua aplicação, o tráfego de entrada e como suas lógicas de segurança estão sendo aplicadas e com quais requisições. | ||
::: |