1 of 20
2 of 20
3 of 20
4 of 20
5 of 20
6 of 20
7 of 20
8 of 20
9 of 20
10 of 20
11 of 20
12 of 20
13 of 20
14 of 20
15 of 20
16 of 20
17 of 20
18 of 20
19 of 20
20 of 20

Web Application Firewall

Edite no GitHub

O Web Application Firewall (WAF) protege as suas aplicações contra ameaças como SQL Injections, Remote File Inclusion (RFI), Cross-Site Scripting (XSS) e muito mais. O WAF analisa as requisições HTTP e HTTPS, detecta e bloqueia atividades maliciosas antes que elas alcancem a sua infraestrutura, sem impactar na performance de suas aplicações.

É uma barreira que usa um conjunto de regras para filtrar e monitorar o tráfego entre a sua aplicação e a internet. Atua na camada 7 conhecida como application layer - camada da aplicação - onde as aplicações acessam os serviços de rede.

  1. Como funciona
  2. Documentação de Suporte

1. Como funciona

O Web Application Firewall é um módulo do Azion Edge Firewall baseado na metodologia de scoring de requisições. Cada requisição http/https é comparada com um conjunto bem rigoroso e detalhado de padrões de aplicação e recebe uma pontuação - score - que é associada a uma determinada família de ameaças.

De acordo com o score recebido pela requisição, ela poderá ser liberada ou bloqueada diretamente nos Edge Nodes da Azion, antes que a ameaça atinja sua origem ou cause qualquer tipo de dano. Você define o nível desejado de sensibilidade para o bloqueio de cada família de ameaças.

Para evitar o bloqueio de requisições lícitas e o mau funcionamento de sua aplicação, você deve executar uma etapa de aprendizagem na qual o WAF Rule Set identifica os comportamentos legítimos de sua aplicação, inserindo-os em uma whitelist - lista de permissões.

Você ainda pode monitorar o comportamento e a efetividade de suas configurações de Web Application Firewall. Por meio de nossas ferramentas Real-Time Events e Data Streaming, a Azion disponibiliza dashboards e relatórios para consultas de logs de eventos online e em tempo real. Além disso, você pode importar os registros de logs da Azion e manipulá-los dentro de suas próprias ferramentas de análise.

Para utilizar os recursos de WAF Rule Sets é necessário habilitar o módulo Web Application Firewall no Edge Firewall Rule Set.

Modo de Operação

Para obter o máximo de desempenho e precisão do produto, é necessária a etapa de aprendizagem. Veja os dois modos de operação para apoiá-lo nessa etapa:

Modo de operação Descrição
Counting Mode É utilizado para especificar que o WAF não deve bloquear nenhuma requisição. O tráfego de suas aplicações será analisado, e as ameaças encontradas serão apenas contabilizadas. Utilize esse modo de operação durante a primeira etapa de aprendizagem.
Blocking Mode É utilizado para analisar e bloquear as ameaças detectadas, protegendo as suas aplicações dos usuários maliciosos. Você pode executar a etapa de aprendizagem sempre que julgar necessário, mesmo em Blocking Mode.

Famílias de Ameaças

As ameaças são categorizadas em famílias de acordo com o objetivo do ataque. Você pode ativar ou desativar a proteção para cada família de ameaças individualmente de acordo com as proteções requeridas pelo tipo de sua aplicação e funcionalidades que ela apresente.

Tipos de Ameaça Descrição
SQL Injections Sensitivity Detecta tentativas de ataque por meio de injeção de código SQL por meios dos dados do cliente para a aplicação.
Remote File Inclusions (RFI) Detecta tentativas de incluir arquivos, usualmente por meio de scripts no servidor web.
Directory Traversal Previne a exploração de vulnerabilidade referente a sanitização insuficiente de campos de nomes de arquivo fornecidos pelos usuários, de modo que caracteres representando atalhos para o diretório pai sejam passados por meio da API de arquivos.
Cross-Site Scripting (XSS) Previne a injeção de scripts client-side em páginas vistas por seus visitantes.
File Upload Detecta a tentativa de envio de arquivos para o servidor web.
Evading Tricks Previne contra alguns truques de codificação utilizados para tentar escapar dos mecanismos de proteção.
Unwanted Access Detecta as tentativas de acesso a páginas administrativas ou vulneráveis, bots e ferramentas de scanning de segurança.
Identified Attacks Previne vários tipos de ataques comuns e vulnerabilidades conhecidas que certamente deverão ser bloqueados.

Sensitivity (Sensibilidade)

A sensibilidade define o rigor com o qual o WAF irá considerar uma requisição como uma ameaça, veja os detalhes de cada nível a seguir:

Lowest

