Planejar e implementar um WAF (Firewall de Aplicativo Web)
O WAF (Firewall do Aplicativo Web) fornece proteção centralizada de seus aplicativos Web contra vulnerabilidades e explorações comuns. Os aplicativos Web cada vez mais são alvos de ataques mal-intencionados que exploram vulnerabilidades conhecidas comuns. A injeção de SQL e o script entre sites estão entre os ataques mais comuns.
A prevenção de tais ataques no código do aplicativo é desafiadora. Isso pode exigir manutenção rigorosa, aplicação de patches e monitoramento em várias camadas da topologia do aplicativo. Um firewall de aplicativo Web centralizado ajuda a tornar o gerenciamento de segurança muito mais simples. Um WAF também oferece aos administradores de aplicativos melhor garantia de proteção contra ameaças e invasões.
Uma solução WAF pode reagir a uma ameaça de segurança mais rapidamente, corrigindo uma vulnerabilidade conhecida de modo central, em vez de proteger cada um dos aplicativos Web individuais.
Serviço com suporte
O WAF pode ser implantado com o Gateway de Aplicativo do Azure, o Azure Front Door e o serviço da CDN (Rede de Distribuição de Conteúdo) do Azure da Microsoft. A WAF na CDN do Azure está atualmente em versão prévia pública. O WAF tem recursos que são personalizados para cada serviço específico. Para obter mais informações sobre os recursos do WAF para cada serviço, confira a visão geral de cada serviço.
O WAF (Firewall de Aplicativo Web) do Azure no Gateway de Aplicativo do Azure protege ativamente seus aplicativos Web contra explorações e vulnerabilidades comuns. À medida que os aplicativos Web se tornam alvos mais frequentes para ataques mal-intencionados, esses ataques geralmente exploram vulnerabilidades conhecidas, como injeção de SQL e scripts entre sites.
O WAF no Gateway de Aplicativo é baseado no CRS (Conjunto de Regras Principais) do OWASP (Open Web Application Security Project).
Todos os recursos do WAF a seguir existem dentro de uma política do WAF. Você poderá criar várias políticas e elas poderão ser associadas a um Gateway de Aplicativo, a ouvintes individuais ou a regras de roteamento baseadas em caminhos em um Gateway de Aplicativo. Dessa forma, você pode ter políticas separadas para cada site por trás do seu Gateway de Aplicativo, se necessário.
O Gateway de Aplicativo opera como um controlador de entrega de aplicativos (ADC). Ele oferece o protocolo TLS, anteriormente conhecido como protocolo SSL, o encerramento, a afinidade de sessão baseada em cookies, a distribuição de carga round robin, o roteamento baseado em conteúdo, a capacidade de hospedar vários sites e os aprimoramentos de segurança.
O Gateway de Aplicativo aprimora a segurança por meio do gerenciamento de política do TLS e do suporte do TLS de ponta a ponta. Ao integrar o WAF ao Gateway de Aplicativo, ele configura a segurança do aplicativo. Essa combinação defende ativamente seus aplicativos Web contra vulnerabilidades comuns e oferece um local centralmente gerenciável e fácil de configurar.
Proteção
- Protege seus aplicativos Web de vulnerabilidades e ataques da Web sem modificar o código de back-end.
- Protege vários aplicativos Web ao mesmo tempo. Uma instância do Gateway de Aplicativo pode hospedar até 40 sites que são protegidos por um firewall do aplicativo Web.
- Criar políticas personalizadas do WAF para diferentes sites por trás do mesmo WAF.
- Proteja seus aplicativos Web contra bots mal-intencionados com o conjunto de regras de Reputação de IP.
- Proteja seu aplicativo contra ataque de negação de serviço distribuído (DDoS).
Monitoramento
Monitore ataques contra seu aplicativo Web usando um log de WAF em tempo real. O log é integrado ao Azure Monitor a fim de acompanhar os alertas de WAF e monitorar facilmente as tendências.
O WAF do Gateway de Aplicativo é integrado ao Microsoft Defender para Nuvem. O Defender para Nuvem fornece uma visão central do estado de segurança de todos os recursos do Azure, híbridos e de várias nuvens.
Personalização
- Personalize as regras e os grupos de regras de WAF a fim de atender as necessidades do seu aplicativo e eliminar falsos positivos.
- Associar uma política de WAF para cada site por trás do seu WAF a fim de permitir uma configuração específica do site
- Criar regras personalizadas para atender às necessidades do seu aplicativo
Recursos
- Proteção contra injeção de SQL.
- Proteção contra script entre site.
- Proteção contra ataques comuns na Web, como injeção de comandos, solicitações HTTP indesejadas, divisão de resposta HTTP e inclusão de arquivo remoto.
- Proteção contra violações de protocolo HTTP.
- Proteção contra anomalias de protocolo HTTP, como ausência de cabeçalhos de agente de usuário do host e de aceitação.
- Proteção contra rastreadores e scanners.
- Detecção de configurações incorretas de aplicativos comuns (por exemplo, Apache e Serviços de Informações da Internet).
- Limites de tamanho de solicitação configuráveis com limites inferiores e superiores.
- As listas de exclusões permitem a você omitir certos atributos de solicitação de uma avaliação do WAF. Um exemplo comum são os tokens inseridos com o Microsoft Entra ID que são usados para campos de autenticação ou senha.
- Crie regras personalizadas para atender às necessidades específicas dos seus aplicativos.
- Filtre o tráfego pela geografia para permitir ou impedir que determinados países/regiões tenham acesso a seus aplicativos.
- Proteja seus aplicativos de bots com o conjunto de regras de mitigação de bots.
- Inspecione a JSON (JavaScript Object Notation) e a XML (Extensible Markup Language) no corpo da solicitação
Política e regras do WAF
Para habilitar um Firewall de Aplicativo Web em um Gateway de Aplicativo, crie uma política de WAF. Essa política é o local em que se encontram todas as regras gerenciadas, as regras personalizadas, as exclusões e outras personalizações, como o limite de upload de arquivos.
Você pode configurar uma política de WAF e associá-la a um ou mais gateways de aplicativo para proteção. Uma política do WAF consiste em dois tipos de regras de segurança:
- Regras personalizadas criadas por você
- Conjuntos de regras gerenciadas que são uma coleção do conjunto de regras pré-configurado gerenciado pelo Azure
Quando ambas estiverem presentes, as regras personalizadas serão processadas antes das regras em um conjunto de regras gerenciado. Uma regra é composta por uma condição de correspondência, uma prioridade e uma ação. Os tipos de ação com suporte são: ALLOW, BLOCK e LOG. Você pode criar uma política totalmente personalizada que atenda aos seus requisitos de proteção de aplicativo específicos combinando regras gerenciadas e personalizadas.
As regras em uma política são processadas em uma ordem de prioridade. A prioridade é um inteiro exclusivo que define a ordem de regras a serem processadas. Um valor inteiro menor denota uma prioridade maior. Essas regras são avaliadas antes daquelas com um valor inteiro mais alto. Quando há correspondência de uma regra, a ação relevante definida na regra é aplicada à solicitação. Depois de essa correspondência ser processada, as regras com prioridades menores não serão mais processadas.
Um aplicativo Web entregue pelo Gateway de Aplicativo pode ter uma política de WAF associada no nível global, em um nível por site ou em um nível por URI.
Conjuntos de regras principais
O Gateway de Aplicativo dá suporte a vários conjuntos de regras, incluindo o CRS 3.2, o CRS 3.1 e o CRS 3.0. Essas regras protegem seus aplicativos Web contra atividade mal-intencionadas.
Regras personalizadas
O Gateway de Aplicativo também é compatível com regras personalizadas. Com as regras personalizadas, você pode criar suas próprias regras, que são avaliadas para cada solicitação que passa pelo WAF. Essas regras têm uma prioridade mais alta do que o restante das regras nos conjuntos de regras gerenciadas. Se um conjunto de condições for atendido, será executada uma ação para permitir ou bloquear.
Conjunto de regras de proteção contra bots
Você pode habilitar um conjunto de regras de proteção contra bots gerenciado para executar ações personalizadas em solicitações de todas as categorias de bots.
Há suporte para três categorias de bot:
- Ruim - os bots ruins incluem bots de endereços IP maliciosos e bots que falsificam suas identidades. Bots inválidos com IPs mal-intencionados são provenientes dos Indicadores de Comprometimento de IP de alta confiança do feed da Inteligência contra Ameaças da Microsoft.
- Bom - os bots bons incluem mecanismos de pesquisa validados, como o Googlebot, o bingbot e outros agentes de usuário confiáveis.
- Desconhecido – os bots desconhecidos são classificados por meio de agentes de usuário publicados sem mais validação. Por exemplo, analisador de mercado, buscadores de feeds e agentes de coleta de dados. Bots desconhecidos também incluem endereços IP mal-intencionados provenientes dos Indicadores de Comprometimento de IP de confiança média do Feed da Inteligência contra Ameaças da Microsoft.
A plataforma WAF gerencia ativamente e atualiza dinamicamente as assinaturas de bot.
Você pode atribuir Microsoft_BotManagerRuleSet_1.0 usando a opção Atribuir em Conjuntos de Regras Gerenciadas:
Quando a proteção contra bot está habilitada, ela bloqueia, permite ou registra solicitações de entrada que correspondem às regras de bot com base na ação que você configurou. Ela bloqueia bots mal-intencionados, permite rastreadores verificados do mecanismo de pesquisa, bloqueia rastreadores desconhecidos do mecanismo de pesquisa e registra bots desconhecidos por padrão. Você tem a opção de definir ações personalizadas para bloquear, permitir ou registrar em log os diferentes tipos de bots.
Você pode acessar logs do WAF de uma conta de armazenamento, hub de eventos, análise de logs ou enviar logs para uma solução de parceiro.
Modos de WAF
O WAF do Gateway de Aplicativo pode ser configurado para ser executado nestes dois modos:
- Modo de detecção: Monitora e registra todos os alertas de ameaça. Você ativa o log de diagnóstico para o Gateway de Aplicativo na seção Diagnóstico. Você também precisa garantir que o log do WAF esteja selecionado e ativado. O firewall do aplicativo Web no modo de detecção não bloqueia solicitações de entrada quando está operando no modelo de Detecção.
- Modo de prevenção: Bloqueia invasões e ataques detectados pelas regras. O invasor recebe uma exceção "403 acesso não autorizado" e a conexão é encerrada. O modo de Prevenção registra tais ataques nos logs do WAF.
Mecanismos WAF
O mecanismo de WAF (Firewall de Aplicativo Web) do Azure é o componente que inspeciona o tráfego e determina se uma solicitação inclui uma assinatura que representa um possível ataque. Quando você usa o CRS 3.2 ou posterior, o WAF executa o novo mecanismo de WAF, que oferece um desempenho mais alto e um conjunto aprimorado de recursos. Quando você usa versões anteriores do CRS, o WAF é executado em um mecanismo mais antigo. Novos recursos estão disponíveis apenas no novo mecanismo do WAF do Azure.
Ações de WAF
Você pode escolher qual ação é executada quando uma solicitação corresponde à condição de regra. Há suporte para as seguintes ações:
- Permitir: a solicitação passa pelo WAF e é encaminhada para o back-end. Nenhuma outra regra de prioridade mais baixa pode bloquear essa solicitação. As ações de permissão só são aplicáveis ao conjunto de regras do Gerenciador de Bot e não são aplicáveis ao Conjunto de Regras Principais.
- Bloquear: a solicitação é bloqueada e o WAF envia uma resposta ao cliente sem encaminhar a solicitação ao back-end.
- Log: a solicitação é registrada nos logs do WAF e o WAF continua avaliando as regras de prioridade mais baixa.
- Pontuação de anomalias: essa é a ação padrão para o conjunto de regras do CRS em que a pontuação total de anomalias é incrementada quando uma regra com essa ação é correspondida. A pontuação de anomalias não é aplicável ao conjunto de regras do Gerenciador de Bot.
Modo de pontuação de anomalias
O OWASP (Open Web Application Security Project) tem dois modos para decidir se deseja bloquear o tráfego: Modo Tradicional e modo de Pontuação de Anomalias.
No modo tradicional, o tráfego que corresponde a qualquer regra é considerado independentemente de qualquer outra correspondência de regra. Esse modo é fácil de entender. Mas a falta de informações sobre quantas regras correspondem a uma solicitação específica é uma limitação. Portanto, o modo de Pontuação de anomalias foi introduzido. É o padrão para OWASP 3.x.
No modo de Pontuação de anomalias, o tráfego que corresponde a qualquer regra não é bloqueado imediatamente quando o firewall está no modo de prevenção. As regras têm uma determinada gravidade: Crítico, Erro, Aviso ou Informativo. Essa gravidade afeta um valor numérico para a solicitação, que é chamado de Pontuação de anomalias. Por exemplo, uma correspondência de regra de Aviso contribui com 3 para a pontuação. Uma correspondência da regra crítica contribui com 5.
Gravidade | Valor |
---|---|
Crítico | 5 |
Erro | 4 |
Aviso | 3 |
Informativo | 2 |
Há um limite de 5 para a pontuação de anomalias bloquear o tráfego. Portanto, uma única correspondência de regra Crítica é suficiente para que o WAF do Gateway de Aplicativo bloqueie uma solicitação, mesmo no modo de Prevenção. Mas uma correspondência de regra de Aviso aumenta apenas a pontuação de anomalias em 3, o que não é suficiente para bloquear o tráfego.
Configuração
É possível configurar e implantar todas as políticas do WAF com o portal do Azure, as APIs REST, os modelos do Azure Resource Manager e o Azure PowerShell.
Monitoramento de WAF
É importante monitorar a integridade de seu gateway de aplicativo. Você pode dar suporte a isso integrando seu WAF e os aplicativos que ele protege com os logs do Microsoft Defender para Nuvem, do Azure Monitor e do Azure Monitor.
Azure Monitor
Os logs do Gateway de Aplicativo são integrados ao Azure Monitor. Isso permite o controle das informações de diagnóstico, incluindo logs e alertas de WAF. Você pode acessar esse recurso na guia Diagnóstico do recurso do Gateway de Aplicativo no portal ou diretamente no Azure Monitor.