PT-2026-98158 · Npm · @Bsv/Wallet-Toolbox-Mobile+2
CVE-2026-56744
·
Publicado
2026-09-24
·
Atualizado
2026-09-28
CVSS v4.0
8.7
Alta
| Vetor | AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N |
Nome do Software Vulnerável e Versões Afetadas
@bsv/wallet-toolbox versões 1.1.47 a 2.3.3
@bsv/wallet-toolbox-client versões 1.1.47 a 2.3.3
@bsv/wallet-toolbox-mobile versões 1.3.21 a 2.3.3
Description
Existe um problema onde transações criadas via um
StorageClient remoto confiam em scripts de bloqueio de saída retornados pelo provedor de armazenamento sem verificar se eles correspondem às saídas solicitadas pelo chamador. Um provedor de armazenamento malicioso ou comprometido pode substituir um script de destinatário ou injetar uma saída adicional. Isso permite que o provedor redirecione fundos, fazendo com que a carteira assine e transmita uma transação diferente daquela exibida na interface do usuário do aplicativo. A falha ocorre porque a função buildSignableTransaction() utiliza o lockingScript da resposta de armazenamento sem consultar args.outputs, e a função WalletPermissionsManager.createAction() não inspeciona as saídas da transação antes da assinatura.Recommendations
Atualize o @bsv/wallet-toolbox para a versão 2.4.0.
Atualize o @bsv/wallet-toolbox-client para a versão 2.4.0.
Atualize o @bsv/wallet-toolbox-mobile para a versão 2.4.0.
Como medida paliativa temporária, evite usar provedores
StorageClient remotos e utilize armazenamento local.
Como medida paliativa temporária, verifique independentemente cada script de bloqueio de saída da transação e seu valor em relação à solicitação original antes de assinar.Exploit
Correção
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
@Bsv/Wallet-Toolbox
@Bsv/Wallet-Toolbox-Client
@Bsv/Wallet-Toolbox-Mobile