İşte temel unsurların ötesine geçerek denetimlerinizi nasıl geliştirebileceğinize dair eksik olanlar:
1⃣ İş Mantığını Denetleyin, Sadece Kodu Değil
Bir borç verme protokolü matematiksel olarak doğru koda sahip olabilir ancak hatalı teşvikler içerebilir (örneğin, rezervleri boşaltmak için manipüle edilebilen borçlanma oranları).
• Token akışlarını ve oyun teorisini modelleyin (örneğin, "Kullanıcıların %80'i aynı anda çıkarsa ne olur?").
• Stres senaryolarını simüle etmek için @gauntlet_xyz gibi araçlar kullanın.
2⃣ Yükseltilebilir Sözleşmeler ve Proxy Tuzağı
Uygulama sürümleri arasında depolama çakışmaları.
• Başlatılmamış proxy'ler (örneğin, Parity Wallet hack'i).
• Yönetici anahtarı merkezileşmesi (örneğin, Compound’un GovernorBravo gecikme istismarı).
• Yükseltme yollarını test etmek için Echidna'yı kullanın.
• Başlatma fonksiyonlarının korunduğunu ve idempotent olduğunu doğrulayın.
3⃣ Zincirler Arası ve Katman 2 Kör Noktalar
Eksik Olan: Köprüler veya L2'lerle etkileşimde bulunan sözleşmeler (örneğin, Arbitrum, Optimism) benzersiz risklerle karşılaşır.
• Mesaj doğrulama boşlukları (örneğin, Wormhole’un 325 milyon dolarlık hack'i).
• Zincirler arası yeniden oynatma saldırıları.
• Yanlış ücret varsayımları (örneğin, L2 gazı ile L1 gazı karşılaştırması).
• Zincirler arası çağrı yöneticilerini denetleyin (örneğin, processMessageFromL1).
• Mesaj bütünlüğü için @hyperlane veya @LayerZero_Core gibi araçlarla test edin.
4⃣ Resmi Doğrulama ve Sembolik İcra
Eklenmesi Gereken Araçlar:
• @CertoraInc : Değişmezlikleri kanıtlayın (örneğin, "Hiçbir kullanıcı yatırdığından fazlasını çekemez").
• Halmos: Kenar durumu keşfi için sembolik icra.
Manticore: Tüm icra yollarını keşfedin (örneğin, tam sayı taşması için).
Örnek: Bir DEX’in takas fonksiyonunun rezervleri belirli bir eşikten aşağı düşürmediğini doğrulamak için Certora'yı kullanın.
5⃣ Tarihsel Bağlam ve Saldırı Katalogları
Geçmişteki istismarları denetimleri yönlendirmek için kullanmak.
• https://t.co/l3Q4YLLoZj ve @immunefi raporlarını kalıplar için inceleyin (örneğin, fiyat oracle'ı manipülasyonu).
• Tarihsel zayıflıkların bir kontrol listesini oluşturun (örneğin, Nomad Bridge’in güvenilir başlatılması).
6⃣ Gaz Optimizasyon Riskleri
Optimizasyonlar zayıflıklar getirebilir.
• Gaz tasarrufu için delegatecall kullanmak, istemeden depolamayı açığa çıkarabilir (örneğin, @SushiSwap'ın MasterContract istismarı).
• Bağlam varsayımlarını kontrol etmek için düşük seviyeli çağrıları (call, delegatecall) gözden geçirin.
• Anomalileri tespit etmek için EthGasStation ile gaz ağırlıklı fonksiyonları test edin.
7⃣ Yönetim ve Multisig Tehditleri
Yönetim mekanizmaları birincil hedeflerdir.
• Teklif spamı (örneğin, @Uniswap'ın Governor Bravo gecikmeleri).
• Multisig anahtar sızıntısı (örneğin, @harmonyprotocol'un Horizon Bridge hack'i).
• Zaman kilitlerini, çoğunluk eşiklerini ve veto mekanizmalarını denetleyin.
• Multisig imza döngüsünü ve soğuk depolama uygulamalarını doğrulayın.
8⃣ Üçüncü Taraf Entegrasyon Riskleri
Dış bağımlılıklar (örneğin, oracle'lar, kayıtlar) genellikle körü körüne güvenilir.
• @chainlink'in latestAnswer eski kontrolünü denetleyin.
• Uniswap V3 TWAP'larının zaman ağırlıklı olarak doğru ayarlandığını doğrulayın.
9⃣ Bilişsel Önyargıların Azaltılması
Denetçiler onaylama önyargısı veya sabitleme gibi önyargılara eğilimlidir.
• Kırmızı takım/mavi takım egzersizleri kullanın: Bir denetçi saldırır, diğeri savunur.
• Varsayımları sıfırlamak için denetçileri inceleme sırasında döndürün.
🔟 Uyumluluk ve Düzenleyici Tuzaklar
Kod, spesifikasyonlarla uyumlu olabilir ancak düzenlemeleri ihlal edebilir (örneğin, OFAC yaptırımları).
• Kullanıcı verilerini açığa çıkaran view fonksiyonlarını kontrol edin (gizlilik riskleri).
• Kara liste/beyaz liste mekanizmalarını doğrulayın (örneğin, @TornadoCash uyum sorunları).