Zigbee 2 ExternalJSExtension.getFilePath() do MQTT (lib/extension/externalJS.ts) junta um parâmetro `name` recebido através de uma mensagem MQTT (topic zigbee 2 mqtt/bridge/request/extension/save) no caminho base de extensões usando path. join(basePath, name) sem desinfectação. Porque path. join() resolve sequências `../`, um nome como `../../ tmp/ evil.js ' escapa do diretório de extensões pretendido. O gestor de extensão só valida que o nome termina em.js/.mjs/.cjs, escreve o arquivo e, em seguida, o importa dinamicamente através do Node.js import(), obtendo a execução de código remoto. Requer a opção de configuração `enable_external_js` (desativada por padrão, mas normalmente habilitada nas instalações legado) e o acesso do corretor MQTT, que é frequentemente não autentificado nas implantações reais. O getFilePath() idêntico não- satisfeito também é usado pelo gestor de remoção de extensão, permitindo a exclusão arbitrária de arquivos. Registro de aconselhamento: GHSA- 77 vh- g 47 P- vh 46. Identificadores relacionados: CVE- 2026 - 71279.

Tempo: GitHub Advisory Database publicou este registro em 2026 - 08 - 05 T 15: 32: 20.000 Z e lista a sua última modificação como 2026 - 08 - 05 T 15: 32: 20.000 Z. Severidade: ALTAMENTE. Dados de pontuação publicados: CVSS_V 3: CVSS: 3.1 /AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.

Software afetado: o registro de aconselhamento não fornece um pacote normalizado ou faixa de versões. Classificação e evidência: identificadores de fraqueza CWE- 22. O registro contém 3 suporte de referências nestes tipos: AVISO, WEB.