Ana Sayfa
AI AI
Flaş
Derinlik
Etkinlikler
BlockBeats Pro
Daha Fazla
Finans
Özel
Blok Zinciri Ekosistemi
Giriş
Podkastlar
Veri
OPRR
#
BTC
$96,000
5.73%
ETH
$3,521.91
3.97%
HTX
$0.{5}2273
5.23%
SOL
$198.17
3.05%
BNB
$710
3.05%
lang
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
Partnered With:

SlowMist: Güvenli ikilem, Muhafız Babel Kulesi sözleşmesini yeniden inşa edebilecek mi?

Bu makaleyi okumak için 26 Dakika
Bybit saldırısı, güvenlik altyapısının zamanında güncellenmesinin önemini vurgular. Güvenlik kavramlarını her bağlantıya entegre ederek, oyunda hacker'ın "mızrağı" ile koruyucunun "kalkanı" arasında gerçek bir güvenlik bariyeri inşa edebiliriz.
Orijinal başlık: "SlowMist Analizi | Güvenli İkilem, Muhafızlar Sözleşme Babel'i Yeniden Oluşturabilir mi?" 》
Orijinal yazar: flush & kong, SlowMist Technology


Arka Plan


21 Şubat 2025'te, kripto para sektörü tarihin en kötü varlık yönetimi krizini yaşadı. İşlem platformu Bybit'in zincir üstü çoklu imza cüzdanı hedef alındı ve "yasal olarak imzalanmış" bir işlemle yaklaşık 1,5 milyar ABD doları değerinde varlık sessizce kaybedildi. Daha sonra yapılan zincir üstü analiz, saldırganın karmaşık sosyal mühendislik saldırıları yoluyla çoklu imza izinleri elde ettiğini, Güvenli sözleşmesinin temsilci çağırma işlevini kullanarak kötü amaçlı mantık yerleştirdiğini ve en sonunda çoklu imza doğrulama mekanizmasını atlatarak parayı anonim bir adrese aktardığını gösterdi.



Bu olay acımasız bir gerçeği ortaya çıkardı: "çoklu imza" "mutlak güvenlik" anlamına gelmiyor. Güvenli çoklu imza cüzdanı gibi bir güvenlik mekanizması bile ek koruma önlemlerinin eksikliği durumunda hala saldırıya uğrama riskiyle karşı karşıyadır. Bu, Güvenli çoklu imza cüzdanına yapılan ilk saldırı değil. Geçtiğimiz yıl WazirX (230 milyon dolar) ve Radiant Capital (50 milyon dolar) da benzer saldırıların kurbanı olmuştu. SlowMist: Bybit'ten Yaklaşık 1,5 Milyar Dolarlık Hırsızlığın Arkasındaki Hacker Yöntemleri ve Soruları adlı makalede analiz edildiği gibi, Güvenli çoklu imzalı cüzdan saldırısı olayı aşağıdaki teknik benzerliği gösterdi:


İmza mekanizmasına aşırı güvenme: Tüm güvenlik sorumlulukları özel anahtarların muhafazasına devrediliyor.


Dinamik savunma eksikliği:İşlem yürütülmeden önce gerçek zamanlı risk taramasının eksikliği.


Kaba taneli izin denetimi: Temsilci çağırma gibi yüksek riskli işlemler için herhangi bir beyaz liste mekanizması oluşturulmamıştır.


(Bybit hırsızlık işlemi: Safe v1.1.1 kullanımı)


Bu olaylar dizisinin temel sorunu Safe sözleşmesinin kendisinde değil, özellikle ön uç doğrulama bağlantısında tüm sistemin entegrasyon sürecindeki güvenlik risklerinde yatmaktadır. Bu bizi şu düşünceye yöneltiyor: Safe'in ek güvenlik önlemleriyle çoklu imzalı cüzdanların koruma yeteneklerini nasıl güçlendirebiliriz?


Güvenli


