Siyuan · Siyuan · CVE-2026-30869
**Nome do Software Vulnerável e Versões Afetadas**
Versões do SiYuan anteriores a 3.5.10
**Descrição**
Existe uma vulnerabilidade de travessia de caminho no endpoint `/export`, permitindo que um atacante leia arquivos arbitrários do sistema de arquivos do servidor. A exploração envolve o uso de sequências de travessia duplamente codificadas para acessar arquivos sensíveis como `conf/conf.json`, que contém segredos, incluindo o token da API, a chave de assinatura de cookies e o código de autenticação de acesso ao workspace. O vazamento desses segredos poderia conceder acesso administrativo à API do kernel do SiYuan e, em alguns casos, possivelmente levar à execução remota de código (RCE). O código vulnerável está localizado em `serve.go` (linhas 303, 315, 320, 340, 955-957) e `session.go` (linhas 292-295). A vulnerabilidade decorre da confiança na saída de `url.PathUnescape` e da junção sem garantir que o caminho resultante permaneça dentro do `exportBaseDir`. O uso de sequências de travessia duplamente codificadas (`%252e%252e`) contorna a rejeição de URL com pontos duplos, enquanto o `CheckAuth` concede acesso administrativo para requisições do localhost ao `/export/*` quando o código de autenticação de acesso está configurado. Uma configuração CORS global (`Access-Control-Allow-Origin: *`) permite que páginas web maliciosas leiam respostas do localhost. Um atacante pode enviar uma requisição GET para `/export/%252e%252e/%252e%252e/conf/conf.json` para recuperar informações sensíveis.
**Recomendações**
As versões anteriores a 3.5.10 devem ser atualizadas para a versão 3.5.10 ou posterior.