Outro bug derrubou brevemente parte da Lightning Network PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.

Outro bug derrubou brevemente parte da Lightning Network

O abaixo é um trecho direto de Marty's Bent Problema nº 1278: “Outro bug LND/btcd emerge.” Assine a newsletter aqui.

via GitHub

Pela segunda vez em menos de um mês, o btcd (uma implementação alternativa do Bitcoin) e, por extensão, o LND (uma das implementações do Lightning) tornaram-se incompatíveis com o resto da rede Bitcoin devido a alguma intromissão de um desenvolvedor chamado Burak.

Em outubro 9, Burak concluiu uma transação multisig tapscript 998-0f-999 que o btcd reconheceu como inválida, enquanto o Bitcoin Core e outras implementações (corretamente) a reconheceram como válida. Como a implementação da Lightning Network pelo LND depende do btcd, ela se tornou incompatível com o resto da Lightning Network, interrompendo assim a capacidade de todos os seus usuários de realizar transações com segurança. Não é ideal.

Avançando para ontem, Burak voltou para interromper o BTCD e o LND com o tipo de transação que você vê acima: um gasto P2TR (pay-to-taroot) contendo N OP_SUCCESSx com 500,001 pushes, que excede o limite codificado no BTCD. Embora a transação multisig tapscript 998 de 999 parecesse um erro honesto, a transação de ontem foi uma exploração aberta de Burak.

A natureza dos sistemas distribuídos de código aberto deixa algumas vulnerabilidades abertas à exploração, mas os bugs deveriam ser explorados publicamente ou divulgados em privado?

Prova que Burak sabia que isso quebraria o LND

Algo a ser observado sobre esta transação OP_SUCCESSx é que ela normalmente não seria incluída em um bloco. No entanto, parece que Burak subornou os mineiros ao atribuir uma taxa particularmente elevada a esta transação à qual a F2Pool não conseguiu resistir.

Esta situação gerou muitos debates nos últimos dois dias. Burak estava errado ao explorar esse bug na rede principal? Ele deveria ter divulgado adequadamente a vulnerabilidade ao btcd e ao LND em particular, permitindo-lhes corrigir o código antes que o bug fosse explorado em liberdade? O LND deveria depender do btcd, que é uma implementação alternativa do Bitcoin que não chega nem perto da quantidade de atenção e revisão que o Bitcoin Core recebe?

Seu tio Marty certamente não tem as respostas certas para todas essas perguntas, mas é importante que vocês, malucos, estejam cientes dessas coisas, então pensei em chamar sua atenção para elas.

Esta é a natureza dos sistemas distribuídos de código aberto. Pode haver muitas vulnerabilidades à espreita e não há uma maneira clara de lidar com os problemas. Muitos defenderão divulgações responsáveis ​​em privado, enquanto outros defenderão ações contraditórias abertas que forcem a questão. Esta é uma das compensações que você escolhe quando decide optar por uma rede monetária de mercado livre.

Carimbo de hora:

Mais de Bitcoin Magazine