Sui tabanlı getiri ticaret protokolü Nemo, projeye göre denetlenmemiş kodun devreye alınmasıyla ortaya çıkan bilinen bir güvenlik açığı nedeniyle yaklaşık 2,59 milyon dolar kaybetti.
Nemo’nun 7 Eylül saldırısına ilişkin analizine göre, slippage (kayma) oranını azaltmak için tasarlanmış bir fonksiyondaki hata, saldırganın protokolün durumunu değiştirmesine olanak sağladı. “get_sy_amount_in_for_exact_py_out” adlı bu fonksiyon, denetlenmeden zincire yüklendi.
Ayrıca, Asymptotic ekibi ön raporda bu sorunu tespit etti. Ancak Nemo ekibi, “ekibimizin bu güvenlik endişesini zamanında yeterince ele almadığını” kabul etti.
Yeni kodun devreye alınması sadece tek bir adresin imzasını gerektiriyordu; bu da geliştiricinin değişiklikleri açıklamadan denetlenmemiş kodu zincire yüklemesine izin verdi. Üstelik, denetimde sağlanan onay hash’ini kullanmadı ve prosedürü ihlal etti.
Bu, benzer bir güvenlik açığının kolayca önlenebileceğinin ortaya çıktığı ilk vaka değil. Rapor, uzmanların standart test uygulamalarıyla kolayca önlenebileceğini belirttiği temel bir akıllı sözleşme hatası nedeniyle NFT ticaret platformu nın yaşadığı sorunları takip ediyor.
İlgili:
Güvenlik prosedürleri çok geç değiştirildi
Zayıf kod, Ocak ayı başlarında zincire yüklendi. Denetlenmemiş kodun zincire alınmasını muhtemelen engelleyecek yükseltme prosedürü ise Nisan ayında uygulandı.
Yükseltmeye rağmen, güvenlik açığı zaten üretim ortamına girmişti. Asymptotic, 11 Ağustos’ta Nemo’yu uyardı ancak proje, diğer sorunlara odaklandığını ve saldırıdan önce bu açığı gidermediğini belirtti.
İlgili:
Nemo protokolü durdurdu, yama hazırlıyor
Analize göre, Nemo’nun protokolün temel fonksiyonları daha fazla kaybı önlemek için durduruldu. Ekip, merkezi borsalarda varlıkların dondurulmasına yardımcı olmak için birden fazla güvenlik ekibiyle iş birliği yapıyor ve ilgili tüm adresleri sağlıyor.
Bir yama geliştirildi ve Asymptotic yeni kodu denetliyor. Proje, flash loan (anlık kredi) fonksiyonunu kaldırdığını, zayıf kodu düzelttiğini ve etkilenen değerleri geri yüklemek için manuel sıfırlama özelliği eklediğini açıkladı. Nemo ayrıca kullanıcılar için tokenomik seviyesinde borç yapılandırmasını içeren bir tazminat planı tasarlıyor.
“Çekirdek ekip, tokenomik seviyesinde borç yapılandırma tasarımını da içeren ayrıntılı bir kullanıcı tazminat planı hazırlıyor.”
Nemo, kullanıcılarından özür diledi ve “güvenlik ve risk yönetiminin sürekli dikkat gerektirdiğini” öğrendiğini belirtti. Ekip, savunmalarını güçlendirmeyi ve protokol kontrolünü sıkılaştırmayı taahhüt etti.
Dergi: