Back to top
  • 공유 Paylaş
  • 인쇄 Yazdır
  • 글자크기 Yazı tipi Boyutu
URL kopyalandı.

Bitcoin uygulamasındaki 2 ücret açığı: Düzeltme 7.0.4 sürümünde

Ücretin kontrol edildiği donanım cüzdanı ve işlem ekranı / TokenPost.ai

Bitcoin(BTC) uygulamalarında, kısmen imzalanmış işlemlerin ücretini gerçekte olduğundan düşük hesaplayabilen iki güvenlik açığı ortaya çıktı. Kullanıcılar uygulamanın hesaplamasına güvenerek işlemi onaylarsa beklenenden yüksek madenci ücreti ödeyebilir.

bitcoinjs-lib yöneticileri, 26 Ekim’de yayımladıkları iki güvenlik duyurusunda açıkları ‘yüksek’ önem derecesinde sınıflandırdı. Açıklar, bu kütüphaneyle PSBT işleyen ve ücret hesaplaması ya da aşırı ücretleri engelleme özelliği için kütüphaneye güvenen uygulamaları etkiliyor.

PSBT, işlem bilgilerini ve imzaları birden fazla uygulama veya imzalama cihazı arasında aktarmak için kullanılan bir biçim. BIP 174, PSBT’nin işlem girdilerinin harcayacağı önceki çıktılara ilişkin bilgileri içermesini öngörüyor. İmzalayan taraf bu bilgilerle ücreti hesaplayıp kullanıcıya gösterebiliyor.

İlk açık, bir işlem girdisinde birbiriyle uyuşmayan iki tür önceki çıktı kaydı bulunduğunda ortaya çıkıyor. İmzalama işlemi önceki gerçek işlemin değerini kullanırken ücret hesabı diğer kayıttaki daha düşük değeri kullanabiliyor.

Yöneticilerin paylaştığı yeniden üretim örneğinde, gerçekte 900 milyon satoshi olan ücret kütüphane tarafından 200 satoshi olarak hesaplandı. İmza doğrulamasından geçti ve işlem dışa aktarılırken varsayılan ücret oranına ilişkin bir uyarı gösterilmedi. Bu değer, açığın yeniden üretildiği örneğe ait; kullanıcıların uğradığı zararı göstermiyor.

İkinci açık, imzalanmış bir işlem girdisindeki önceki çıktı değerine ilişkin tüm kayıtlar eksik olduğunda ortaya çıkıyor. Kütüphane bu girdinin değerini sıfır sayarsa ücreti gerçekte olduğundan düşük hesaplayabiliyor.

Yöneticilerin örneğinde, gerçekte 91.000 satoshi olan ücret 1.000 satoshi olarak gösterildi. Her iki örnek de ücret gösteriminin ve engelleme işlevinin gerçek işlem değerlerini yansıtmayabileceğini ortaya koyuyor.

Açıklar kendi başlarına imza oluşturamıyor veya onay alınmadan Bitcoin transfer edemiyor. Gerçek bir kayıp yaşanması için geçerli bir işlemin onaylanması, ardından ağa yayılarak kabul edilmesi gerekiyor. Ücret olarak alınan fazla tutar, PSBT’yi gönderen kişiye otomatik olarak aktarılmıyor; madencilere ödeniyor.

v5 serisinde etkilenen sürümler açığa göre değişiyor: Çakışan kayıt sorunu 5.2.0–5.2.1 sürümlerini, girdi değerine ilişkin kayıtların eksik olması sorunu ise 5.1.0–5.2.1 sürümlerini etkiliyor. Her iki açık da v6 serisindeki 6.0.0–6.1.8 ile v7 serisindeki 7.0.0-rc.0–7.0.3 sürümlerinde bulunuyor.

Açıklar sırasıyla 5.2.2, 6.1.9 ve 7.0.4 sürümlerinde giderildi. bitcoinjs-lib yöneticileri aynı gün başka güvenlik sorunlarını da içeren 15 duyuru yayımladı ve her sürüm serisi için en güncel düzeltme sürümleri olan 5.2.3, 6.1.10 ve 7.0.5’i önerdi.

Yöneticiler, geliştiricilerden doğrudan ve dolaylı bağımlılıklarındaki sürümleri kontrol etmelerini istedi. Yükseltmenin mümkün olmadığı uygulamalarda her işlem girdisinin önceki gerçek çıktı değeri bağımsız olarak doğrulanmalı; değeri çakışan veya eksik olan girdiler reddedilmeli. Hangi cüzdanların etkilendiği ve gerçek bir zararın oluşup oluşmadığı henüz doğrulanmadı.

<Telif hakkı ⓒ TokenPost, yetkisiz çoğaltma ve yeniden dağıtım yasaktır >

Popüler

Diğer ilgili makaleler

Yorum 0

Yorum ipuçları

Harika bir makale. Takip talep etme. Mükemmel bir analiz.

0/1000

Yorum ipuçları

Harika bir makale. Takip talep etme. Mükemmel bir analiz.
1