É o nível de sensibilidade mais baixo. A requisição será considerada uma ameaça se apresentar indícios muito fortes e receber um score alto. Essa sensibilidade tem um menor nível de proteção para suas aplicações, mas também evitará o bloqueio de requisições com menor chance de representar ameaças - falsos positivos.

Low

É o nível de sensibilidade baixo. A requisição será considerada uma ameaça se apresentar indícios muito fortes e receber um score alto. Essa sensibilidade tem um menor nível de proteção para suas aplicações, mas também evitará o bloqueio de requisições com menor chance de representar ameaças - falsos positivos.

Medium

É o nível de sensibilidade recomendado pela Azion. A requisição será considerada como ameaça se apresentar indícios suficientes e receber um score intermediário.

High

É o nível alto de proteção para sua aplicação. Ao menor indício de uma ameaça, a requisição poderá ser bloqueada, mesmo quando apresentar um score relativamente baixo. Esse nível de sensibilidade pode apresentar mais falsos positivos se a etapa de aprendizagem não tiver cobertura suficiente sobre a variabilidade de cenários e usos de sua aplicação.

Highest

É o maior nível de proteção para sua aplicação. Ao mínimo indício de uma ameaça, a requisição poderá ser bloqueada, mesmo quando apresentar um score muito baixo. Esse nível de sensibilidade pode apresentar muitos falsos positivos, se a etapa de aprendizagem não tiver cobertura suficiente sobre a variabilidade de cenários e usos de sua aplicação.

Regras

O conjunto de regras que incrementam o score de uma requisição. Quanto maior o score, maior a probabilidade de a requisição ser considerada um ataque pelo WAF.

A Azion trabalha com um conjunto extremamente restritivo de regras para assegurar a segurança de sua aplicação. Cada regra é composta pelos campos que seguem.

Campo Descrição
Rule Id Id numérico único de cada regra do WAF.
Rule Description Uma descrição textual do que a regra faz.
Match Pattern Condição de comparação, string ou regex, que será buscada na requisição.
Path Quando especificado, restringe a aplicação da Match Zone somente ao path definido. O path delimita o escopo de atuação da regra.
Match Zones Partes ou campos da requisição que serão comparados com o Match Pattern. Pode ser:
Path: o match pattern será comparado com o path da requisição.
Query String: o match pattern será comparado com a query string, também chamada de GET arguments.
Request Header: o match pattern será comparado com os cabeçalhos HTTP da requisição.
Request Body: o match pattern será comparado com o body de um POST, também chamado de POST arguments.
File Name (Multipart Body): o match pattern será comparado com o nome de arquivos em multipart POSTs.
Raw Body: o match pattern será comparado com o body não interpretado de uma requisição, também chamado de unparsed body.
Attack Family A(s) família(s) de ataques para as quais a regra incrementa a pontuação.

Whilelist

É a listagem de comportamentos legítimos de sua aplicação, que não devem incrementar o score das requisições. Pode ser gerada automaticamente durante a etapa de aprendizagem ou inserida manualmente por meio de regras customizadas.

Cada regra de bloqueio tem match zones, conforme explicado na seção Regras. A whitelist - lista de permissões - tem o objetivo de desativar determinadas Match Zones de uma regra de bloqueio.

Campo Descrição
Rule Id Id numérico único da regra de bloqueio para a qual a whitelist foi gerada.
Rule Description Uma descrição textual do que faz a regra de bloqueio para a qual a whitelist foi gerada.
Path Quando especificado, restringe a aplicação da whitelist somente ao path definido. O path delimita o escopo de atuação da whitelist.
Whitelist Match Zone É a whitelist propriamente dita. Define a parte ou campo da requisição para o qual a regra de bloqueio deve ser desativada.

Path: a rule id não será aplicada ao path da requisição.

Query String: a rule id não será aplicada à query string, também chamada de GET arguments. Pode ser restrito tanto ao nome quanto ao valor dos argumentos. É possível delimitar o escopo da whitelist a um único GET argument utilizando Conditional Query String.

Request Header: a rule id não será aplicada aos cabeçalhos HTTP da requisição. Pode ser restrito tanto ao nome quanto ao valor dos cabeçalhos. É possível delimitar o escopo da whitelist a um único cabeçalho HTTP utilizando Conditional Request Header.

Request Body: a rule id não será aplicada ao body de um POST, também chamado de POST arguments. Pode ser restrito tanto ao nome quanto ao valor dos argumentos. É possível delimitar o escopo da whitelist a um único POST argument utilizando Conditional Request Body.

File Name (Multipart Body): a rule id não será aplicada ao nome de arquivo em um multipart POST.

Raw Body: a rule id não será aplicada ao body não interpretado de uma requisição, também chamado de unparsed body.
Status O status de ativação da regra na whitelist.

2. Documentação de Suporte


Não encontrou o que procurava? Abra um ticket.