← back
CVE-2025-14611highunder attackCWE-798

Gladinet CentreStack and TrioFox Hard Coded AES Keys

98Vexday Risk Score

Patch now. It under exploitation confirmed by CISA and has a working public exploit.

ssvc Actcvss 7.1epss 53%
from disclosure to weapon17 days
Published on NVDDec 12
1st PoC+17d
metasploitDec 10
CISA KEV+3d
exploitation probability
53%top 1% of all CVEs
observed exploitation
yesCISA + VulnCheck
2 public exploit(s)
Action required by CISAfederal deadline: 2026-01-05

Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.

Summary

Falha de criptografia com chave AES fixa (CWE-798) no Gladinet CentreStack e Triofox, versões anteriores à 16.12.10420.56791. O handler HTTP filesvr.dn usa uma chave/IV AES-256 gerados de forma previsível (não realmente aleatória) para validar 'Access Tickets', permitindo a um atacante não autenticado forjar tickets e obter inclusão arbitrária de arquivo local. Isoladamente o impacto é limitado (leitura de arquivo), mas encadeada com outra falha conhecida do produto (deserialização de ViewState, CVE-2025-30406) resulta em execução remota de código — e é exatamente essa cadeia que está sendo explorada ativamente, o que justifica a entrada no KEV da CISA.

Technical detail

O componente vulnerável é o HTTP Handler customizado filesvr.dn, mapeado no web.config para a classe GladinetStorage.FileDownloadHandler. Ele aceita um parâmetro de query 't' — um 'Access Ticket' criptografado que deveria carregar dados de autorização e o arquivo solicitado em uma única string opaca.

Quando o processo IIS (w3wp.exe) do CentreStack inicia, a classe SysKeyMgr chama AccessKeyMgr64.GetSysEncKey, que passa DateTime.Now.ToString() para uma função nativa GenerateSecKey em GladCtrl64.dll. Essa função retorna duas strings de 100 bytes carregadas em memória: SysKey (fonte da chave AES de 32 bytes) e SysKey1 (fonte do IV de 16 bytes). O ponto central da falha é que esse material de chave não é efetivamente único/aleatório por instalação — é o mesmo em cenários analisados pela Huntress, o que caracteriza o 'hardcoded' do nome da CVE, apesar de aparentar derivação dinâmica.

Ao receber o parâmetro 't', o handler faz uma sanitização customizada (troca ':' por '+' e '|' por '/'), decodifica em Base64 e chama AccessTicket.Decrypt, que usa os primeiros 32 bytes de SysKey e os primeiros 16 bytes de SysKey1 para configurar um provider AES-256. Como esses bytes são conhecidos/reprodutíveis, qualquer ticket cifrado com o mesmo material é aceito como confiável pelo sistema — o atacante não precisa roubar nada do servidor-alvo, só reproduzir a lógica de geração de chave e forjar seu próprio ticket válido.

A fonte técnica disponível (Huntress) descreve que o ticket decifrado revela uma string em texto plano contendo múltiplos campos de controle (o detalhe exato desses campos não está totalmente documentado na fonte consultada), usados pelo handler para decidir qual arquivo servir — daí o path de inclusão arbitrária de arquivo local descrito pelo fornecedor.

How it’s exploited

O vetor é HTTP direto contra o endpoint /storage/filesvr.dn, sem autenticação (PR:N) e sem interação do usuário (UI:N), exigido apenas acesso de rede ao servidor exposto (AV:N). A complexidade de ataque é classificada como alta (AC:H) porque o atacante precisa primeiro reproduzir a lógica de derivação de chave/IV do binário GladCtrl64.dll para forjar um ticket válido — trabalho de engenharia reversa já feito publicamente (há PoC e módulo Metasploit), o que reduz a barreira prática a quase zero para quem tem a análise em mãos.

