Web Application Firewall (WAF) oferece segurança pronta para uso. Após adicionar seus ativos ao WAF, um conjunto pré-configurado de regras de proteção principal é aplicado automaticamente para defesa imediata contra ataques comuns a aplicações web, como injeção SQL, cross-site scripting (XSS) e injeção de comandos, sem necessidade de configuração adicional. Este tópico explica como gerencie e ajustar essas regras.
O recurso Core Protection Rule está em processo de implantação. Este tópico descreve a nova versão. Se você estiver usando a versão antiga, consulte Core web protection rules (Legacy). Para o comunicado de atualização, consulte [[Notice] WAF 3.0 Basic Protection Rule Feature Upgrade](t2809165.xdita#). Identifique sua versão pela aparência da seção Core Protection Rule na página do console do WAF.
|
New version |
O lado direito do módulo Core Protection Rule exibe apenas o botão Create Template. Esse design é consistente com outros módulos, como IP Address Blacklist e Custom Rule. |
|
Legacy version |
O lado direito do módulo Core Protection Rule exibe dois botões: Create Template e Rule Groups. |
Conceitos principais
Core Protection Rule: Módulo de proteção dentro da proteção web principal. Este módulo é ativado por meio de um modelo de proteção. Após ativar o WAF, o sistema crie automaticamente um modelo de proteção padrão. Também é possível criar manualmente vários modelos de proteção.
-
Modelo de proteção: Um modelo de proteção é um conjunto de regras de proteção que defina seu conteúdo e escopo. Ao crie um modelo de proteção, configure suas opções de Template Information, Engine Configuration e Configure Effective Scope.
-
Template Information: Defina o tipo do modelo, que não pode ser alterado após a criação. Há dois tipos de modelos:
Tipo de modelo
Descrição
Casos de uso
Modelo de proteção padrão
O sistema fornece um modelo de proteção padrão inicial.
O modelo é aplicado automaticamente a objetos protegidos e grupos de objetos que não estejam associados a um modelo de proteção personalizado. Aplica-se também a objetos recém-adicionados.
É possível exclua manualmente objetos específicos definindo seu status como "Not applied".
Apenas um modelo de proteção padrão pode existir no módulo de regras de proteção principal.
Ao remover um objeto protegido de um modelo de proteção personalizado, ele é adicionado automaticamente ao modelo de proteção padrão.
Destinado à implantação de regras de proteção gerais com aplicação global. Se seus serviços não têm requisitos especiais de proteção, recomendamos usar o modelo de proteção padrão. Nenhuma configuração adicional é necessária.
Modelo de proteção personalizado
É necessário especifique manualmente os objetos protegidos ou grupos de objetos aos quais ele se aplica.
Projetado para a implantação de regras de proteção granulares voltadas a necessidades específicas do negócio.
Engine Configuration: Defina as regras de proteção. Com base nas melhores práticas de segurança, o WAF fornece diversas System Protection Rules, categorizadas por Detection Modules, para defesa contra diferentes tipos de ataques. Configure a Action para as System Protection Rules. Para ativos em Custom Protection Rules, também é possível configure Custom Protection Rules para atender aos requisitos do seu negócio.
-
Configure Effective Scope: Especifique os alvos do modelo de proteção. Ao configure o escopo efetivo, aplique as regras de proteção a objetos protegidos ou grupos de objetos protegidos específicos. Um objeto protegido ou grupo de objetos pode ser associado a apenas um modelo de proteção.
Objeto protegido: O sistema crie automaticamente um objeto protegido para cada domínio ou instância de serviço de nuvem adicionado ao WAF.
Grupo de objetos protegidos: Agrupe vários objetos protegidos em um grupo de objetos protegidos para gerencie centralizado.
-
Benefícios
Proteção pronta para uso: O modelo de sistema padrão inclui várias regras de proteção integradas. Os ativos recém-adicionados são automaticamente protegidos por essas regras, atendendo às necessidades de segurança rotineiras sem configuração adicional.
Múltiplos métodos de decodificação: O WAF analisa e decodifica formatos de dados como json, XML e Form, além de diversos métodos de codificação como Base64 e entidades HTML. Isso garante a detecção de tráfego malicioso oculto por múltiplas camadas de codificação ou compressão.
Mecanismo de lista de permissões inteligente: O WAF utiliza IA para aprender com o tráfego histórico, identificar regras de proteção que geram falsos positivos para URLs específicas e adicioná-las automaticamente a uma lista de permissões. Isso reduz efetivamente os falsos positivos.
Antes de começar, certifique-se de ter adicionado seus web services ao WAF, o que crie os objetos protegidos necessários. Caso ainda não tenha feito isso, consulte Onboarding overview.
Crie um modelo de proteção granular
Após adicionar seus serviços ao WAF, o sistema aplica automaticamente o modelo de proteção padrão a todos os objetos protegidos e ative a proteção. Se seus serviços não têm requisitos especiais de proteção, não é necessário crie um modelo de proteção. Siga estas etapas apenas se precisar configure regras diferentes para objetos protegidos distintos.
Se precisar apenas tratar falsos positivos ou falsos negativos do WAF, consulte Handling false positives and false negatives.
-
Acesse o console:
Faça login no Web Application Firewall 3.0 console. Na barra de navegação superior, selecione o grupo de recursos e a região (Chinese Mainland ou Outside Chinese Mainland) da sua instância do WAF. No painel de navegação à esquerda, escolha . Na seção Core Protection Rule, clique em Create Template.
-
Configure Template Information:
Template Name: Insira um nome de fácil identificação.
-
Save as Default Template: O sistema fornece um modelo de proteção padrão inicial, e apenas um pode existir no módulo de regras de proteção principal. Portanto, se o modelo padrão inicial já existir, não será possível defina esta opção como "Yes".
Yes: Não é necessário configure o Configure Effective Scope. Após a criação, o modelo é aplicado automaticamente a objetos protegidos e grupos de objetos que não estejam associados a um modelo de proteção personalizado, bem como a objetos recém-adicionados. É possível exclua manualmente objetos específicos definindo seu status como "Not applied".
No: Configure o Configure Effective Scope especifique manualmente os objetos protegidos ou grupos de objetos aos quais ele se aplica.
-
Configure Engine Configuration:
-
Automatic Update of Detection Engine: Este recurso está ativado por padrão.
Enabled: As atualizações de regras da equipe de segurança da Alibaba Cloud são sincronizadas automaticamente com seu mecanismo de detecção. O WAF aplica as novas regras automaticamente. O Status da regra é defina como "Enabled" ou "Disabled", e a Action da regra é defina como "Monitor" ou "Block".
Disabled: As regras ainda são sincronizadas, mas seu Status é defina como "Disabled" e a Action é defina como "Monitor".
-
Configure Engine: Clique em Configure Engine no canto superior direito, ou clique em Configure na coluna Actions de um Detection Modules específico para configure as regras de proteção. Para a lista de módulos de detecção suportados, consulte Appendix.
System Protection Rules
As regras de proteção do sistema são baseadas nos módulos de detecção integrados da Alibaba Cloud e estão disponíveis em quatro níveis de rigor: Super Strict, Strict, Medium e Loose. Por padrão, as regras dos níveis Medium e Loose estão ativadas, enquanto as regras dos níveis Super Strict e Strict estão desativadas.
As configurações a seguir estão disponíveis para as regras de proteção do sistema:
-
Action: Selecione uma ação para as requisições que correspondam à regra.
Block: Bloqueia as requisições correspondentes e retorna uma página de bloqueio ao cliente.
Monitor: Permite e registra as requisições correspondentes. Ao testar uma regra, use primeiro o modo Monitor e analise os logs do WAF para confirme que não há falsos positivos.
Status: Ative ou desative a regra. Se desativada, a regra não é aplicada às requisições.
NotaVisualize os detalhes de acionamento das diversas regras de proteção em Security Reports.
Custom Protection Rules (somente no modo hybrid cloud)
As regras de proteção personalizadas se aplicam apenas a objetos protegidos adicionados ao WAF no modo hybrid cloud. Para adicionar regras de proteção personalizadas e utilizá-las em um modelo de proteção, consulte Rule Library Management.
-
-
Adaptive Engine: O recurso Intelligent Whitelist Engine está desativado por padrão. Quando ativado, o WAF usa IA para aprender com o tráfego histórico, identificar regras que causam falsos positivos no nível de URL e crie automaticamente regras de lista de permissões para reduzi-los.
O modelo de lista de permissões criado automaticamente recebe o nome AutoTemplate. Para mais informações, consulte Whitelist.
NotaEste recurso está disponível apenas para instâncias Pay-As-You-Go, Subscription Enterprise Edition e Subscription Ultimate Edition.
-
-
Configure Configure Effective Scope:
Selecione os protected objects and protected object groups aos quais deseja aplicar este modelo. O escopo efetivo do modelo depende da configuração defina na Etapa 2:
Usando o modelo padrão criado pelo sistema ou definindo-o como padrão: Não é necessário defina o escopo efetivo. Após a criação, o modelo é aplicado automaticamente a objetos protegidos e grupos de objetos que não estejam associados a um modelo de proteção personalizado, bem como a objetos recém-adicionados. É possível exclua manualmente objetos específicos definindo seu status como "Not applied".
-
Não defina como padrão: Especifique manualmente os objetos protegidos e grupos de objetos aos quais o modelo se aplica.
NotaO status efetivo de objetos protegidos ou grupos de objetos pode ser ajustado manualmente tanto durante quanto após a criação do modelo.
Tratamento de falsos positivos e falsos negativos
Quando o WAF bloqueia tráfego legítimo (falso positivo) ou deixa de bloquear um ataque (falso negativo), siga estas etapas para identificar a causa e ajustar sua configuração.
Tratamento de falsos positivos
-
No painel de navegação à esquerda, escolha .
NotaSe você tiver ativado o Log Service, também poderá acesse para visualize os logs completos de requisições.
-
Filtre os logs por Time, Protected Objects (the accessed domain/cloud service instance) e Action para localizar a requisição bloqueada específica.
Na página Security Reports, defina as condições de filtro: selecione um intervalo de tempo Custom, selecione o Domain/Instance de destino e defina Action como Block para visualize as tendências de bloqueio de ataques e a distribuição por tipo de ataque no período especificado.
-
Ao confirme que uma requisição legítima foi bloqueada, localize-a em Logs e clique em Suppress False Positive na coluna Actions para crie uma regra de lista de permissões e permitir a requisição.
Se você identificar que as requisições compartilham características comuns (por exemplo, um endereço IP confiável aciona múltiplas regras de proteção diferentes), recomendamos adicionar o endereço IP como Match Condition em uma única regra de lista de permissões. Essa abordagem é mais eficiente do que adicionar à lista de permissões cada entrada de log bloqueada individualmente. Para mais informações, consulte Whitelist.
Tratamento de falsos negativos
Se um ataque não for bloqueado pelo WAF, considere as seguintes causas comuns e soluções recomendadas:
-
A requisição não é processada pelo WAF
Causa: O certificado SSL ou a porta de escuta configurada no WAF não corresponde ao do servidor de origem. Recomendação: Verifique se o certificado SSL e as configurações de porta no WAF e no servidor de origem são consistentes.
Causa: Para integração via CNAME, o registro DNS não foi alterado corretamente, de modo que o tráfego não é direcionado ao WAF. Recomendação: Confirme se o registro DNS aponta corretamente para o endereço CNAME fornecido pelo WAF.
-
Causa: Para integração via CNAME, o atacante contorna o WAF acessando diretamente o endereço IP do servidor de origem.
Recomendação: No grupo de segurança do seu servidor, permita tráfego apenas dos endereços IP de retorno de origem do WAF.
-
Causa: Para integração via serviço de nuvem, a instância de serviço de nuvem adicionada ao WAF não é aquela para a qual o tráfego do domínio é efetivamente roteado.
Recomendação: Confirme se a instância de serviço de nuvem correta foi adicionada ao WAF.
-
A requisição é processada pelo WAF, mas nenhuma regra a cobre
O modelo de proteção padrão não cobre todos os tipos de ataque. Pode ser necessário ative outros módulos de proteção com base nas características do ataque:
Para ataques CC (floods http de baixa a média frequência): Use CC Protection ou limitação de taxa com custom rules.
Para ataques DDoS na camada de rede (alta frequência e alto volume): Use os produtos Anti-DDoS.
Para scripts automatizados ou ataques de bots: Use Bot Management.
Para ataques com características específicas (como User-Agent ou caminho de URL fixos): Use custom rules.
Para ataques originados de um endereço IP de source fixo: Use um IP blocklist.
Para ataques provenientes de regiões ou países fora do escopo do negócio: Use Region Block.
Para ataques direcionados a APIs: Use API Security.
Manutenção de rotina
Visualize um modelo de proteção: Clique no ícone
à esquerda do nome de um modelo para visualize as informações do mecanismo que ele contém.Ative ou desative um modelo de proteção: Use o botão de alternância Status para ative ou desative um modelo.
Edite um modelo de proteção: Clique em Edit na coluna Actions de um modelo para modifique suas opções de Template Information, Engine Configuration ou Apply To.
-
Exclua um modelo de proteção: Quando um modelo não for mais necessário, clique em Delete na coluna Actions correspondente e, em seguida, clique em Delete na caixa de diálogo de confirmação.
ImportanteSe um modelo de proteção personalizado for exclua, qualquer objeto protegido associado a ele será adicionado automaticamente ao modelo de proteção padrão.
Se o modelo de proteção padrão for exclua enquanto ainda contiver objetos protegidos, esses objetos deixarão de ser protegidos pelas regras de proteção principal.
Módulos de detecção suportados
As regras de proteção principal suportam os seguintes módulos de detecção, capazes de identificar e bloquear diversos tipos de ataques contra aplicações web.
|
Tipo de ataque |
Descrição |
|
SQL Injection |
Um ataque de injeção SQL consiste em inserir código SQL malicioso em uma consulta para executar comandos não intencionais no banco de dados. |
|
XSS |
Um ataque de cross-site scripting (XSS) incorpora scripts maliciosos em uma página web, fazendo com que sejam executados quando outros usuários acessam a página. |
|
Code Execution |
Ataques de execução de código utilizam código malicioso injetado que é executado pelo servidor para atingir os objetivos do atacante. |
|
CRLF Injection |
Um ataque de injeção CRLF insere um retorno de carro (CR, \r) e uma quebra de linha (LF, \n) em um cabeçalho HTTP para manipular respostas HTTP ou realizar divisão de resposta HTTP. |
|
Local File Inclusion |
Quando a opção allow_url_include está ativada em um servidor, um atacante pode explorar funções PHP como include(), require(), include_once() e require_once() para incluir arquivos dinamicamente via URL. Se a source do arquivo não for validada com rigor, isso pode resultar em leitura arbitrária de arquivos ou execução de comandos. |
|
Remote File Inclusion |
Um ataque de Remote File Inclusion (RFI) inclui um arquivo de um servidor remoto, permitindo que o atacante execute código malicioso no servidor local. |
|
Webshell |
Um webshell é um arquivo de script malicioso que, após ser enviado ou injetado, permite ao atacante controlar remotamente o servidor. |
|
OS Command Injection |
Um ataque de injeção de comandos do sistema operacional incorpora comandos maliciosos do SO em um programa, fazendo com que o servidor os execute. |
|
Scanning Behavior |
Refere-se ao comportamento e às características de scanners de aplicações web. Essas ferramentas varrem automaticamente as aplicações em busca de potenciais vulnerabilidades de segurança, como injeção SQL e XSS, gerando e enviando um grande volume de requisições para analisar as respostas da aplicação. |
|
Logic Defect |
Falhas de lógica de negócio são vulnerabilidades na implementação dos processos de negócio de uma aplicação. Muitas vezes, não são evitáveis por validação de entrada e codificação de saída tradicionais, podendo permitir que um atacante manipule o fluxo normal da aplicação para obter acesso não autorizado ou executar outras ações maliciosas. |
|
Arbitrary File Read |
Uma vulnerabilidade de leitura arbitrária de arquivos permite que um atacante leia qualquer arquivo no sistema, geralmente por meio de um parâmetro de caminho de arquivo em uma requisição HTTP. Ao explorar essa vulnerabilidade, o atacante pode acessar informações sensíveis como arquivos de configuração, credenciais e dados pessoais. |
|
Arbitrary File Download |
Uma vulnerabilidade de baixe arbitrário de arquivos é semelhante à leitura arbitrária de arquivos, mas permite que o atacante baixe qualquer arquivo do sistema. Isso pode causar vazamento de informações sensíveis e até permitir que o atacante obtenha um backup completo do sistema para análise offline. |
|
XXE Injection |
Uma vulnerabilidade XXE explora a forma como parsers XML processam entidades externas, permitindo que um atacante leia arquivos do sistema, execute requisições do lado do servidor (SSRF) ou cause uma negação de serviço (DoS). Esse ataque é tipicamente realizado por meio de entradas XML contendo uma entidade externa maliciosa. |
|
Cross-site Request Forgery |
Um ataque CSRF induz um usuário autenticado a enviar uma requisição não autorizada a uma aplicação web. Em geral, o atacante leva o usuário a clique em um link malicioso ou acessar uma página maliciosa, que então executa uma ação em nome do usuário, como alterar uma configuração ou enviar um formulário. |
|
Expression Injection |
Um ataque de injeção de expressão incorpora uma expressão maliciosa que é executada pelo servidor. |
|
.NET Deserialization |
A desserialização é o processo de converter dados de um formato (como json, XML ou binário) de volta a um objeto. Em aplicações .NET, a desserialização insegura pode levar à execução arbitrária de código. Se um atacante puder controlar os dados desserializados, poderá injetar dados maliciosos e executar código arbitrário. |
|
Java Deserialization |
Um ataque de desserialização Java envolve a desserialização de um objeto malicioso, fazendo com que o servidor execute código malicioso durante o processo. |
|
PHP Deserialization |
Um ataque de desserialização PHP envolve a desserialização de um objeto malicioso, fazendo com que o servidor execute código malicioso durante o processo. |
|
SSRF |
Um ataque de Server-Side Request Forgery (SSRF) falsifica uma requisição do lado do servidor, fazendo com que ele acesse recursos internos ou externos. |
|
Path Traversal |
Um ataque de path traversal injeta sequências de caminho relativo (como ../) para acessar arquivos no servidor que não deveriam ser publicamente acessíveis. |
|
Protocol Non-compliance |
A violação de protocolo refere-se à manipulação maliciosa de protocolos (como HTTP ou HTTPS) para lançar um ataque ou contornar mecanismos de segurança. |
|
Arbitrary File Upload |
Um ataque de upload arbitrário de arquivos consiste no envio de um arquivo malicioso que é executado pelo servidor. |