Gladinet CentreStack and TrioFox Local File Inclusion Flaw
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 Local File Inclusion não autenticada no Gladinet CentreStack e Triofox que permite ler arquivos arbitrários do sistema, incluindo o Web.config da aplicação. O impacto real é maior que o CVSS de 7.5 sugere: o Web.config contém a machine key do ASP.NET, que combinada com CVE-2025-30406 (deserialização de ViewState) permite execução remota de código como NT AUTHORITY\SYSTEM. Está confirmada exploração ativa em campo e consta no catálogo KEV da CISA.
Detalhamento técnico
A vulnerabilidade (CWE-552, files or directories accessible to external parties) está na classe GladinetStorage.TempDownload, dentro de GSUploadDownloadProxy.dll (C:\Program Files (x86)\Gladinet Cloud Enterprise\UploadDownloadProxy\bin\). O endpoint /storage/t.dn foi projetado para servir arquivos de um diretório temporário a usuários autenticados, usando um parâmetro 's' que compõe o caminho do arquivo a partir de um TempRoot retornado por GladPDF.GetTempRoot(). Esse endpoint está exposto sem exigir autenticação e não sanitiza sequências de directory traversal (..\) no parâmetro.
Como o serviço Gladinet Cloud Enterprise roda como NT AUTHORITY\SYSTEM, o TempRoot geralmente resolve para algo como C:\Windows\Temp\glad_temp. Isso dá ao atacante, a partir desse ponto de referência, capacidade de subir diretórios (..\..\..\) e ler qualquer arquivo legível pelo processo SYSTEM em todo o disco — não apenas arquivos temporários da aplicação.
O alvo de maior valor é C:\Program Files (x86)\Gladinet Cloud Enterprise\root\Web.config, que contém a machine key do ASP.NET usada para validação e criptografia de ViewState. Posse dessa chave permite forjar payloads de ViewState que, ao serem desserializados pelo servidor (CVE-2025-30406), executam código arbitrário — encadeando duas falhas para RCE completo a partir de uma leitura de arquivo não autenticada.
Como é explorada
O vetor é uma requisição HTTP GET não autenticada ao endpoint /storage/t.dn, com o parâmetro s contendo sequências de traversal apontando para o arquivo desejado (por exemplo, o Web.config da aplicação) e um parâmetro sid. Não é necessário login, token ou configuração não padrão — a Huntress classifica isso como presente na instalação e configuração padrão do produto. O único pré-requisito é acesso de rede à interface web do CentreStack/Triofox.
Na exploração observada, o atacante primeiro reconheceu o alvo via motor de busca de ativos expostos (referrer de fofa.info), acessou a página de login (comportamento normal de reconhecimento), e então enviou a requisição de traversal para extrair o Web.config. Com a machine key em mãos, o atacante montou payloads de ViewState malicioso enviados via POST, que o servidor desserializou (evento de log 1316), executando comandos arbitrários — no caso observado, comandos de reconhecimento (ipconfig /all) com saída redirecionada a um arquivo, depois lida de volta pelo mesmo LFI.
A Huntress confirmou exploração ativa impactando ao menos três clientes até a publicação inicial do blog, e a CISA colocou a CVE no catálogo KEV com exploração confirmada. A cadeia completa (LFI + machine key + deserialização de ViewState) resulta em RCE como SYSTEM no servidor.
Versões
Como se proteger
Atualizar é a mitigação definitiva. A Gladinet lançou em 14/10/2025 a versão 16.10.10408.56683 do CentreStack corrigindo esta falha; organizações devem migrar para essa build ou posterior assim que possível. As fontes disponíveis não confirmam um número de build de correção específico para Triofox — trate qualquer instalação Triofox em versão igual ou anterior à faixa vulnerável como exposta até confirmação direta com o fornecedor/notas de release.
Se a atualização imediata não for viável, a Gladinet notificou clientes sobre um workaround imediato antes do patch estar disponível; o conteúdo dessa mitigação específica não está detalhado nas fontes lidas — consulte o advisory oficial do fornecedor para o procedimento exato. Como controle compensatório geral, restringir o acesso externo ao endpoint /storage/t.dn (ou à interface web inteira) via firewall/WAF, e monitorar/bloquear parâmetros com sequências de traversal (..\, ..%5c) nessa rota, reduz a superfície até a atualização.
Rotacionar a machine key do Web.config após a atualização é recomendável caso haja suspeita de exposição prévia do arquivo, já que a chave pode ter sido exfiltrada mesmo antes do patch — trocar apenas a versão do software não invalida uma chave já comprometida se ela permanecer inalterada na configuração pós-atualização.
Como detectar
Em logs de servidor web, procurar requisições GET para /storage/t.dn com parâmetro 's' contendo sequências de directory traversal (..\..\ ou variantes codificadas), especialmente direcionadas a Web.config ou outros arquivos fora do diretório temporário esperado (glad_temp). Respostas HTTP 200 com tamanho de payload compatível com o arquivo alvo (por exemplo, cerca de 1497 bytes para um Web.config típico) são indício de exfiltração bem-sucedida.
Em logs de aplicação do Windows, o Event ID 1316 registra atividade de desserialização de ViewState e pode indicar a etapa de exploração subsequente (RCE via CVE-2025-30406) após o roubo da machine key. Processos filhos anômalos do processo do servidor web executando comandos com payloads base64 (por exemplo, comandos de reconhecimento como ipconfig cujo output é redirecionado a arquivo e depois lido via o mesmo LFI) são outro sinal de comprometimento pós-exploração observado em campo.