Güvenli, öncelikli olarak yüksek değerli varlıkların ve dijital para birimlerinin güvenli bir şekilde depolanmasını ve transferini yönetmek için kullanılan çoklu imzalı bir cüzdandır. Merkezi olmayan varlık yönetimi için altyapı olarak, çok taraflı iş birliği doğrulama mekanizması aracılığıyla fon işlemlerinin güvenliğini sağlar ve tek bir yöneticinin veya bilgisayar korsanının kötü amaçlı işlemler gerçekleştirmek için tek bir hata noktasını kullanmasını önler. DAO yönetimi, kurumsal fon saklama ve merkezi olmayan fon havuzları gibi senaryolarda yaygın olarak kullanılır. Sözleşme, Safe (eski adıyla Gnosis Safe) ekibi tarafından geliştirildi ve şu anda endüstri standardı olan zincir üstü varlık yönetimi çözümüdür. Sözleşme, yapılandırılmış veri imzalarını uygulamak için EIP-712 standardını kullanıyor ve böylece işlem verilerinin güvenliğini ve doğrulanabilirliğini artırıyor.


Temel Amaç


Fon Güvenlik Yönetimi: Sözleşme, işlem yürütülmeden önce birden fazla önceden belirlenmiş malikin işlemi ortaklaşa onaylamasını gerektirir, böylece tek nokta hataları veya kötü niyetli işlemler etkili bir şekilde önlenir ve fonların güvenliği sağlanır.


İşlem yürütme ve yönetimi: Dahili çoklu imza doğrulama mekanizması sayesinde sözleşme, imza eşiği koşulları karşılandığında harici transferleri yürütebilir, diğer sözleşmeleri çağırabilir veya karmaşık iş mantığını işleyebilir ve token'ların ve yerel para birimlerinin ödeme ve ücret tazminini destekleyebilir.


Modüler genişleme: Sözleşme modüler bir tasarım benimser. Birden fazla yönetim modülünü (OwnerManager, ModuleManager, GuardManager, FallbackManager vb.) devralarak ve birleştirerek, işlevleri esnektir ve genişletilmesi kolaydır, farklı uygulama senaryoları için özelleştirilmiş destek sağlar.


Fonksiyon analizi


execTransaction fonksiyonu, birden fazla imza tarafından doğrulanan bir işlemi yürütür:


· İşlemin benzersiz karma değerini hesapla (işlem parametreleri, rastgele sayı vb. ile birlikte);


· Her imzanın meşru sahibinden veya önceden onaylanmış adresten geldiğinden emin olmak için tüm imzaların geçerliliğini doğrula;


· Hedef adresin iş mantığını çağır ve işlem yürütüldükten sonra olaylar aracılığıyla başarı veya başarısızlık durumunu kaydet;


· Tazminat öderken işlem maliyetlerinin doğru hesaplanmasını sağlamak için esnek gaz ücreti işlemeyi destekle.


checkContractSignatures ve checkNSignatures fonksiyonları bir işlem veya mesajın imza verilerini doğrular:


· EOA hesap imzalarını, sözleşme imzalarını (EIP-1271) ve önceden onaylanmış karma değerlerini ayrı ayrı işleyin;


· Tekrar saldırılarını ve imza kurcalamayı önlemek için imzaların sahiplerine göre düzenlendiğinden ve her imzanın geçerli bir adresten geldiğinden emin olun.


getTransactionHash işlevi, imza doğrulaması ve tekrar saldırılarının önlenmesi için bir işlem karması üretir:


· İşlem verilerinde yapılandırılmış karma işlemi gerçekleştirmek için EIP-712 standardını kullanın;


· Bellek işlemlerini optimize etmek ve bilgi işlem verimliliğini artırmak için satır içi derlemeyi kullanın;


· Geçerli rastgele değerle birleştirildiğinde, her işlemin benzersizliğini sağlayın.


HandlePayment fonksiyonu, işlem yürütme süreci sırasında gaz telafi ödemesini yönetir:


· Ödeme tutarını gerçek tüketilen gaz ücreti ve temel ücrete göre hesaplar;


· Doğru ücret telafisini sağlamak için ETH ve diğer token'ların ödenmesini destekler.


onBeforeExecTransaction dahili bir sanal kanca fonksiyonudur ve execTransaction fonksiyonu yürütülmeden önce çağrılır. Bu fonksiyon, Güvenli sözleşmeyi devralan alt sözleşmelerin, işlem yürütülmeden önce özel mantık işlemlerini gerçekleştirmesine olanak sağlamak için tasarlanmıştır. Alınan parametre kümesi şunları içerir:


· to:Hedef adresi - işlem tarafından çağrılacak sözleşme veya hesap adresi

· value:Ether değeri - işlemle birlikte gönderilen ether miktarı

