Visão geral #
Este artigo explica como migrar uma iRule do F5 BIG-IP usada para restringir o tamanho dos uploads HTTP para... RELIANOID usando o integrado WAF (Firewall de aplicativo da Web) alimentado por ModSecurity e OWASP CRS.
A iRule original inspeciona:
- Método HTTP (
POST) Content-Lengthcabeçalho
E bloqueia uploads maiores que 200 MB com um HTTP 413 Payload Too Large resposta.
iRule F5 original #
when HTTP_REQUEST { if { [HTTP::method] eq "POST" } { set content_length [HTTP::header "Content-Length"] if { $content_length ne "" && $content_length > 200000000 } { # Rejeitar solicitações acima de 200 MB HTTP::respond 413 content "Upload size exceeds limit." event disable } } }
RELIANOID Abordagem de Migração #
In RELIANOIDEssa funcionalidade pode ser implementada usando:
- Módulo WAF/IPDS
- Regras do ModSecurity
- Integração do OWASP CRS
Esta abordagem proporciona:
- Aplicação centralizada da segurança
- Melhor registro e visibilidade
- Manutenção mais fácil
- Inspeção de requisição HTTP nativa
Implantação por meio de conjunto de regras manuais #
RELIANOID Exemplo de configuração do WAF #
Sob o caminho /usr/local/relianoid/config/ipds/waf/sets/ Crie um arquivo de configuração com o seguinte conteúdo:
## início conf SecRuleEngine on SecDefaultAction "pass,log,logdata:'client:%{REMOTE_ADDR}',phase:1" SecDefaultAction "pass,log,logdata:'client:%{REMOTE_ADDR}',phase:2" SecDefaultAction "pass,log,logdata:'client:%{REMOTE_ADDR}',phase:3" SecDefaultAction "pass,log,logdata:'client:%{REMOTE_ADDR}',phase:4" ## fim conf SecRule REQUEST_METHOD "POST" \ "id:910001,\ phase:1,\ t:none,\ chain,\ deny,\ status:413,\ msg:'O tamanho do upload excede o limite.',\ log" SecRule REQUEST_HEADERS:Content-Length "@gt 200000000"
Como funciona a regra #
A regra executa a seguinte lógica:
REQUEST_METHOD "POST": Inspeciona apenas solicitações POST
REQUEST_HEADERS:Content-Length: Lê o tamanho do upload
@gt 200000000Verifica se o tamanho excede 200 MB
deny,status:413: Rejeita a solicitação
msg:'Upload size exceeds limit.': Gera mensagem de registro de auditoria
Mapeamento de comportamento equivalente de iRule F5 para RELIANOID WAF #
HTTP::method: REQUEST_METHOD
HTTP::header "Content-Length": REQUEST_HEADERS:Content-Length
HTTP::respond 413: deny,status:413
event disable: Immediate WAF deny
Implantação via interface web #
Essa configuração também pode ser implementada diretamente através do RELIANOID WebUI.
Caminho de configuração da interface web #
Acessar IPDS > WAF > Regras
Então Criar Um conjunto de regras WAF com uma regra que possui duas condições, como mostrado abaixo.

Validação #
Teste com CURL #
Solicitação de exemplo:
curl -k -X POST -H "Content-Length: 250000000" https://LB_VIP/upload -v
resultado esperado #
A resposta deve retornar:
HTTP/1.1 413 Carga útil muito grande
E a solicitação deve ser bloqueada antes de chegar ao servidor.
Validação de registro #
Verifique os registros do WAF em busca de:
O tamanho do arquivo enviado excedeu o limite.
Anotações importantes #
Dependência de comprimento do conteúdo #
Essa regra depende do cliente enviar um valor válido. Content-Length cabeçalho. Se os uploads utilizarem codificação de transferência em partes ou uploads em fluxo contínuo, proteções adicionais poderão ser necessárias.
Restringir apenas URLs específicos #
A regra pode ser encadeada com a validação de URI.
Exemplo:
SecRule REQUEST_URI "@beginsWith /upload"
guia de solução de problemas #
Regra não acionada #
Verificar:
- O WAF está habilitado no farm.
- A regra está anexada corretamente.
- O método de requisição é POST.
- O cabeçalho Content-Length está presente.
Os uploads ainda chegam ao backend. #
Causas possíveis:
- WAF não aplicado à fazenda correta
- Problema de sintaxe da regra
- O upload usa codificação em partes.
Falsos positivos #
Algumas aplicações podem, legitimamente, exigir uploads de grande porte.
Recomendação:
- Criar exceções específicas da aplicação
- Ajuste os limites cuidadosamente.
Melhores Práticas #
- Utilize limites de upload específicos do aplicativo.
- Combine com a limitação de taxa sempre que possível.
- Monitore os registros do WAF regularmente.
- Evite limites de upload desnecessariamente altos.
- Validar o comportamento de upload após a implantação.
Resumo #
As iRules do F5 usadas para restringir o tamanho dos uploads podem ser migradas para... RELIANOID Utilizando regras nativas do WAF/ModSecurity integradas ao OWASP CRS.
Esta abordagem proporciona:
- Aplicação centralizada de políticas
- Melhor registro e visibilidade
- Escalabilidade facilitada
- Complexidade de script reduzida
- Inspeção de solicitação baseada em padrões