[Owasp-brazilian] Firewalls de Aplicação WEB, Idiomas e Expressões Regulares - Condições de Bypass

Fernando Cima fcima at microsoft.com
Thu Nov 19 11:50:38 EST 2009


Oi Rodrigo,

Pela descrição da feature o WAF vai normalizar somente a URL no cabeçalho HTTP. No ataque do Nash Lion as expressões estão no corpo da requisição.

Abraços,

- Fernnado Cima

-----Original Message-----
From: owasp-brazilian-bounces at lists.owasp.org [mailto:owasp-brazilian-bounces at lists.owasp.org] On Behalf Of Rodrigo Montoro(Sp0oKeR)
Sent: quinta-feira, 19 de novembro de 2009 20:47
To: Wagner Elias
Cc: owasp-brazilian at lists.owasp.org
Subject: Re: [Owasp-brazilian] Firewalls de Aplicação WEB, Idiomas e Expressões Regulares - Condições de Bypass

Eu fiquei curioso do Imperva, achei mais isso  que acredito que mataria o problema

HTTP Protocol Validation

    HTTP protocol validation prevents protocol exploits including buffer overflow, malicious encoding, HTTP
    smuggling, and illegal server operations. Imperva provides you with a default policy that enables strict
    adherence to RFC standards, while allowing minor variations for specific applications.
    Before the validation, SecureSphere normalizes the URL to provide a common basis for validation. This
    includes decoding, conversion to UTF8, conversion to lower case (if service is configured as case insensitive),
    directory normalization and so on.

    The HTTP protocol validation policy enables to protect your system against the evasion techniques, such as
    encoding attempts. It is very important to stop the evasion technique on the service level. If the malicious
    traffic is not blocked on the service level, then the application level SecureSphere policies are not able to
    provide protection, as the protection is evaded.


Logicamente tem que ver como esse WAF no qual ninguem sabe o nome estava configurado. Muitas vezes se pegar uma aplicação codada de forma fora de um padrão gera muito alerta e voce pode simplesmente cansado de tanto alerta da um disable =/ . Voces sabem que isso acontece com mta frequencia.

Quanto a problemas de aplicação o pessoal aproveita muito o legado antigo e fica aquela colcha de retalhos.  Infelizmente WAF dentre outras dezenas de produtos de segurança não fazem milagres . =D!

Abs!


2009/11/19 Wagner Elias <wagner.elias at gmail.com>:
> Oi Nash,
>
> eu entendi o que você quis dizer, realmente no caso onde a aplicação 
> retira o acento haverá o bypass.
>
> Mas neste caso não é um problema do WAF estar tratando charset e/ou 
> canonicalization de forma adequada, pois o problema é app que está 
> causando quando retira o acento.
>
> O WAF não consegue resolver problemas de arquitetura, definições 
> absurdas como esta que são feitas no desenvolvimento, errado é quem 
> acha que tem uma app completamente torta e acha que o WAF vai 
> resolver.
>
> Abs.
>
> 2009/11/19 Nash Leon <nashleon at yahoo.com.br>:
>> Como vai, Wagner?
>>
>> Vou me aprofundar um pouco em expressão regular pra tentar deixar 
>> mais claro.
>>
>> Quando a gente define uma lista [A-Z] numa expressão regular, essa 
>> lista vai cobrir aquilo que está no intervalo "ASCII" de A(0x41) a 
>> Z(0x5A).. logo, acentos não se encontram nesse intervalo, ok?
>>
>> Se vocês verem o tela que coloquei no .pdf de caso de uso, verá que 
>> estou num sistema com UTF-8 e charset definido para pt_BR, por isso 
>> que eu consigo enviar na shell letras com acentos(É). Mas a regex não 
>> conseguiu ser bem sucedida porque usou um intervalo.
>>
>> Como o Fernando Cima citou, se a normatização/canonização do WAF não 
>> levar em conta o idioma das aplicações que ele está protegendo, ele 
>> poderá conter expressões regulares como a lista[A-Z] mesmo rodando em 
>> UTF-8 passíveis de bypass quando um atacante enviar letras com 
>> acentos. Por que por padrão as bibliotecas de regex(como pcre, por 
>> exemplo, constroem a lista apenas usando o intervalo ASCII).
>>
>> De "http://gambasdoc.org/help/doc/pcre":
>>
>> "In PCRE, \d, \D, \s, \S, \w, and \W recognize only ASCII characters."
>>
>>
>> Espero ter deixado mais claro o problema.
>>
>> Podemos dizer que a aplicação não deveria mudar as letras com acento 
>> para sem acento, mas vai dizer isso pra uma loja gigante como as que 
>> citei no exemplo?
>>
>> Então, é imperativo checar se o WAF está mesmo protegendo a aplicação 
>> por validar as regras incluindo letras acentuadas em suas regex.
>>
>> O conceito de posix é interessante pois se a expressão regular tiver 
>> algo como [[:alpha:]], ela vai procurar por todo alfabeto do idioma 
>> da máquina, no nosso caso, procurará por Á(ND), É(XECUTE), Í(NNER), 
>> Ô(R), Ü(NION)... :)
>>
>>
>> Um cordial abraço a todos,
>>
>> Nash Leon.
>>
>> --- Em qui, 19/11/09, Wagner Elias <wagner.elias at gmail.com> escreveu:
>>
>>> De: Wagner Elias <wagner.elias at gmail.com>
>>> Assunto: Re: [Owasp-brazilian] Firewalls de Aplicação WEB, Idiomas e 
>>> Expressões Regulares - Condições de Bypass
>>> Para: "Rodrigo Montoro(Sp0oKeR)" <spooker at gmail.com>
>>> Cc: "Nash Leon" <nashleon at yahoo.com.br>, 
>>> owasp-brazilian at lists.owasp.org
>>> Data: Quinta-feira, 19 de Novembro de 2009, 14:07 Nash,
>>>
>>> como não é um problema de charset?
>>>
>>> Ou o WAF não valida acentos ou a aplicação. No caso do exemplo que 
>>> você disse que a app tira o acento (problema de charset) o problema 
>>> é da app e não do WAF.
>>>
>>> Abs.
>>>
>>
>>
>>
>>      
>> _____________________________________________________________________
>> _______________ Veja quais são os assuntos do momento no Yahoo! 
>> +Buscados http://br.maisbuscados.yahoo.com
>>
>
>
>
> --
> Wagner Elias - OWASP Leader Project Brazil
> ------------------------------------------------------------------
> Twitter: www.twitter.com/welias
> Blog: http://wagnerelias.com
> Profile: http://www.linkedin.com/in/wagnerelias
> _______________________________________________
> Owasp-brazilian mailing list
> Owasp-brazilian at lists.owasp.org
> https://lists.owasp.org/mailman/listinfo/owasp-brazilian
>



--
Rodrigo Montoro (Sp0oKeR)
http://www.spooker.com.br
http://www.twitter.com/spookerlabs
http://www.linkedin.com/in/spooker
_______________________________________________
Owasp-brazilian mailing list
Owasp-brazilian at lists.owasp.org
https://lists.owasp.org/mailman/listinfo/owasp-brazilian


More information about the Owasp-brazilian mailing list