Bitcoin Core ay inilahad ang tatlong mga vulnerability noong Oct. 28 at ipinakalabas ang mga pagpapabuti sa mga bersyon 29.5, 30.4, 31.2 at 32.1, kabilang ang isang kahinaan na nagpapahintulot sa isang masamang peer na i-crash ang mga node ng Windows, macOS, at BSD.
Ang Bitcoin Core software ay nagpapahintulot sa mga operator na mag-validate nang independiyente sa Bitcoin blockchain at kasama ang isang wallet. Ang proyekto ay nagrerekomenda na ang dalawang vulnerabilities sa pagdami ng memorya ay may katamtamang kalubosan, at ang isang ikatlo, na may kinalaman sa naka-store na blockchain data, ay may mababang kalubosan. Ang tatlong mga abiso ay hindi nagpapahayag kung ang pagpapakita ng pagpapakasal ay nakikita na.
Para sa mga operator sa mga branch na 29.x, 30.x at 31.x, ang mga patched point releases ay 29.5, 30.4 at 31.2, ayon sa pagkakasunod-sunod. Version 32.1 ang pinakabagong release. Dapat i-upgrade ang mga operator na gumagamit ng mas maagang point releases sa mga branch na ito.
Ang non-Linux crash vulnerability ay nagpapahintulot sa isang kumakonekta at maliit na attacker na magpadala ng espesyal na markadong network traffic, kilala bilang TCP urgent data, upang i-bypass ang mga limitasyon kung gaano karaming pumapasok na data ang maaaring i-queue ng isang node para sa pagproseso. Ang queue ay maaaring lumaki nang walang hanggan hanggang sa mawalan ng memorya ang node. Ang Linux ay hindi naapektuhan ng partikular na kahinaan na ito dahil gumagamit ito ng iba’t ibang mekanismo para suriin ang mga network connection.
Ang second memory-growth bug ay nagpapahintulot sa isang mapanlilinlang na peer na magmukhang gumagamit ng isang lumang protokolo na walang modernong ping messages, na nag-iwas sa isang timeout na karaniwang magdidisconnect sa iyo. Sa pamamagitan ng pagpapahintulot sa pagkakaroon ng paghihintay sa pagbasa, ang peer ay makakagawa ng node na patuloy na mag-queue ng mga pagpapahayag. Ang paggamit ng memorya ay maaaring tumataas hanggang 2 MB bawat oras bawat inbound peer o 5 MB bawat oras bawat outbound peer. Ang mga node na nakakonfigura upang i-relay lamang ang mga block ay mas kaunti ang epekto.
Nananatili ang panganib ng hiwalay na pag-iingat
Ang ikatlong vulnerability ay tumutukoy sa mga “undo” file, na nag-iimbak ng impormasyon na kailangan upang baliktarin ang mga block habang nagrererorganisa ang blockchain. Maaaring pilitin ng isang miner ang mga file na ito na lumampas sa mga limitasyon ng laki, na nagdudulot ng pagkakasira ng data o pag-antala sa mga apektadong node. Tawag ng Bitcoin Core ang pagpapalabas bilang hindi praktikal: sa mga 64-bit na sistema, ang paghahanda ay nangangailangan ng pag-mining ng ilang libo ng espesyal na gawaing block, kasama ang karagdagang mga tumpak na kondisyon para sa isang reorganization-based na pag-atake.
Ang mga pag-aayos ay tumutugon sa kamalian iyon sa 64-bit systems, kabilang ang Windows, ngunit ang 32-bit systems at mga node na nag-iimbak ng mga block sa isang FAT32 filesystem ay patuloy na nakaaapekto. Kung ang undo data ay nagsimula nang masira, ang pag-restart ay hindi sapat; ang pagbabalik ay nangangailangan ng pagbuo muli ng blockchain index gamit ang fixed version.
Ang mga abiso ay nagbibigay-karapatan sa isang automated na AI scan ni Spiral’s Project Loupe para sa pagkakatuklas ng lahat ng tatlong isyu, kasama ang pagpapatotoo ni Gregory Sanders sa mga natuklasan at ang pagrereport nito sa Bitcoin Core. Ipinaklasiyik ng proyekto ang lahat ng tatlo bilang “madaling matuklasan.” Ang kanilang disclosure policy ay nagsasagawa ng pagpapalabas ng mga solusyon sa lahat ng pinapanatiling sangay at isang abiso nang walang karaniwang embargo para sa kategoryang iyon.
Upang i-upgrade, dapat i-shutdown nang buo ang Bitcoin Core bago i-install o palitan ang software, ayon sa release instructions. Ang mga tala na ito ay nagpapahiwatig na ang mga bersyon 29.x at mas lumang bersyon ay naging end of life at hindi na makakatanggap ng mga update.


