`quasar@ 2.20.1 `, a versão mais recente publicada no momento do teste, parece ser vulnerável à poluição protótipo através do utilitário público ` extend()` exportado da raiz do pacote. Quando ` extende( true, target, source)` for usado para uma fusão profunda, as chaves de objetos controlados pelo atacante são copiadas recursivamente para o objeto alvo sem bloquear os primitivos protótipos de poluição, como `__proto__`, `constructor' ou `prototipo'. Isto pode permitir que as propriedades controladas pelo atacante sejam escritas para `Object.prototype`. ``` texto src/utils/extend/extend.js ```. Os arquivos distribuídos incluem:.

``` texto dist/quasar.server.prod.js dist/quasar.server.prod.cjs dist/quasar.client.js ``. O pacote raiz exporta publicamente a "extensão". Durante a fusão profunda, as chaves do objeto fonte são atribuídas recursivamente ao objeto alvo. Se o objeto fonte contém uma propriedade própria `__proto__', a fusão pode descer para o objeto protótipo e atribuir propriedades controladas pelo atacante para `Object.prototype`. ``` bash RM - rf /tmp/quasar-extende-pp-poc mkdir /tmp/quasar-extende-pp-poc cd /tmp/quasar-extende-pp-poc. npm init -y >/dev/null npm instalar quasar@ 2.20.1 Vue@ 3.5.31 >/ dev/ null cat > hack. mjs << 'JS' 'importa { estender } do 'quasar'. excluir Object.prototype. poluted; estender( true, {}, { ['__proto____]]: { poluído: 'sim' } }. console.log(({}). poluído);.

excluir Object. prototype. poluted; JS. ``` Texto não definido ``` Este é um protótipo de vulnerabilidade à poluição. Se um aplicativo passar objetos controlados pelo usuário ou parcialmente controlados pelo usuário para `extende( true,...)`, um atacante poderá ser capaz de poluir ` Objet.prototype` no mesmo processo JavaScript. Dependendo de como a propriedade poluída é consumida mais tarde, isso pode levar a um bypass lógico, injeção padrão de opção insegura, negação de serviço ou outro impacto de segurança específico do aplicativo.

Rejeite ou ignore com segurança as chaves perigosas antes da atribuição, incluindo. ``` text __proto__ construtor de protótipos ``` A implementação de fusão também deve evitar descer em propriedades relacionadas com protótipos durante a fusão recursiva. Registro de aconselhamento: GHSA- 3 r 53 - 75 j 5 - 3 g 7 j. Identificadores relacionados: CVE- 2026 - 73647. Tempo: GitHub Advisory Database publicou este registro em 2026 - 07 - 24 T 22: 36: 45.000 Z e lista a sua última modificação como 2026 - 08 - 13 T 17: 57: 16.000 Z.

Gravidade: MODERAR. Dados de pontuação publicados: CVSS_V 3: CVSS: 3.1 /AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L. Software afetado e informações de versão: pacote npm quasar — ECOSISTEM: introduzido 0, corrigido 2.22.0. Classificação e evidência: identificadores de fraqueza CWE- 1321. O registro contém 4 suporte de referências nestes tipos: WEB, PACKAGE.