Bitcoin-Qt pode travar ao abrir um BIP72 URI.
Esta questão é considerada Médio gravidade.
Detalhes
BIP72 estende o esquema URI BIP21 com um r
parâmetro para buscar uma solicitação de pagamento. Um invasor pode simplesmente apontar o URL contido no r
parâmetro para um arquivo muito grande, para o qual o Bitcoin-Qt tentaria alocar memória suficiente e travaria.
A vítima pode ser enganada e abrir uma solicitação de pagamento fraudulenta. O grande download aconteceria em segundo plano, com pouca ou nenhuma saída na GUI, até que o aplicativo ficasse sem memória.
Atribuição
Os créditos vão para Michael Ford (Fanquake) por divulgar o problema de forma responsável e fornecer um PoC.
Linha do tempo
- 12/08/2019 Michael Ford relata o bug para Cory Fields e Wladimir Van Der Laan
- 16/10/2019 Michael Ford abre relações públicas #17165 para se livrar totalmente do suporte BIP70
- 26/10/2019 O PR de Michael é incorporado ao Bitcoin Core
- 2020-06-03 Bitcoin Core versão 0.20.0 é lançada
- 2021-09-13 A última versão vulnerável do Bitcoin Core (0.19.x) chega ao EOL
- 2024-07-03 Divulgação pública