Um buffer overflow permitindo um vazamento significativo de dados foi descoberto em miniupnpc
. Combinado com o então recentemente divulgado CVE-2015-6031, permitiu um RCE em miniupnpc
o que poderia ter levado a um RCE no Bitcoin Core. Isso foi corrigido no Bitcoin Core 0.12, lançado em fevereiro de 2016.
Esta questão é considerada Médio gravidade.
Detalhes
CVE-2015-6031divulgado em setembro de 2015, tornou possível que um servidor UPnP malicioso travasse remotamente um processo Bitcoin Core na rede local na inicialização. Ver aqui para obter detalhes. A correção foi puxou Bitcoin Core e lançado na versão 0.11.1, lançada em outubro de 2015. UPnP era então
desativado por padrão.
CVE-2015-6031 divulgou um buffer overflow, que além de permitir uma falha remota, poderia ter possibilitado a execução remota de código na máquina da vítima. Ao investigar esta possibilidade, Wladimir J. Van Der Laan encontrou outro buffer overflow em miniupnpc
o que permitiu um vazamento significativo de dados. Isso foi corrigido por Wladimir em
miniupnpc
em commit
4c90b87ce3d2517097880279e8c3daa7731100e6
. A correção foi então puxado para Bitcoin Core e lançado como parte da versão 0.12.
Este vazamento de dados não revelou informações secretas (como as chaves privadas da carteira) diretamente. Mas combinado com outro estouro de pilha (como o divulgado no CVE-2015-6031), isso tornou possível acionar uma execução remota de código. Wladimir demonstrou isso contra o Ubuntu miniupnpc
versão 1.6-precise
. A abordagem específica usada nesta exploração, entretanto, não foi diretamente portável para o Bitcoin Core.
Atribuição
Os créditos vão para Aleksandar Nikolic por identificar CVE-2015-0035 e para Wladimir J. Van Der Laan por investigar seu impacto e descobrir o segundo buffer overflow.
Linha do tempo
- 15/09/2015 CVE-2015-0035 é
fixo e
divulgado. - 09/10/2015 RP #6789 é fundido no Bitcoin Core
- 14/10/2015 A execução remota de código de Wladimir, aproveitando o segundo buffer overflow, é divulgada aos desenvolvedores de segurança e Bitcoin do Ubuntu.
- 15/10/2015 Bitcoin Núcleo 0.11.1 é lançado
- 26/10/2015 A correção para o segundo buffer overflow é mesclado em
miniupnpc
. - 18/12/2015 A correção é puxado para Bitcoin Core.
- 23/02/2016 Bitcoin Core versão 0.12 é lançado.
- 08/03/2017 A última versão vulnerável do Bitcoin Core (0.11.x) chega ao EOL
- 2024-07-03 Divulgação pública