A Huntress documentou exploração ativa em ambientes de clientes desde início de dezembro de 2025, com IoCs específicos: requisições a /storage/filesvr.dn com parâmetro 't' contendo tickets manipulados. Em incidentes observados em 15/12, o comprometimento seguiu com download e execução de um binário (conqueror.exe) via PowerShell disparado por w3wp.exe, a partir de infraestrutura em 185.196.11.207:8000, seguido de enumeração de host (quser.exe) e checagem de diretórios de produtos de segurança instalados. Logs de eventos (Event ID 1316, Application EVTX) associaram parte do ataque ao IP 146.70.134.50 explorando a vulnerabilidade separada de deserialização de ViewState (CVE-2025-30406) — evidenciando que a exploração real em campo encadeia esta falha de chave fixa com a de deserialização para chegar a execução remota de código completa, exatamente como o texto oficial da CVE alerta ('pode ser usada com vulnerabilidades anteriores para comprometimento total do sistema').

Há relatos não confirmados, mencionados pela Huntress, de que o grupo de ransomware cl0p estaria alvejando servidores CentreStack expostos à internet usando esse vetor; a própria Huntress trata essa atribuição como não definitivamente confirmada no momento da publicação.

Versions

Affected
Gladinet CentreStack e Triofox em versões anteriores à 16.12.10420.56791.
Fixed in
16.12.10420.56791 (não há menção, nas fontes consultadas, de backports para ramos anteriores distintos desta build).

How to protect

Atualizar para a versão 16.12.10420.56791 ou superior é a correção primária indicada pelo fornecedor e reforçada pela Huntress. Não há uma configuração de contorno documentada nas fontes consultadas que neutralize completamente a falha sem atualizar — o problema está na geração de chave interna do binário, não em um parâmetro configurável.

A CISA, ao incluir a CVE no catálogo KEV (adicionada em 15/12/2025, prazo 05/01/2026), orienta aplicar as mitigações do fornecedor, seguir a diretriz BOD 22-01 para serviços em nuvem quando aplicável, ou descontinuar o uso do produto caso não seja possível mitigar. O Gladinet também mantém um guia de hardening do cluster CentreStack referenciado pela CISA, mas o conteúdo específico desse guia não foi analisado nesta pesquisa — não é possível confirmar se ele endereça diretamente esta CVE.

Como esta falha costuma ser explorada em conjunto com CVE-2025-30406 (deserialização de ViewState) para chegar a RCE completo, corrigir apenas uma das duas deixa a cadeia de ataque parcialmente aberta; ambientes que não conseguem atualizar imediatamente devem, no mínimo, restringir exposição direta à internet do endpoint /storage/filesvr.dn e monitorar os indicadores de comprometimento conhecidos.

How to detect

Monitorar logs de acesso web por requisições ao endpoint /storage/filesvr.dn com parâmetro de query 't' contendo strings longas em formato Base64-like (com uso incomum dos caracteres ':' e '|', que o handler troca por '+' e '/'), especialmente sem sessão autenticada prévia. Em nível de host, observar w3wp.exe gerando processos cmd.exe/powershell.exe com comandos codificados em Base64, downloads via Invoke-WebRequest/curl para IPs externos seguidos de execução de binários a partir de C:\Users\Public\, e uso de quser.exe para enumeração — padrão reportado em incidentes reais associados a esta CVE.

Como indicador correlato da cadeia de exploração completa, verificar no Application EVTX o Event ID 1316 associado a atividade de deserialização de ViewState (ligada à CVE-2025-30406) originada de IPs suspeitos — sua presença sugere que a exploração avançou além da simples leitura de arquivo para execução de código. Não há um indicador único e confiável que comprove tentativa de exploração apenas com base no tráfego cifrado do ticket, já que ele é desenhado para parecer um parâmetro legítimo do produto.

Researched and written with AI from the vendor advisory and public analysis, with the sources above. Always confirm the fixed version in the official advisory before acting.
Gladinet CentreStack and Triofox prior to version 16.12.10420.56791 used hardcoded values for their implementation of the AES cryptoscheme. This degrades security for public exposed endpoints that may make use of it and may offer arbitrary local file inclusion when provided a specially crafted request without authentication. This opens the door for future exploitation and can be leveraged with previous vulnerabilities to gain a full system compromise.
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:H/SI:H/SA:H/E:A
⚠ Public resources, to assess the exposure of systems you control or are authorized to test. Test only with authorization.