· data:Veri yükü - işlev seçici ve parametreleri içeren çağrı verileri

· operation:İşlem türü - CALL veya DELEGATECALL olup olmadığını belirler

· safeTxGas:İşlem gazı sınırı - işlem yürütme için ayrılmış gaz miktarı

· baseGas:Temel gaz - işlem yürütmeden bağımsız gaz maliyeti

· gasPrice:Gas fiyatı - işlem ücreti telafisini hesaplamak için kullanılan gaz fiyatı

· gasToken:gas token - işlem ücretlerini ödemek için kullanılan token adresi

· refundReceiver:Refund receiver - işlem ücreti tazminatını alan adres

· signatures:İmza toplama - işlemdeki sahibinin imza verileri


Çoklu imzalı cüzdan sözleşmesi, sıkı güvenlik tasarımı ve esnek modüler yapısıyla dijital varlık yönetimi için verimli ve güvenli bir çözüm sunmasına, işlem başlatmadan son yürütmeye kadar tam süreç güvenlik kontrolü gerçekleştirmesine ve blok zinciri güvenlik yönetimi için önemli bir araç haline gelmesine rağmen, çoğu mağdurun imzalama için donanım cüzdanlarına güvendiği ve bazı donanım aygıtlarının yapılandırılmış veri imzaları üzerinde zayıf görüntüleme efektlerine sahip olduğu ve bunun kullanıcıların kısa bir süre içinde işlem verilerini doğru bir şekilde tanımlayamamasına yol açabileceği ve böylece "kör imzalama" riski oluşturabileceği unutulmamalıdır. Bu olguyu ele almak için, donanımı ve onun veri görüntüleme etkilerini optimize etmenin yanı sıra, kör imzaların neden olduğu güvenlik risklerini daha da azaltmak için birden fazla onay, akıllı istemler ve gelişmiş imza doğrulama araçları ekleme gibi önlemleri de araştırabiliriz.


Güvenlik Koruması


Güvenlik sözleşmesi 1.3.0 sürümünde önemli bir güvenlik özelliği olan Güvenli Koruma mekanizmasını tanıttı. Bu mekanizma, standart n-üzeri-m çoklu imza şemasına ek kısıtlamalar getirerek işlem güvenliğini daha da artırmak için tasarlanmıştır. Safe Guard'ın temel değeri, işlem yürütmenin farklı aşamalarında güvenlik kontrolleri gerçekleştirme yeteneğinde yatmaktadır:


· İşlem öncesi kontrol (checkTransaction):Guard mekanizması, işlemin önceden belirlenmiş güvenlik kurallarına uymasını sağlamak için işlem yürütülmeden önce tüm işlem parametrelerinde programlı bir kontrol gerçekleştirebilir.


· İşlem sonrası kontrol (checkAfterExecution):İşlem yürütüldükten sonra Guard, işlem yürütüldükten sonra Güvenli cüzdanın son durumunun beklendiği gibi olup olmadığını kontrol etmek için ek güvenlik doğrulaması gerçekleştirir.


Mimari Analizi



Güvenli'de çoklu imzalı işlemler genellikle execTransaction işlevi aracılığıyla yürütülür. Güvenli Koruma etkinleştirildiğinde, bir kullanıcı çoklu imzalı bir işlem yürüttüğünde, Güvenli sözleşme, ön işlem kontrolü gerçekleştirmek için Guard sözleşmesinin checkTransaction işlevini çağıracaktır. Çoklu imzalı işlem tamamlandıktan sonra, Güvenli sözleşme, işlemin yürütme sonucunu kontrol etmek için Guard sözleşmesinin checkAfterExecution işlevini çağıracaktır. Belirli uygulama şu şekildedir:



Güvenli sözleşme, Guard mekanizması aracılığıyla çoklu imzalı bir işlem ön kontrolü gerçekleştirdiğinde, checkTransaction işlevi, hedef sözleşme adresi, çağrı yöntemi, yürütme verileri (delegatecall gibi), sahip imza bilgileri, Gas yapılandırması ve ödeme bilgileri dahil olmak üzere tam işlem bağlamı verilerini alacaktır.


