Bitcoin Forum

Local => Desenvolvimento & Discussões Técnicas => Topic started by: sabotag3x on August 10, 2023, 01:11:48 AM



Title: Milk Sad, vulnerabilidade antiga em carteiras de Bitcoin
Post by: sabotag3x on August 10, 2023, 01:11:48 AM
Seguido das vulnerabilidades na TrustWallet, a galera encontrou a origem: um PRNG (pseudo-random number generator) da libbitcoin..

A falha existia desde 2017, mas carteiras de 2014 também podem estar expostas.

Quem quiser ler sobre a descoberta, há um resumo (https://milksad.info/index.html), um relatório completo (https://milksad.info/disclosure.html) e uma matéria em português (https://livecoins.com.br/milk-sad-falha-em-carteiras-de-bitcoin/).. no mês passado os caras esvaziaram 1.200 carteiras em uma única transação, segundo relato no Reddit (https://www.reddit.com/r/Bitcoin/comments/158nyuo/mass_hacking_of_over_1000_bitcoin_accounts/), confirmado pelos caras que divulgaram a nota.

Postei nessa aba porque poucos devem ter sido afetados (basicamente quem leu o Mastering Bitcoin e seguiu um tutorial ali para criar uma carteira), então o assunto é mais técnico:

Quote from: Carteiras afetadas
If you know you generated your wallet with bx 3.0.0 or higher (after ca. March 2017)
If you know you generated your wallet with a CLI tool and don’t remember which tool

O nome da vulnerabilidade é Milk Sad porque eram as 2 primeiras palavras das seeds de 24 palavras idênticas que eles geraram nos testes.


Title: Re: Milk Sad, vulnerabilidade antiga em carteiras de Bitcoin
Post by: bitmover on August 11, 2023, 11:38:32 PM
Seguido das vulnerabilidades na TrustWallet, a galera encontrou a origem: um PRNG (pseudo-random number generator) da libbitcoin..


Aí vemos a importância de usar uma boa carteira, uma hardware wallet e / ou electrum.

As vezes o cara que sabe pouco tá mais seguro do que o cada que sabe "medio" e acha que sabe muito..


Title: Re: Milk Sad, vulnerabilidade antiga em carteiras de Bitcoin
Post by: TryNinja on August 14, 2023, 11:56:58 AM
Esse tipo de falha em que se utiliza uma baixa entropia para gerar números randômicos não é nova. Li o relatório e é uma sacanagem o que a lib estava fazendo:

Quote
To put this in different words: when running bx seed -b 256 to request 256 bits of non-guessable entropy, the result is 32 bits of high-precision clock time that was put through a blender (or rather: twister 🌪️) and expanded to 256 bit without adding new information. The number of possible key variations would grow exponentially with the size if this were real entropy data, so the difference from the safe expected result (256 bits) and the actual result (32 bits) is of astronomical proportions.

Uma certa visualização do quão “engraçado” era esse processo é pedir para alguém criar uma senha super segura de 100000 carácteres aleatórios, e essa pessoa escolher a senha 123 e depois colocar 99999 zeros no final (12300000…). Quer mais uma? 54300000….. zeros infinitos. Se torna extremamente trivial o brute force.


Title: Re: Milk Sad, vulnerabilidade antiga em carteiras de Bitcoin
Post by: joker_josue on August 14, 2023, 11:18:36 PM
As vezes o cara que sabe pouco tá mais seguro do que o cada que sabe "medio" e acha que sabe muito..

Totalmente de acordo. Quem mais inventa é quem mais sai prejudicado, na maioria das vezes.

A pessoa deve crescer a nível de conhecimento, sempre tendo em mente que nunca sabe tudo.
Mas, muita malta ligada ao IT, tem a mania que sabe mais que os outros.


Title: Re: Milk Sad, vulnerabilidade antiga em carteiras de Bitcoin
Post by: rdluffy on August 15, 2023, 09:00:29 PM
Eu sempre criei minhas carteiras pela Electrum antes de ter minha Ledger, e ainda assim dá um gelo na barriga de ver uma simples notícia de alguma vulnerabilidade, mesmo que não seja da sua carteira

...Se torna extremamente trivial o brute force.

Apesar de eu não ter tanto conhecimento técnico, me chamou a atenção essa frase que li no resumo, reafirmando seu comentário:
Quote
With enough optimizations, a decent gaming PC can do a brute-force search through 2^32 wallet combinations in less than a day.
Fonte (https://milksad.info/index.html)

Bem assustador você pensar que está seguro com as teóricas 2^256 chaves privadas que existem mas cair pra um nível onde pode tomar um brute force assim


Title: Re: Milk Sad, vulnerabilidade antiga em carteiras de Bitcoin
Post by: alexrossi on September 09, 2023, 01:14:29 PM
Obrigado para compartilhar, vi que una fundamental medida de seguranca recomendada è utilizar uma passphrase BIP39, isso ia ter ajudado mesmo com uma seed gerada de forma errada.


Title: Re: Milk Sad, vulnerabilidade antiga em carteiras de Bitcoin
Post by: TryNinja on September 09, 2023, 01:17:52 PM
Obrigado para compartilhar, vi que una fundamental medida de seguranca recomendada è utilizar uma passphrase BIP39, isso ia ter ajudado mesmo com uma seed gerada de forma errada.
Detalhe que nesse caso especifico você não teria caido na vulnerabilidade, porem o problem de baixa entropia não se limita às private keys… o seu gerador de seed pode muito bem estar gerando as 12 palavras com uma entropia tão baixa que é praticamente nula, permitindo que seja trivial um atacante realizar o brute force até dar de cara com a sua wallet.