· 10 dk
Akıllı Sözleşme Denetimi mi, Web3 Penetrasyon Testi mi?
Akıllı sözleşme denetimi ile Web3 penetrasyon testinin kapsam, çıktı ve zamanlama farklarını karşılaştırarak ürününüz için doğru güvenlik planını oluşturun.
İki çalışma farklı güvenlik sınırlarını inceler
Akıllı sözleşme denetimi ve Web3 penetrasyon testi birbirinin yerine geçen hizmetler değildir. Denetim zincir üzerindeki kodun güvenlik özelliklerine ve iş mantığına odaklanırken penetrasyon testi çalışan ürünün saldırıya açık yüzeylerini sınar. Doğru seçim, ürünün Web3 olarak adlandırılmasından çok değer, yetki ve güvenin hangi bileşenlerde toplandığına bağlıdır.
Yalnızca zincir üzerinde çalışan ve özel iş mantığı içeren bir protokol için bağımsız sözleşme denetimi ilk öncelik olabilir. Web arayüzü, API, yönetim paneli, relayer, oracle, cüzdan entegrasyonu veya özel imzalama sistemi bulunan ürünlerde ise sözleşme dışındaki katmanlar da güvenlik kapsamına alınmalıdır.
Akıllı sözleşme denetimi kodu ve kuralları değerlendirir
Bir akıllı sözleşme denetimi kaynak kodu, beklenen davranış ve kritik güven varsayımlarını birlikte inceler. Yetkilendirme, durum geçişleri, bakiye hesaplamaları, dış çağrılar, yeniden giriş riski, oracle kullanımı, imza doğrulama, proxy yapıları, yükseltme yetkileri ve ekonomik varsayımlar bu kapsamın parçası olabilir.
İyi bir denetim yalnızca otomatik araç çıktısından oluşmaz. Manuel kod ve iş mantığı incelemesini testler, statik analiz, fuzzing veya invariant kontrolleri destekleyebilir. Rapor; incelenen repository ve commit'i, kapsamdaki sözleşmeleri, hariç tutulan bileşenleri, bulguları ve düzeltme sonrası yeniden test durumunu açıkça belirtmelidir.
Web3 penetrasyon testi çalışan ürünü saldırgan gibi sınar
Web3 penetrasyon testi ürünü yalnızca bir kod deposu olarak değil, kullanıcıların ve operatörlerin eriştiği çalışan bir sistem olarak ele alır. Web ve mobil arayüzler, API'ler, oturumlar, rol kontrolleri, cüzdan bağlantıları, işlem oluşturma ve imzalama akışları, yönetim panelleri, RPC erişimi ve dağıtım yapılandırmaları kapsamda olabilir.
OWASP Smart Contract Security Verification Standard, EVM tabanlı sözleşme kontrollerinin web arayüzü, veritabanı ve diğer genel uygulama kontrollerini kapsamadığını özellikle ayırır. Penetrasyon testi bu alanlarda istismar edilebilir yolları arar; ancak o da derin sözleşme mantığı incelemesinin veya kaynak kod denetiminin yerine geçmez.
Mimari, hangi değerlendirmeye ihtiyaç olduğunu gösterir
Özel ve yüksek değerli zincir üstü mantık fonları, yönetişimi veya kritik durum geçişlerini yönetiyorsa bağımsız sözleşme denetimi gereklidir. Ürün ağırlıklı olarak standart sözleşmeler kullanıyor fakat saklama, kullanıcı hesabı, yönetim paneli ve karmaşık operasyon servislerine dayanıyorsa çalışan sisteme yönelik penetrasyon testi daha geniş bir acil risk alanını ortaya çıkarabilir.
Backend tarafından hazırlanan işlemler, relayer ve meta-transaction altyapısı, özel oracle hizmetleri, cross-chain mesajlaşma, yönetici anahtarları veya otomatik yürütme botları bulunan ürünlerde iki çalışma birlikte planlanmalıdır. Güvenli bir sözleşme, ele geçirilmiş bir yönetim panelinin ya da hatalı imzalama servisinin oluşturduğu riski tek başına gideremez.
Denetim ve penetrasyon testini doğru sıraya yerleştirin
Önce mimariyi, kritik varlıkları, roller ile güven sınırlarını ve beklenen iş kurallarını belgeleyin. Birim, entegrasyon, invariant ve fuzz testlerini çalıştırdıktan sonra sözleşme kapsamını ve incelenecek commit'i dondurun. Bağımsız denetimi tamamlayın, bulguları düzeltin ve yeniden test sonucunu alın.
Ardından üretimi temsil eden kararlı bir staging ortamında Web3 penetrasyon testi gerçekleştirin. Sözleşme, arayüz, API ve altyapı bulgularını aynı risk görünümünde kapatın. Dağıtım sonrasında izleme, yetki değişikliği kontrolü ve olay müdahale süreci kurun; önemli kod veya mimari değişikliklerinde mevcut raporların kapsamını yeniden değerlendirin.
Tekliften önce kapsam ve teslimatları netleştirin
Sözleşme denetimi satın alırken incelenecek repository, commit, sözleşmeler, bağımlılıklar, ağlar ve kapsam dışı bileşenler yazılı olmalıdır. İş mantığı ve ekonomik varsayımların incelenip incelenmeyeceğini, manuel analizin kapsamını, proxy ve yönetici kontrollerini, rapor biçimini ve düzeltmeler için yeniden test koşullarını sorun.
Penetrasyon testinde ise ortamlar, domainler, API'ler, kullanıcı rolleri, yönetim yüzeyleri, cüzdan ve imzalama akışları, relayer, RPC, oracle, bulut ve CI/CD sınırları tanımlanmalıdır. Yasaklanan test faaliyetleri, veri güvenliği, kanıt biçimi, bulgu önceliklendirmesi ve yeniden test süreci teklif aşamasında açıklığa kavuşmalıdır.
Raporu güvenlik garantisi değil kapsamlı bir kanıt olarak okuyun
Denetim raporunu bütün ürünün güvenlik belgesi, otomatik taramayı bağımsız denetim veya tek penetrasyon testini kalıcı güvence olarak görmek hatalıdır. Her rapor belirli bir sürümü, ortamı, zamanı ve kapsamı temsil eder. Yeni sözleşme sürümleri, yetki değişiklikleri ve altyapı güncellemeleri bu sonucun geçerliliğini etkileyebilir.
Nova Pro Tech (Nova Bilişim Teknolojileri) olarak güvenlik çalışmasını hizmet adından önce mimari sınırlar üzerinden planlıyoruz. Sözleşmelerin, çalışan ürünün ve operasyonel yetkilerin birlikte değerlendirilmesi gereken projelerde doğru inceleme sırasını ve kapsamını belirlemek için bizimle iletişime geçebilirsiniz.
İlgili konular
- akıllı sözleşme denetimi
- Web3 pentest
- güvenlik kapsamı