Bu mekanizma, geliştiricilerin sözleşme beyaz listesi denetimi (etkileşimli adresleri sınırlama), işlev düzeyinde izin yönetimi (yüksek riskli işlev seçicilerini devre dışı bırakma), işlem sıklığı kısıtlamaları ve sermaye akışlarına dayalı dinamik kurallar gibi çok boyutlu risk kontrol stratejilerini uygulamasına olanak tanır. Guard stratejisinin doğru şekilde yapılandırılmasıyla saldırganların sözleşme dışı katmanları kullanarak saldırı başlatmaları etkili bir şekilde engellenebilir.


Son güvenlik olaylarının arka planında, tüm taraflar çoklu imzalı cüzdan sözleşmelerinin güvenliğine giderek daha fazla dikkat ediyor. KeyStone, OneKey, RigSec vb. gibi donanım cüzdan sağlayıcıları, benzer risklerin tekrar yaşanmasını önlemek için Güvenli sözleşmelerin ayrıştırma ve koruma yeteneklerinin geliştirilmesi çağrısında bulundu. Bybit olayından sonra birçok proje tarafı Safe sözleşmesine odaklanmaya ve Guard mekanizmasına dayalı yükseltme ve genişletme çözümlerini araştırmaya başladı.


Bunların arasında, temel varlıklar ile kullanıcı varlıkları arasında ek güvenlik koruması sağlayan, Güvenli çoklu imza cüzdanına dayalı bir ara katman güvenlik çözümü oluşturan Guard mekanizmasına dayalı birçok yenilikçi uygulama bulunmaktadır. Temel işlevi, hedef sözleşmeyi, çağrı yöntemini, yürütme verilerini, sahip imza bilgilerini, ödeme bilgilerini ve Güvenli çoklu imza işleminde yer alan gaz bilgilerini checkTransaction işlevine geçirerek işlemlerin son derece ince ayrıntılı denetimini uygulamak; buna beyaz liste sözleşme çağrıları, beyaz liste işlev işlemleri, beyaz liste transfer hedefleri, işlem sıklığı ve diğer izin kontrolleri dahildir.


Safe'in kendisinin yalnızca Guard yönetimi ve geri arama işlevleri sağladığını belirtmekte fayda var. Gerçek çoklu imzalı işlem kontrol mantığı kullanıcı tarafından uygulanır ve güvenliği Guard uygulamasının kalitesine bağlıdır. Örneğin, Solv Guardian, her Kasada izin verilen hedef adresi ve işlem izinlerini belirtmek için özel bir Guardian yapılandırarak, izin verilen sözleşmeleri belirtme, izin verilen işlev işlemlerini tanımlama ve ACL doğrulama gereksinimleri gibi üç önemli izin kontrol öğesini gerçekleştirerek bu fikri genişletir.


Aynı zamanda, yürütmeden Vault Guardian'ın, yönetim yetkisini ise Governor'ın kontrol ettiği ayrı bir yönetim mekanizması benimseniyor; böylece Guardian'da bir sorun olsa bile kullanıcı varlıklarını korumak için zamanında düzeltici önlemler alınabiliyor. Benzer bir tasarım konsepti, preExecute fonksiyonu aracılığıyla önemli işlemleri kesen ve beyaz liste mekanizmasını kullanarak modül kurulumu, kanca ayarları ve doğrulayıcı yönetimi gibi yüksek riskli işlemleri ince ayar yapan Elytro'nun SecurityControlModule'ünde de uygulanıyor; böylece sisteme yalnızca güvenilir sözleşmelerin eklenebilmesi sağlanıyor ve cüzdan için uzun vadeli güvenlik koruması sağlanıyor.


Bybit olay saldırı zincirinde, Güvenli sözleşmesi düzgün yapılandırılmış bir Guard mekanizması dağıtırsa, saldırgan tarafından execTransaction aracılığıyla başlatılan kötü amaçlı delegatecall, ön kontrol aşamasında birden fazla strateji tarafından engellenecektir: Guard'ın checkTransaction işlevi, önce delegatecall işlem türünü belirler ve devre dışı bırakma kuralını tetikler (örneğin, işlemi yalnızca sıradan çağrılarla zorla sınırlamak gibi) ve ardından veri alanını ayrıştırarak alışılmadık sözleşme adreslerini (0x4622...7242) ve yüksek riskli işlev seçicilerini tespit eder ve önceden ayarlanmış sözleşme beyaz listesi ve işlev kara listesi stratejileri aracılığıyla işlemi doğrudan geri alır ve en sonunda bir "strateji engelleme → mantık engelleme" savunma sistemi oluşturarak depolama kurcalama ve fon transferi yollarını tamamen engeller.


