Hitachi Vantara Pentaho Business Analytics Server - Use of Non-Canonical URL Paths for Authorization Decisions
Corrija agora. Ela está sob exploração confirmada pelo CISA e tem exploit funcional público.
Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.
Resumo
Falha de autorização (CWE-647) no Pentaho Business Analytics Server: a decisão de bloquear ou liberar acesso a um endpoint é tomada com base no caminho da URL antes de ele ser canonicalizado, enquanto o roteamento real do servidor resolve o mesmo caminho depois de normalizá-lo. Isso permite que um atacante não autenticado monte uma URL que escapa da regra de restrição mas ainda aponta para o recurso protegido, obtendo acesso administrativo sem credenciais. A CVE está no catálogo KEV da CISA com exploração confirmada em campo, tem módulo Metasploit e PoC pública circulando, o que a torna prioridade real de patch e não apenas um número alto de CVSS.
Detalhamento técnico
O problema é classificado como CWE-647 (Use of Non-Canonical URL Paths for Authorization Decisions). Servidores web e frameworks Java costumam ter duas camadas que interpretam a mesma URL de formas diferentes: um filtro de segurança (que aplica listas de padrões de caminho permitido/negado) e o componente que efetivamente roteia a requisição para um servlet ou controlador. Se o filtro compara o caminho 'como veio' na requisição, sem normalizar barras duplicadas, segmentos '..', ponto-e-vírgula de parâmetro de matriz, variação de maiúsculas/minúsculas ou codificação percentual, mas o roteador subjacente normaliza esse mesmo caminho antes de despachar, um atacante consegue escrever duas representações da mesma URL: uma que passa pelo filtro sem ser reconhecida como restrita, e outra que o container interpreta como o recurso protegido.
No caso do Pentaho BA Server isso afeta as regras de autorização que deveriam bloquear acesso não autenticado a áreas administrativas e a serviços internos do servidor (o advisory da Hitachi não detalha publicamente o padrão de bypass exato, e essa página não reproduz detalhe de exploração). O atacante controla inteiramente o caminho da requisição HTTP; não precisa de cookie de sessão, token ou qualquer credencial válida — o vetor é de rede, sem interação do usuário, o que explica AV:N/PR:N/UI:N no vetor CVSS.
O impacto direto do CWE-647 isolado é bypass de autorização (acesso indevido a funcionalidade restrita). O CVSS 8.6 com C:L/I:L/A:H sugere que o que se ganha por essa falha já basta para afetar disponibilidade de forma severa, e análises públicas (inclusive o título do writeup do Packet Storm, que combina 'Authentication Bypass' com 'SSTI Code Execution') indicam que pesquisadores encadeiam esse bypass de autorização com uma falha separada de injeção de template no motor de relatórios do Pentaho para chegar a execução de código arbitrário no servidor — a página oficial da Hitachi trata apenas do bypass de autorização em si.
Como é explorada
O vetor é rede pura: uma requisição HTTP para o Pentaho BA Server exposto, sem autenticação prévia, sem interação de usuário, e com complexidade baixa (AC:L) — não depende de condição de corrida, timing ou configuração não padrão conhecida. O único pré-requisito real é que a instância esteja acessível pela rede que o atacante alcança; não há indicação de que dependa de flag ou módulo opcional habilitado.
Na prática documentada por pesquisadores e refletida no módulo Metasploit e nas PoCs públicas, o bypass de autorização é usado como primeiro passo de uma cadeia: ele abre acesso a endpoints que deveriam exigir login administrativo, e a partir daí o atacante explora recursos do motor de relatórios/templates do Pentaho para injetar e executar código no servidor (padrão SSTI). O resultado final relatado é execução remota de código com o privilégio do processo do BA Server, não apenas leitura de dados administrativos.
A presença no catálogo KEV da CISA (adicionada em 03/03/2025, com prazo de correção em 24/03/2025) confirma exploração ativa observada em campo, mais de dois anos depois da publicação original da CVE — sinal de que instâncias antigas e não corrigidas continuam sendo alvo, provavelmente via varredura automatizada de servidores Pentaho expostos à internet.
Versões
Como se proteger
A correção do fornecedor é atualizar para Pentaho BA Server 9.4.0.1 ou 9.3.0.2 (dependendo do ramo em uso). A série 8.3.x é listada como afetada mas não recebeu um patch dedicado nessa numeração — instâncias em 8.3.x precisam migrar para um dos ramos corrigidos (9.3.0.2 ou 9.4.0.1) para eliminar a falha, já que não há backport documentado para 8.3.
Se a atualização não for viável de imediato, o paliativo real é reduzir a superfície de exposição: restringir o acesso de rede ao BA Server (não deixá-lo alcançável diretamente pela internet), colocando-o atrás de controle de acesso de rede/VPN, e monitorar logs de acesso a caminhos administrativos. Regras de WAF genéricas que apenas bloqueiam padrões conhecidos de path traversal têm eficácia limitada aqui, porque a essência do bug é a divergência de interpretação entre duas camadas do próprio servidor — um WAF que não canonicaliza a URL exatamente como o Pentaho faz pode não bloquear a variante usada no ataque.
Não funciona como mitigação: apenas trocar senhas de administrador ou reforçar autenticação de usuários finais, já que a falha contorna a camada de autorização antes mesmo de qualquer verificação de credencial ser relevante para o caminho não-canônico explorado.
Como detectar
Não há assinatura pública oficial e detalhada do padrão exato de bypass (o advisory da Hitachi não publica o formato da URL não-canônica explorada), então não existe um IOC único confiável para caçar retroativamente. Como sinal geral, vale observar em logs de acesso do Pentaho requisições para endpoints administrativos ou de gestão de relatórios com variações incomuns de caminho — barras duplicadas, segmentos de travessia de diretório, ponto-e-vírgula seguido de parâmetros, codificação percentual redundante ou mistura de maiúsculas/minúsculas — partindo de IPs sem sessão autenticada prévia, especialmente quando seguidas de tentativas de criação, upload ou execução de definições de relatório/template, que indicariam a segunda etapa da cadeia (SSTI/RCE).