Web Application Firewall (WAF) oferece segurança pronta para uso. Após adicionar seus ativos ao WAF, o sistema aplica automaticamente um conjunto pré-configurado de regras principais de proteção para defender instantaneamente 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á sendo implementado gradualmente. Este tópico descreve a nova versão. Se você usa a versão antiga, consulte Regras principais de proteção web (Legado). Para obter o anúncio de atualização, consulte [[Aviso] Atualização do recurso de regras de proteção básica do WAF 3.0](t2809165.xdita#). Identifique sua versão pela presença da seção Core Protection Rule na página no console do WAF.
|
Nova versão |
Conjunto integrado de regras baseado em experiência prática de segurança que defende contra ataques comuns a aplicações web, como injeção SQL, XSS, execução de código, upload de webshell e injeção de comandos. Clique em Create Template para crie um modelo de regra de proteção. |
|
Versão antiga |
Conjunto integrado de regras baseado em experiência prática de segurança que defende contra ataques comuns a aplicações web, como injeção SQL, XSS, execução de código, upload de webshell e injeção de comandos. Clique em Create Template para crie um modelo de proteção ou em Rule Group Management para gerencie grupos de regras. |
Conceitos principais
Core Protection Rule: Módulo de proteção dentro da proteção web principal. Esse módulo é habilitado por meio de um modelo de proteção. Após ative o WAF, o sistema cria automaticamente um modelo de proteção padrão. Também é possível crie manualmente vários modelos de proteção.
-
Modelo de proteção: Conjunto de regras que define o conteúdo e o escopo da proteção. Ao crie um modelo de proteção, configure as Template Information, a Engine Configuration e o Configure Effective Scope.
-
Template Information: Define o tipo de modelo, que não pode ser alterado após a criação. Existem 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 se aplica automaticamente a objetos protegidos e grupos de objetos não associados a um modelo de proteção personalizado, bem como a objetos recém-adicionados.
-
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 principais de proteção.
-
Ao remover um objeto protegido de um modelo de proteção personalizado, o sistema o adiciona automaticamente ao modelo de proteção padrão.
Indicado para implantar regras de proteção gerais com aplicação global. Se seus service não tiverem 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
Especifique manualmente os objetos protegidos ou grupos de objetos aos quais o modelo se aplica.
Utilizado para implantar regras de proteção granulares para necessidades específicas de negócios.
-
Engine Configuration: Define as regras de proteção. Com base nas melhores práticas de segurança, o WAF fornece várias System Protection Rules, categorizadas por Detection Modules, para defender contra diferentes tipos de ataques. Configure a Action das System Protection Rules. Para ativos em Custom Protection Rules, configure também as Custom Protection Rules para atender aos seus requisitos de negócios.
-
Configure Effective Scope: Especifica os alvos do modelo de proteção. Ao configurar o escopo efetivo, aplique 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 cria automaticamente um objeto protegido para cada domínio ou instância de service cloud adicionada ao WAF.
Grupo de objetos protegidos: Adicione vários objetos protegidos a um grupo de objetos protegidos para gerenciamento centralizado.
-
Benefícios
Proteção pronta para uso: O modelo padrão do sistema inclui várias regras de proteção integradas. Ativos recém-adicionados são protegidos automaticamente por essas regras, atendendo às necessidades rotineiras de segurança sem configuração adicional.
Múltiplos métodos de decodificação: O WAF suporta análise e decodificação de formatos de dados como json, XML e Form, além de vários 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.
Motor inteligente de lista de permissões: O WAF usa IA para aprender com seu tráfego histórico, identificar regras de proteção que causam falsos positivos para url 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 service web ao WAF, o que cria os objetos protegidos necessários. Caso contrário, consulte Visão geral de integração.
Crie um modelo de proteção granular
Após adicionar seus service ao WAF, o sistema aplica automaticamente o modelo de proteção padrão a todos os objetos protegidos e habilita a proteção. Se seus service não tiverem requisitos especiais de proteção, não é necessário crie um modelo de proteção. Siga estas etapas apenas se precisar configurar regras diferentes para objetos protegidos distintos.
Se precisar apenas lidar com falsos positivos ou falsos negativos do WAF, consulte Lidar com falsos positivos e falsos negativos.
-
Acesse o console:
Faça login no console do Web Application Firewall 3.0. 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 as Template Information:
Template Name: Insira um nome fácil de identificar.
-
Save as Default Template: O sistema fornece um modelo de proteção padrão inicial, e apenas um pode existir para o módulo de regras principais de proteção. 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 configurar o Configure Effective Scope. Após a criação, o modelo se aplica automaticamente a objetos protegidos e grupos de objetos não associados a um modelo de proteção personalizado, bem como a objetos recém-adicionados. Exclua manualmente objetos específicos definindo seu status como "Not applied".
No: Configure o Configure Effective Scope especificando manualmente os objetos protegidos ou grupos de objetos aos quais ele se aplica.
-
Engine Configuration:
-
Automatic Update of Detection Engine: Este recurso vem habilitado 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 é definido como "Enabled" ou "Disabled", e a Action da regra é definida como "Monitor" ou "Block".
Disabled: As regras ainda são sincronizadas, mas seu Status é definido como "Disabled" e a Action é definida como "Monitor".
-
Configure Engine: Clique em Configure Engine no canto superior direito ou em Configure na coluna Actions de um Detection Modules específico abaixo para configurar as regras de proteção. Para obter uma lista dos módulos de detecção suportados, consulte o Apêndice.
System Protection Rules
As regras de proteção do sistema baseiam-se 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 nos níveis Medium e Loose estão habilitadas, enquanto as regras nos níveis Super Strict e Strict estão desabilitadas.
Configure as seguintes definições para as regras de proteção do sistema:
-
Action: Selecione uma ação para solicitações que correspondem à regra.
Block: Bloqueia solicitações correspondentes e retorna uma página de bloqueio ao cliente.
Monitor: Permite e registra solicitações correspondentes. Ao testar uma regra, use primeiro o modo Monitor e analise os logs do WAF para confirme que nenhum falso positivo foi gerado.
Status: Habilite ou desabilite a regra. Se desabilitada, a regra não será aplicada às solicitações.
NotaVisualize detalhes de acionamento de várias regras de proteção em Relatórios de Segurança.
Custom Protection Rules (somente modo hybrid cloud)
As regras de proteção personalizadas aplicam-se apenas a objetos protegidos adicionados ao WAF no modo hybrid cloud. Para adicionar regras de proteção personalizadas e usá-las em um modelo de proteção, consulte Gerenciamento da Biblioteca de Regras.
-
-
Adaptive Engine: O recurso Intelligent Whitelist Engine vem desabilitado por padrão. Quando habilitado, 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 Lista de Permissões.
NotaEste recurso está disponível apenas para instâncias Pay-As-You-Go, Subscription Enterprise Edition e Subscription Ultimate Edition.
-
-
Configure o Configure Effective Scope:
Selecione os objetos protegidos e grupos de objetos protegidos aos quais deseja aplicar este modelo. O escopo efetivo do modelo depende da configuração na Etapa 2:
Uso do modelo padrão criado pelo sistema ou definição como padrão: Não é necessário defina o escopo efetivo. Após a criação, o modelo se aplica automaticamente a objetos protegidos e grupos de objetos não associados a um modelo de proteção personalizado, bem como a objetos recém-adicionados. Exclua manualmente objetos específicos definindo seu status como "Not applied".
-
Não definido como padrão: Especifique manualmente os objetos protegidos e grupos de objetos aos quais o modelo se aplica.
NotaAjuste manualmente o status efetivo de objetos protegidos ou grupos de objetos durante e após a criação do modelo.
Lidar com falsos positivos e falsos negativos
Quando o WAF bloqueia tráfego legítimo (falso positivo) ou falha em bloquear um ataque (falso negativo), siga estas etapas para identificar a causa e ajustar sua configuração.
Lidar com falsos positivos
-
No painel de navegação à esquerda, escolha .
NotaSe você habilitou o Log Service, também pode acesse para visualize logs completos de solicitações.
-
Filtre os logs por Time, Protected Objects (o domínio/instância de service cloud acessado) e Action para localizar a solicitaçã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 alvo e defina a Action como Block para visualize as tendências de bloqueio de ataques e a distribuição de tipos de ataque no período especificado.
-
Se confirme que uma solicitação legítima foi bloqueada, encontre-a nos Logs e clique em Suppress False Positive na coluna Actions para crie uma regra de lista de permissões e permitir a solicitação.
Caso note que as solicitações compartilham características comuns (por exemplo, um endereço ip confiável aciona várias regras de proteção diferentes), recomendamos adicionar o endereço ip como uma Match Condition em uma única regra de lista de permissões. Isso é mais eficiente do que colocar cada entrada de log bloqueada individualmente na lista de permissões. Para mais informações, consulte Lista de Permissões.
Lidar com falsos negativos
Se um ataque não for bloqueado pelo WAF, considere as seguintes causas comuns e soluções recomendadas:
-
A solicitação não é processada pelo WAF
Causa: O certificado SSL ou porta de escuta configurada no WAF não corresponde ao do servidor de origem.Recomendação: Verifique se as configurações de certificado SSL e porta no WAF e no servidor de origem são consistentes.
Causa: Na integração via CNAME, o registro dns não foi alterado corretamente, então 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: Na 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 back-to-origin do WAF.
-
Causa: Na integração de service cloud, a instância de service cloud adicionada ao WAF não é aquela para a qual o tráfego do domínio é realmente roteado.
Recomendação: Confirme se a instância correta do service cloud foi adicionada ao WAF.
-
A solicitaçã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 a Proteção CC ou regras personalizadas de limitação de taxa.
Para ataques DDoS na camada de rede (alta frequência, alto volume): Utilize produtos Anti-DDoS.
Para scripts automatizados ou ataques de bots: Recorra ao Gerenciamento de Bots.
Para ataques com características específicas (como User-Agent fixo ou caminho de url): Aplique regras personalizadas.
Para ataques provenientes de um endereço ip de origem fixo: Utilize uma lista de bloqueios de ip.
Para ataques originados de regiões ou países fora do escopo de negócios: Configure o Bloqueio por Região.
Para ataques direcionados a APIs: Implemente a Segurança de API.
Visualize um modelo de proteção: Clique em no ícone
à esquerda do nome de um modelo para ver as informações do mecanismo que ele contém.Ative ou desabilite um modelo de proteção: Use o interruptor de Status para ative ou desabilite um modelo.
Edite um modelo de proteção: Clique em Edit na coluna Actions de um modelo para modifique suas 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 em sua coluna Actions e, em seguida, clique em Delete na caixa de diálogo de confirmação.
ImportanteSe um modelo de proteção personalizado for excluído, qualquer objeto protegido associado a ele será automaticamente adicionado ao modelo de proteção padrão.
Se o modelo de proteção padrão for excluído enquanto ainda contiver objetos protegidos, esses objetos deixarão de ser protegidos pelas regras principais de proteção.
Manutenção rotineira
Módulos de detecção suportados
As regras principais de proteção suportam os seguintes módulos de detecção, capazes de identificar e bloquear vários tipos de ataques contra aplicações web.
|
Tipo de ataque |
Descrição |
|
SQL Injection |
Um ataque de injeção SQL envolve a inserção de código SQL malicioso em uma consulta para executar comandos de banco de dados não intencionais. |
|
XSS |
Um ataque de cross-site scripting (XSS) consiste em incorporar scripts maliciosos em uma página web, fazendo com que sejam executados quando outros usuários visualizam a página. |
|
Code Execution |
Ataques de execução de código usam 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 alimentação de linha (LF, \n) em um cabeçalho HTTP para manipular respostas HTTP ou realizar divisão de resposta HTTP. |
|
Local File Inclusion |
Se a opção allow_url_include estiver habilitada 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 rigorosamente, isso pode levar à 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 um atacante execute código malicioso no servidor local. |
|
Webshell |
Um webshell é um arquivo de script malicioso que, quando carregado ou injetado, permite que um atacante controle remotamente o servidor. |
|
OS Command Injection |
Um ataque de injeção de comando de SO incorpora comandos maliciosos do sistema operacional em um programa, fazendo com que o servidor os execute. |
|
Scanning Behavior |
Refere-se ao comportamento e características de scanners de aplicações web. Essas ferramentas varrem automaticamente aplicações web para encontrar vulnerabilidades de segurança potenciais, como injeção SQL e XSS, gerando e enviando um grande número de solicitações para analisar as respostas da aplicação. |
|
Logic Defect |
Falhas de lógica de negócios são vulnerabilidades na implementação dos processos de negócios de uma aplicação. Essas falhas frequentemente não podem ser prevenidas por validação de entrada e codificação de saída tradicionais. Elas podem permitir que um atacante manipule o fluxo de trabalho normal da aplicação para obter acesso não autorizado ou realizar 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 através de um parâmetro de caminho de arquivo em uma solicitação HTTP. Ao explorar essa vulnerabilidade, um atacante pode acessar informações sensíveis como arquivos de configuração, credenciais e dados pessoais. |
|
Arbitrary File Download |
Uma vulnerabilidade de download arbitrário de arquivos é semelhante à leitura arbitrária, mas permite que um atacante baixe qualquer arquivo do sistema. Isso pode levar ao vazamento de informações sensíveis e até permitir que um atacante obtenha um backup completo do sistema para análise offline. |
|
XXE Injection |
Uma vulnerabilidade XXE explora a forma como analisadores XML processam entidades externas, permitindo que um atacante leia arquivos do sistema, execute solicitações do lado do servidor (SSRF) ou cause negação de serviço (DoS). Esse ataque é tipicamente realizado através de entrada XML que contém uma entidade externa maliciosa. |
|
Cross-site Request Forgery |
Um ataque CSRF engana um usuário autenticado para enviar uma solicitação não autorizada a uma aplicação web. Normalmente, o atacante atrai o usuário a clique em em um link malicioso ou visitar 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 envolve a incorporação de uma expressão maliciosa que é executada pelo servidor. |
|
.NET Deserialization |
Desserialização é o processo de converter dados de um formato (como json, XML ou binário) de volta para um objeto. Em aplicações .NET, desserialização insegura pode levar à execução arbitrária de código. Se um atacante conseguir controlar os dados desserializados, ele 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 no 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 no processo. |
|
SSRF |
Um ataque de Server-Side Request Forgery (SSRF) forja uma solicitação do lado do servidor, fazendo com que o servidor acesse recursos internos ou externos. |
|
Path Traversal |
Um ataque de path traversal envolve a injeção de sequências de caminho relativo (como ../) para acessar arquivos no servidor que não deveriam ser publicamente acessíveis. |
|
Protocol Non-compliance |
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 envolve o envio de um arquivo malicioso que é subsequentemente executado pelo servidor. |