Plataforma
nodejs
Componente
liquidjs
Corrigido em
10.25.1
10.25.0
A vulnerabilidade CVE-2026-30952 é um Path Traversal identificado no liquidjs, que permite o acesso não autorizado a arquivos no sistema. Essa falha ocorre devido à forma como o require.resolve() é utilizado como fallback, sem restrições de diretório. A vulnerabilidade afeta versões anteriores a 10.25.0 e foi corrigida com a versão 10.25.0.
Um atacante pode explorar essa vulnerabilidade para ler arquivos sensíveis no servidor, como arquivos de configuração, chaves de API ou até mesmo código-fonte. Ao controlar o conteúdo do template ou especificar o caminho do arquivo a ser incluído como uma variável Liquid (com dynamicPartials: true, que é o padrão), o atacante pode contornar as proteções e acessar arquivos fora do diretório esperado. O impacto pode variar dependendo da localização dos arquivos acessíveis e do nível de privilégios do atacante, mas em cenários críticos, pode levar à exposição de informações confidenciais e comprometimento do sistema.
A vulnerabilidade foi divulgada em 2026-03-10. Não há informações disponíveis sobre exploração ativa ou inclusão no KEV (CISA KEV catalog) no momento. A existência de dynamicPartials: true como padrão aumenta a probabilidade de exploração, especialmente em aplicações que permitem a injeção de código Liquid.
Applications built on Node.js that utilize liquidjs for templating, particularly those with default configurations enabling dynamicPartials: true or allowing user-controlled template content, are at risk. Shared hosting environments where multiple applications share the same server and file system are also particularly vulnerable, as a compromise in one application could potentially lead to access to files belonging to others.
• nodejs / server:
ps aux | grep liquidjs
find / -name "liquidjs" -type d 2>/dev/null• generic web:
curl -I 'http://your-application.com/templates/include?file=../../../../etc/passwd' # Attempt to access sensitive files
grep -r 'require.resolve' /path/to/your/application/node_modules/liquidjs/disclosure
Status do Exploit
EPSS
0.02% (percentil 5%)
CISA SSVC
A mitigação primária é atualizar o liquidjs para a versão 10.25.0 ou superior, que corrige a vulnerabilidade. Se a atualização imediata não for possível, considere restringir o uso de dynamicPartials: true e validar rigorosamente os caminhos dos arquivos incluídos. Implementar um Web Application Firewall (WAF) com regras para bloquear requisições com caminhos de arquivo suspeitos também pode ajudar a reduzir o risco. Após a atualização, confirme a correção verificando se o acesso a arquivos fora do diretório esperado é bloqueado.
Atualize a versão do liquidjs para a 10.25.0 ou superior. Isso corrige a vulnerabilidade de path traversal que permite o acesso a arquivos arbitrários.
Análise de vulnerabilidades e alertas críticos diretamente no seu e-mail.
CVE-2026-30952 is a Path Traversal vulnerability affecting liquidjs versions prior to 10.25.0. It allows attackers to potentially read arbitrary files on the server by manipulating template content or filepaths.
You are affected if you are using liquidjs versions earlier than 10.25.0 and your application allows user control over template content or filepaths, especially if dynamicPartials: true is enabled.
Upgrade to liquidjs version 10.25.0 or later. Consider WAF rules or disabling dynamicPartials: true as temporary mitigations.
There is currently no evidence of active exploitation campaigns targeting CVE-2026-30952, but the vulnerability's nature makes it potentially exploitable.
Refer to the liquidjs GitHub repository for updates and advisories: https://github.com/harttle/liquidjs
Envie seu arquivo de dependências e descubra na hora se esta e outras CVEs te atingem.