(Safe sürümü ≥ v1.3.0 kullanıldığında  Safe Guard modülü doğrulama işlemi https://excalidraw.com/#room=fd1df67dd09b3dab6bd8,Q1jeb1MZW7vwbY4NuxaV5A)


Genel olarak, Safe yalnızca 1.3.0 sürümünden sonra Guard işlevini sağlar. Guard son derece ayrıntılı çoklu imzalı işlem kontrolleri sağlayabilmesine rağmen, kullanıcılar Guard işlevini kullanırken yüksek bir eşik değerine sahiptir. Guard kontrol mantığını kendilerinin uygulaması gerekir. Kaba veya hatalı bir Guard uygulaması, kullanıcıların Güvenli cüzdanlarının güvenliğini iyileştirmelerine yardımcı olmayabilir, bu nedenle Guard uygulamasının bir güvenlik denetimi gereklidir. Güvenli ve düzgün bir Guard uygulamasının Güvenli cüzdanın güvenliğini büyük ölçüde artırabileceğine şüphe yok.


Sonuç ve Görünüm


Bybit saldırısı, güvenlik altyapısının zamanında güncellenmesinin önemini ortaya koymaktadır. Bybit, Safe sözleşmesinin v1.1.1 (<1.3.0) sürümünü kullanmıştır; bu da önemli bir güvenlik özelliği olan Guard mekanizmasını kullanamadıkları anlamına gelmektedir. Bybit, Güvenli sözleşmesinin 1.3.0 veya daha üst bir sürümüne yükseltme yapsaydı ve fonları alan tek adresin beyaz liste adresi olarak belirlenmesi ve sıkı sözleşme işlevi ACL doğrulamasının gerçekleştirilmesi gibi uygun bir Guard mekanizması uygulasaydı, bu kayıp önlenebilirdi. Bu sadece bir hipotez olsa da gelecekteki varlık güvenliği yönetimi için önemli fikirler sunmaktadır.


Güvenli Koruma mekanizması, dijital varlık kasasına eklenen akıllı bir güvenlik sistemi gibidir. Etkinliği, kural tasarımının titizliğine ve uygulamasının kalitesine bağlıdır. Giderek daha karmaşık hale gelen saldırı yöntemleri karşısında şunlara ihtiyacımız var: · Otomatik doğrulama: Otomatik bir işlem doğrulama mekanizması kurun · Dinamik politika ayarlaması: Tehdit istihbaratına göre güvenlik politikalarını gerçek zamanlı olarak ayarlayın · Çok katmanlı savunma: Derin bir savunma sistemi oluşturmak için birden fazla güvenlik mekanizmasını birleştirin · Sürekli denetim: Guard uygulamalarında düzenli güvenlik denetimleri gerçekleştirin Dijital varlık yönetiminin geleceği, akıllı sözleşme güvenlik mekanizmalarının ve sürekli saldırı ve savunma evriminin birlikte evrimsel bir süreci olacaktır. Oyunda hacker'ın "mızrağı" ile koruyucunun "kalkanı" arasında gerçek bir güvenlik bariyeri ancak güvenlik konseptlerini her bağlantıya entegre ederek inşa edebiliriz.


Referanslar


[1] https://github.com/safe-global/safe-smart-account/blob/v1.3.0/CHANGELOG.md
[2] https://docs.safe.global/advanced/smart-account-guards
[3] https://docs.solv.finance/security/solv-guard
[4] https://github.com/safe-global/safe-smart-account/tree/main/contracts/examples/guards
[5] https://github.com/Elytro-eth/soul-wallet-contract/blob/v0.6/contracts/modules/securityControlModule/SecurityControlModule.sol


Orijinal bağlantı


BlockBeats Resmi Topluluğuna Katılın:

Telegram Abonelik Grubu: https://t.me/theblockbeats

Telegram Sohbet Grubu: https://t.me/BlockBeats_App

Twitter Resmi Hesabı: https://twitter.com/BlockBeatsAsia

Kütüphane Seç
Kütüphane Ekle
İptal
Tamamla
Kütüphane Ekle
Sadece kendime görünür
Herkese Açık
Kaydet
Düzeltme/Rapor
Gönder