Türkiye'nin en büyük inovasyon ve girişimcilik bültenine katılın
Kanallar İlham Uygulamalar SSS Sözlük Giriş Üye Ol

Web3

/web3 · 1.YIL

/web3 topluluğu, blockchain, merkeziyetsiz uygulamalar, akıllı kontratlar ve yeni nesil internet teknolojileri üzerine çalışan geliştiricileri bir araya getiren teknik odaklı bir topluluktur. Bu toplulukta Web3 geliştiricileri; Solidity, Rust, Move, JavaScript/TypeScript, smart contract geliştirme, dApp mimarisi, cüzdan entegrasyonları, token standartları, NFT altyapıları, DeFi protokolleri, DAO yapıları, on-chain veri, güvenlik, testnet süreçleri ve deployment deneyimleri üzerine bilgi paylaşabilir. Amaç; geliştiricilerin birbirinden öğrenmesini, teknik problemlerine çözüm bulmasını, açık kaynak projelere katkı sunmasını ve Web3 ekosisteminde daha güçlü ürünler geliştirmesini sağlamaktır.

62 içerik Katıl
#web3 akışına dön
@sourdiesel · 34 gün önce

Akıllı kontrat denetimi: Ne zaman gerekir, nasıl hazırlanılır, ne kadar tutar

Kontratınız gerçek para tutacaksa denetim bir seçenek değil zorunluluk. Ama denetim de sihirli bir güvence değil ve doğru beklentiyle yaklaşmak gerekiyor.

Denetim ne zaman gerekir: kontrat kullanıcı fonu tutuyorsa, yükseltilebilir yetkiler içeriyorsa, başka protokollerle etkileşiyorsa veya önemli tutarlarda değer taşıyacaksa.

Hazırlık aşaması denetimin kalitesini doğrudan belirliyor. Hazırlık listesi:

Kod dondurulmuş olmalı. Denetim sırasında değişen kod, denetimi geçersiz kılıyor.

Test kapsamı yüksek olmalı. Denetçi testlerinizi de okuyor ve eksik test edilen yollar dikkat çekiyor.

Belgeler hazır olmalı. Her fonksiyonun ne yaptığı, kimin çağırabileceği ve hangi varsayımlara dayandığı yazılı olmalı.

Mimari şeması olmalı. Kontratlar arası ilişkiler, yetki akışı ve dış bağımlılıklar görsel olarak anlatılmalı.

Tehdit modeli yazılmalı. Sizce en kritik varlık ne, kim saldırır, hangi senaryodan korkuyorsunuz.

Statik analiz temiz olmalı.

Denetim süreci genelde şöyle işliyor: kapsam ve fiyat belirleniyor, inceleme yapılıyor, bulgular kritik seviyeye göre raporlanıyor, siz düzeltiyorsunuz, düzeltmeler tekrar inceleniyor ve nihai rapor yayımlanıyor.

Maliyet kod büyüklüğüne ve karmaşıklığa göre ciddi değişiyor. Küçük bir kontrat ile karmaşık bir protokol arasında kat kat fark var.

En önemli nokta: denetim raporu her şeyin güvenli olduğu anlamına gelmiyor. Rapor, belirli bir zamanda belirli bir kod için yapılmış bir incelemedir. Kod değişirse geçersizdir ve hiçbir denetim bütün hataları bulmayı garanti etmez.

Denetim sonrası bug bounty programı açmak da yaygın. Bulunan açıklar için ödeme yapmak, açığın kötüye kullanılmasından çok daha ucuz.
0 2 yorum
Yorumlar (2)
@bberber · 29 gün önce 5
Bug bounty programı önerisini desteklemek isterim, denetimin tamamlayıcısı olarak çalışıyor.

Denetim belirli bir zaman diliminde belirli kişilerin bakışı. Bug bounty programı ise sürekli ve çok sayıda gözün bakması demek.

Kurarken dikkat edilecekler: kapsamı net yazmak, ödül miktarlarını kritiklik seviyesine göre tanımlamak, iletişim kanalını açık tutmak ve bildirimlere hızlı dönmek.

En çok yapılan hata, bildirime cevap vermemek veya ödülü tartışmaya açmak. Bu, araştırmacının açığı başka yerde kullanmasına sebep olabiliyor.

Bir de ödül miktarı gerçekçi olmalı. Kontratta tutulan değerle orantısız düşük ödül, kimseyi motive etmiyor.
@vahabdemir · 27 gün önce 6
Tehdit modeli yazma maddesi bence en değerlisi ve en çok atlanan hazırlık.

Denetçiye sadece kodu verirseniz, kodun ne yapması gerektiğini varsayımlarla anlamaya çalışıyor. Sizin niyetinizi bilmeden bir davranışın hata mı özellik mi olduğunu ayırt edemiyor.

Belgede şunlar olmalı: sistemin korumak zorunda olduğu invariant kurallar, her rolün ne yapabileceği, güvendiğimiz dış bileşenler ve kabul ettiğimiz riskler.

Bu belgeyi yazmak tek başına çok şey ortaya çıkarıyor. Yazarken fark ettiğimiz çelişkiler oldu ve denetime gitmeden düzelttik.

Yani denetim için hazırlanmak, denetimden bağımsız olarak da fayda sağlıyor.