Curly-Haired-Baboon

#2808de 53,633
89.8CVSS total
Vulnerabilidades · 10
Alta
3
Crítica
7
PT-2026-39288
9.4
2026-05-08
Siyuan · Siyuan · CVE-2026-44670
**Nome do Software Vulnerável e Versões Afetadas** SiYuan versões anteriores a 3.7.0 **Descrição** O software não realiza a filtragem (escape) de HTML ao armazenar e renderizar nomes de Visualizações de Atributos (AV). O kernel armazena esses nomes sem escape e utiliza uma substituição de string bruta para incorporá-los em HTML antes de enviá-los aos clientes via WebSocket. Isso permite a injeção de HTML através de três caminhos no cliente: `render.ts` (via `outerHTML`), `Title.ts` (via `innerHTML`) e `transaction.ts` (via `innerHTML`). Como o BrowserWindow principal é configurado com `nodeIntegration: true`, `contextIsolation: false` e `webSecurity: false`, essa injeção de HTML pode ser escalada para a execução de código Node.js (RCE) no desktop da vítima. O payload é persistente, pois é armazenado em disco, replicado por transportes de sincronização (S3, WebDAV, nuvem) e sobrevive a processos de exportação e importação. Ele pode ser acionado por qualquer função de usuário que abra um documento vinculado à AV afetada. Detalhes técnicos incluem o uso do endpoint `/api/transactions` com a ação `setAttrViewName` para implantar o payload. A vulnerabilidade é acessível via requisições de origem local, incluindo aquelas de origens `chrome-extension://` permitidas, permitindo que extensões de navegador maliciosas executem o ataque. **Recomendações** Atualize para a versão 3.7.0. Como mitigação temporária, restrinja o acesso ao endpoint `/api/transactions` ou evite importar arquivos `.sy.zip` de fontes não confiáveis.
PT-2026-39003
9.6
2026-05-08
Praisonai · Praisonai · CVE-2026-44336
**Nome do Software Vulnerável e Versões Afetadas** PraisonAI versões anteriores a 4.6.34 **Descrição** O servidor Model Context Protocol (MCP) no PraisonAI contém uma falha de travessia de caminho (path traversal) em suas ferramentas de manipulação de arquivos. O servidor registra quatro ferramentas por padrão: 'praisonai.rules.create', 'praisonai.rules.show', 'praisonai.rules.delete' e 'praisonai.workflow.show'. Essas ferramentas aceitam strings de caminho ou nome de arquivo através do endpoint `tools/call` e as anexam ao diretório `~/.praison/rules/` (ou aceitam caminhos absolutos no caso de 'praisonai.workflow.show') sem realizar verificações de contenção. Além disso, o despachante JSON-RPC passa `params["arguments"]` para os manipuladores via `**kwargs` sem validá-los em relação ao esquema de entrada. Um invasor pode usar a variável `rule name` com sequências de travessia (ex: `../../`) para ler, escrever ou excluir qualquer arquivo para o qual o usuário em execução tenha permissões. Isso pode ser escalado para execução remota de código ao escrever um arquivo Python `.pth` no diretório site-packages do usuário, que é então executado por qualquer processo Python subsequente iniciado pelo usuário. Este problema pode ser acionado via um LLM conectado ao MCP através de injeção de prompt indireta (ex: conteúdo web malicioso), ou via o endpoint `praisonai mcp serve --transport http-stream`, que por padrão não exige autenticação em loopback. **Recomendações** Atualize para a versão 4.6.34. Como medida paliativa temporária, restrinja o acesso à interface de loopback ou garanta que a flag `--api-key` seja utilizada ao executar o servidor MCP com transporte http-stream para evitar acesso não autenticado.
PT-2026-39285
9.4
2026-05-08
Siyuan · Siyuan · CVE-2026-44588
**Nome do Software Vulnerável e Versões Afetadas** SiYuan versões anteriores a 3.7.0 **Descrição** Existe um problema no manipulador de mouseover de tooltips onde o software lê o atributo `aria-label` e o processa usando `decodeURIComponent` antes de atribuir o resultado ao `messageElement.innerHTML`. O codificador `escapeAriaLabel()` lida apenas com caracteres especiais de HTML padrão e ignora escapes de URL `%XX`. Consequentemente, um título de documento contendo caracteres codificados em URL (ex: `%3Cimg src=x onerror=...%3E`) ignora o codificador e é convertido em tags HTML literais pelo `decodeURIComponent` durante o processo de renderização. Quando atribuído ao `innerHTML`, o interpretador HTML executa o script injetado. Como o renderizador está configurado com `nodeIntegration: true`, `contextIsolation: false` e `webSecurity: false`, o manipulador injetado pode acessar `require('child process')`, levando à execução de código arbitrário no desktop da vítima. Isso pode ser acionado ao passar o mouse sobre resultados de pesquisa, tooltips da árvore de arquivos ou nomes e descrições de colunas AV. **Recomendações** Atualize para a versão 3.7.0. Como medida paliativa temporária, restrinja o uso da propriedade `innerHTML` em `app/src/dialog/tooltip.ts`, substituindo-a por `textContent` para evitar a interpretação de HTML nas mensagens de tooltip. Evite o uso de `decodeURIComponent` em caminhos genéricos de `aria-label` em `app/src/block/popover.ts`.