Cross Site Scripting (XSS) Twitter / WafW00f release 0.24

By Rodrigo Montoro on December 21, 2009

Primeiramente comentarei de um XSS encontrado no twitter pelo time da N-Stalker junto com o time da iBliss (http://www.ibliss.com.br) . Fazendo alguns testes rotineiros encontramos uma situação aparentemente não muito fácil de explorar globalmente mas com possibilidades de roubo de sessão dentre outros fatores.

O twitter tem um campo de pesquisas http://www.twitter.com/timeline/search?q= .

Se digitassemos algo como <script language=javascript>alert(‘XSS’)</script> no search nada aconteceria. O problema seria quando você  salvasse o search e realizando o reload na página o código era carregado .

A falha foi reportada para o security do twitter

Discovered                        29/11/2009
Vendor Disclosure       02/12/2009
Patched                              09/12/2009
Disclosure                        09/12/2009

A correção foi extremamente rápida e vale parabenizar a equipe de desenvolvedores/equipe de segurança do twitter.

Além do report do XSS testamos o release 0.24 do WafW00f escrito pelo Sandro Gauci e pelo nosso amigo Wendel aka Dumdum. Essa ferramenta visa detectar a presença de web application firewalls e com isso colaborar com uso de possíveis técnicas de evasion para bypassar e ter maior sucesso no pentest ou analise de vulnerabilidade web .

A ferramenta suporta a detecção dos seguintes WAF’s

spooker@notsecure:/LABS/waffit$ python wafw00f.py –list

WAFW00F – Web Application Firewall Detection Tool

By Sandro Gauci && Wendel G. Henrique

Can test for these WAFs:

Profense
NetContinuum
Barracuda
HyperGuard
BinarySec
Teros
F5 Trafficshield
F5 ASM
Airlock
Citrix NetScaler
ModSecurity
DenyALL
dotDefender
webApp.secure
BIG-IP
URLScan
WebKnight
SecureIIS
BeeWare
Imperva

spooker@notsecure:/LABS/waffit$

A ferramenta basicamente envia algumas requisições consideradas maliciosas pela maioria dos web application firewalls e baseado nas respostas enumera o que está sendo utilizado . Fiz um teste em um hosting que conheço que utiliza Imperva e o resultado foi perfeito.

Algumas das requisições maliciosas enviadas pelo mesmo :

send: ‘GET /../../../../etc/passwd HTTP/1.1\r\nHost: www.domain.com\r\nAccept-Encoding: identity\r\nAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\nAccept: */*\r\nUser-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b1) Gecko/20081007 Firefox/3.0\r\n\r\n’

send: ‘GET / HTTP/1.1\r\nHost: www.domain.com\r\nAccept-Encoding: identity\r\nTransfer-Encoding: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz<RECORTADO>\r\nAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\nAccept: */*\r\nUser-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b1) Gecko/20081007 Firefox/3.0\r\n\r\n’

send: ‘GET /cmd.exe HTTP/1.1\r\nHost: www.domain.com\r\nAccept-Encoding: identity\r\nAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\nAccept: */*\r\nUser-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b1) Gecko/20081007 Firefox/3.0\r\n\r\n’

spooker@notsecure:/LABS/waffit$ python wafw00f.py http://www.domain.com

WAFW00F – Web Application Firewall Detection Tool

By Sandro Gauci && Wendel G. Henrique

Checking http://www.domain.com
The site http://www.domain.com is behind a Imperva
Number of requests: 8
spooker@notsecure:/LABS/waffit$

A ferramenta é bem interessante para ajudar no uso ou não de técnicas de evasion e não sei se existem números ainda quanto a eficácia da mesma em todas os WAFs listados mas certamente a ferramenta continua em crescimento e vamos aguarda o release 0.25 .

Links:

http://waffit.googlecode.com/
http://pentestit.com/2009/12/13/update-wafw00f-revision-24/

Aproveitando a equipe da N-Stalker gostaria de desejar Feliz Natal e Ótimo Ano Novo a todos que nos acompanham.

N-Stalker Team

This entry was posted in Community Blog. Bookmark the permalink.