_ _ (_) | | _ _ ____ ____ _ __| | ___ _ __ ___ | | '_ \ \ / / _` |/ _` |/ _ \ '__/ __| | | | | \ V / (_| | (_| | __/ | \__ \ |_|_| |_|\_/ \__,_|\__,_|\___|_| |___/ Forum Invaders (Un)Security Team Titulo: Web Apps Firgerprinting Autor : fvox of forum-invaders.com.br Data : 22.04.2010 ########################## Índice - Web Apps Fingerprinting ########################## Firgerprinting [0x00] - Introdução [0x01] - Ferramentas Online [0x02] - HTML Codes [0x03] - Manuais de instalação ###################### [0x00] - Introdução ###################### O objetivo de realizar o firgerprinting em um web app é obter informações úteis para uma futura exploração. Neste paper, eu mostrarei técnicas para obter, por exemplo, a versão de um CMS. Com a versão do web app em maõs, podemos procurar bugs e exploits já descobertos com maior facilidade. ############################# [0x01] - Ferramentas Online ############################# Um exemplo de site que pode te ajudar com o fuzzing é a ferramenta Sucuri WIGS: http://sucuri.net/?page=docs&title=fingerprinting-web-apps No link acima, a própria tool online mostra um tutorial de como encontrar versões dos CMS através do diff/grep (gnu/linux) buscando a diferença em códigos JavaScript e CSS que variam conforme a versão do aplicativo instalado no servidor. Basicamente, você baixa os arquivos de instalação de várias versões do CMS utilizado no site, e utiliza o comando diff para comparar as modificações nos arquivos. Caso encontre pouca (preferencialmente nenhuma haha) diferença, o site estará utilizando a versão testada por você. ##################### [0x02] - HTML Codes ##################### Podemos procurar versões em inúmeras páginas do código de fonte do HTML do CMS. Inicialmente, podemos procurar na tag META. Geralmente podemos encontrar boas infos logo no início da source: É possível que haja a versão (mesmo visível ao usuário) no rodapé da página. No fim da página geralmente encontramos algo como "Powered by CMS 1.2.3.4", juntamente com o copyright do aplicativo. Também é possível que haja a versão do aplicativo em partes comentadas do HTML ou de JavaScripts/CSSs. /* Copyright CMS x.x.0 */ É importante checar se há informações do tema instalado, e por exemplo, pesquisar no Google qual versão do aplicativo instalado é compatível com o tema. ################################ [0x03] - Manuais de instalação ################################ Arquivos deixados após a completa instalação também podem ser de grande utilidade. Geralmente, os CMS vem acompanhados de arquivos que guiam o cliente a proceder com a instalação corretamente, como por exemplo: http://host.com/path/readme.htm(l) http://host.com/path/readme.txt http://host.com/path/install.htm(l) http://host.com/path/install.txt http://host.com/path/installation.htm(l) http://host.com/path/installation.txt http://host.com/path/RELEASE-NOTES.txt http://host.com/path/release.txt http://host.com/path/install_pt.txt (en para ingles e por ai vai) Fim do tutorial. Atencisamente, fvox.