Um caminho de passagem autenticado no ` assessments/ icon` permite que o arquivo SVG local seja lido passando sequências de passagem no parâmetro `extensão`. O problema é causado por verificações de existência de arquivos ocorrendo antes da validação da extensão. ### Detalhes O objetivo: - `src/controllers/AssetsController.php: 1115 - 1123 ` - `actionIcon(string $extension)` chama `Assets::iconPath($extension)` e retorna `endFile($path,...)`. Em `Assets:: iconPath()`: - O caminho é construído a partir de `extensão' controlada pelo usuário: - `src/ helpers/Assets.php: 906 - 909 ` - Se `file_exists($path)` for verdadeiro, o caminho é devolvido imediatamente: - `src/helpers/Assets.php: 910 - 912 `.
A validação existe em `Assets:: iconSvg()`: - `preg_match('/^\w+$/', $extension)` - `src/ helpers/Assets.php: 927 - 931 ` No entanto, essa validação só é alcançada se ` iconPath()` encontrar um arquivo. Então, as cargas úteis transversais que resolvem para a validação de contornação de arquivos `.svg` existentes e são servidas por `sendFile()`. - Os usuários autenticados podem ler arquivos locais.svg acessíveis ao processo de aplicação.
- 30 f 5 f 1 a 8 d 6 edf 0 f 3 a 00 ser 72 c 42 c 78 d 9 dc 7 d 72 d 5 c Registro de aconselhamento: GHSA- c 43 v- 4 cr 8 - 6 MVP. Identificadores relacionados: CVE- 2026 - 56394. Tempo: GitHub Advisory Database publicou este registro em 2026 - 07 - 09 T 13: 44: 06.000 Z e lista a sua última modificação como 2026 - 08 - 06 T 21: 58: 07.000 Z.
Severidade: LOW. Dados de pontuação publicados: CVSS_V 4: CVSS: 4.0 /AV:L/AC:L/AT:P/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/África do Sul:N. Software afetado e informações de versão: Packagist package craftcms/cms — ECOSISTEM: introduzido 4.0.0 - RC 1, corrigido 4.17.7. Pacote packagist craftcms/cms — ECOSISTEM: introduzido 5.0.0 - RC 1, corrigido 5.9.13. Classificação e evidência: identificadores de fraqueza CWE- 22. O registro contém 5 suporte de referências nestes tipos: WEB, AVISO, EMBALAGAMENTO.