Auth.js armazena as verificações OAuth/ OIDC anti- CSRF (`estado`, `nonce` e o verificador PKCE') em cookies globais que não estão vinculados ao provedor que os criou. No callback, um valor de check cunhado durante um login iniciado com um provedor pode satisfazer o callback para um provedor diferente, porque o cookie armazenado não é verificado com a identidade do provedor de callback (identidade do fornecedor, emitente, id do cliente ou redirecionamento URI). Em um aplicativo multi- fornecedor que permite a ligação de contas ao iniciar sessão, esta condição de confusão / confusão de provedor pode permitir que um atacante ligue sua conta em um segundo provedor ao usuário de uma vítima. Você pode ser afetado se **todos** do seguinte detenção. - Você usa `next-auth` ` = 5.0.0 -Beta. 1, <= 5.0.0 -Beta. 31 `, ou `@ auth/core` `<= 0.41.2 `. - Você configura vários provedores OAuth/ OIDC. - Você permite que os usuários liguem provedores adicionais enquanto estiverem conectados. - Pelo menos um pedido de autorização do provedor configurado é observável por um atacante, e pelo menos um provedor alvo pode ser satisfeito sem um verificador PKCE (isto é, ele depende apenas de `estado` ou somente de `nonce`).

Você está **não** afetado se você usar um único provedor de OAuth, não permitir a ligação de contas iniciadas, ou todos os provedores executarem o PKCE. - Confusão de ligação de conta: um atacante pode obter sua conta em um provedor alvo ligado ao usuário Auth. js da vítima, dando ao atacante o acesso persistente à conta da vítima através desse provedor vinculado. - A exploração requer atrair a vítima para iniciar um fluxo legítimo da mesma origem; não pode ser realizada por meio de falsas solicitações de sites cruzados, o que reduz a probabilidade prática.

A correção liga os cookies de verificação do OAuth ao fluxo de autorização/fornecedor que os criou, para que um callback não possa consumir um valor de verificação cunhado para um provedor diferente. Atualize para as primeiras versões que contêm esta correção (penda; esta aconselhação será atualizada com versões correcionadas exatas antes da publicação). Se você não puder atualizar imediatamente. - Habilite o PKCE (`checks: ["pkce"]`, além de `estate`/`nonce`) em cada provedor que o suporta; o PKCE bloqueia a variante prática de troca de códigos, porque o atacante não pode observar o verificador da parte que confia. - Evite oferecer uma ligação de conta log- in entre vários provedores onde um fornecedor é de confiança inferior ou observable pelo atacante. - Tratar o `events.linkAccount` como sensível: adicione registro de auditoria, notificação do usuário ou confirmação fora de banda para que qualquer link inesperado seja visível (defesa em profundidade, não uma correção de causa- raiz).

Relatório do @Nadav 0077. Obrigado pela divulgação responsável. Registro de aconselhamento: GHSA-x 445 - f 3 h 2 - j 279. Identificadores relacionados: CVE- 2026 - 73419.

Tempo: GitHub Advisory Database publicou este registro em 2026 - 07 - 23 T 14: 31: 51.000 Z e lista a sua última modificação como 2026 - 08 - 13 T 19: 05: 32.000 Z. Gravidade: MODERAR. Dados de pontuação publicados: CVSS_V 3: CVSS: 3.1 /AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N.

Informações sobre software e versão afetadas: pacote npm @ auth/core — ECOSISTEM: introduzido 0, corrigido 0.41.3 Pacote npm next- auth — ECOSISTEM: introduzido 5.0.0 -Beta. 1, corrigido 5.0.0 -Beta. 32 Pacote npm next- auth — ECOSISTEM: introduzido 0, corrigido 4.24.15.

Classificação e evidência: identificadores de fraqueza CWE- 345, CWE- 346, CWE- 940. O registro contém 9 suporte de referências nestes tipos: WEB, AVISO, EMBALAGAMENTO.