Bitcoin'deki Güvenlik Açığı: CVE-2024-38365
CVE-2024-38365, Go'da (Golang) yazılmış Bitcoin'in alternatif tam düğüm uygulaması olan btcd Bitcoin istemcisindeki kritik bir güvenlik açığını vurgular. Bu güvenlik açığı btcd 0.10 ila 0.24 sürümlerini etkiler ve Bitcoin Core'un "FindAndDelete()" işlevselliğinin yanlış bir şekilde yeniden uygulanması etrafında döner. Bu kusurun etkileri önemlidir, çünkü Bitcoin ağı içinde fikir birliği başarısızlıklarına yol açabilir ve saldırganların bunu zincir bölmeleri veya btcd düğümlerine karşı hizmet reddi (DoS) saldırıları için kullanmasına olanak tanıyabilir.
Teknik Detaylar
Konsensüs-Eleştirel Mantık
"FindAndDelete()" işlevi, Bitcoin istemcileri arasında fikir birliğini sürdürmek için çok önemlidir. İşlemlerdeki betiklerden belirli verileri kaldırmak için tasarlanmıştır. Ancak, btcd'de uygulanan mantık, Bitcoin Core'dakinden farklıdır ve tutarsız davranışa yol açar:- FindAndDelete() : Bu fonksiyonun bir betikten tam eşleşmeleri kaldırması gerekiyor.
- removeOpCodeByData() : Bu fonksiyon ise belirtilen bir desene uyan veri gönderimlerini kaldırır.
Bu durumda:
- btcd her iki örneği de kaldıracaktır .
<data>
- Bitcoin Core yalnızca ilk örneği kaldıracaktır.
Kullanım Potansiyeli
Bir saldırgan, bir eşleşme döndürmeyen standart bir işlem oluşturarak bu güvenlik açığından yararlanabilir . Bu manipülasyon, btcd tarafından diğer istemcilere kıyasla farklı imza karmalarının (sighashes) oluşturulmasına yol açar. Sonuç olarak, bu bir saldırganın şunları yapmasına olanak tanıyabilir:FindAndDelete()
removeOpCodeByData()
- Zincir Bölmesi Oluşturun : btcd'nin geçersiz bir bloğu kabul etmesini sağlayarak.
- DoS Saldırıları Gerçekleştirin : btcd düğümlerinin geçerli blokları reddetmesine neden olarak, bunların ağın geri kalanıyla senkronizasyonunun bozulmasına yol açar.
Azaltma ve Çözüm
Güvenlik açığı, 11 Ekim 2024'te keşfedilmesinden kısa bir süre sonra yayınlanan btcd v0.24.2 sürümünde resmi olarak düzeltildi. Etkilenen sürümleri çalıştıran kullanıcıların, bu güvenlik açığıyla ilişkili riskleri azaltmak için istemcilerini derhal yükseltmeleri önemle tavsiye edilir.Bilinen Çözüm Yolu Yok
Şu anda bu sorun için bilinen bir geçici çözüm bulunmamaktadır. Tek etkili çözüm btcd'nin yamalı sürümüne yükseltme yapmaktır.Çözüm
CVE-2024-38365, blok zinciri teknolojisinde fikir birliği mekanizmalarının önemi ve istemci uygulamalarındaki tutarsızlıklarla ilişkili potansiyel riskler konusunda kritik bir hatırlatma görevi görmektedir. Olay, kripto para birimi yazılım geliştirmede titiz testler ve yerleşik protokollere uyum ihtiyacının altını çizmektedir. Kullanıcılar ve geliştiriciler, blok zinciri ağlarının bütünlüğünü ve güvenliğini sağlamak için bu tür güvenlik açıklarına karşı dikkatli olmalıdır.- https://nvd.nist.gov/vuln/detail/CVE-2024-38365