Akıllı Sözleşme Güvenlik Denetimi Nedir?
Ana sayfa
Makaleler
Akıllı Sözleşme Güvenlik Denetimi Nedir?

Akıllı Sözleşme Güvenlik Denetimi Nedir?

Orta Seviye
Yayınlanma: Mar 1, 2022Güncellenme: Apr 27, 2023
8m

Kısa Özet

Bir akıllı sözleşme güvenlik denetimi, projenin akıllı sözleşmelerinin ayrıntılı bir analizini sunar. Bu denetimler, sözleşmeler üzerinden yatırılan fonların korunması için önemlidir. Fonların çalınması durumunda, blockchain üzerindeki tüm işlemler nihai olduğu için bu fonların kurtarılması mümkün değildir. Denetçiler genellikle akıllı sözleşmelerin kodunu inceler, bir rapor hazırlar ve bu raporu üzerinde çalışması için projeye sunar. Daha sonra bir nihai rapor yayınlanır. Bu rapor, göze çarpan tüm hataların yanı sıra performansa ya da güvenlik sorunlarına yönelik halihazırda yapılmış çalışmaları da içerir.


Giriş

Akıllı sözleşme güvenlik denetimleri Merkeziyetsiz Finans (DeFi) ekosisteminde oldukça yaygındır. Bir blockchain projesine yatırım yaptıysanız, kararınız kısmen akıllı sözleşme kodu incelemesinin sonuçlarına dayanıyor olabilir.

Çoğu kişi siber güvenlik denetimlerinin önemini bilse de herkesin kod satırlarını derinlemesine incelemesi pek mümkün olmayabilir. Daha bilinçli kararlar alabilmeniz için akıllı sözleşme güvenlik denetimlerinde sıkça karşılaşılan yöntem, araç ve sonuçları bu makalemizde sizlerle paylaşacağız.


Akıllı sözleşme denetimi nedir?

Bir akıllı sözleşme denetimi, projenin akıllı sözleşme kodunu inceler ve kod hakkında değerlendirmelerde bulunur. Bu sözleşmeler genellikle Solidity programlama dilinde yazılmıştır ve GitHub aracılığıyla sunulur. Güvenlik denetimleri, özellikle de milyonlarca dolar değerinde blockchain işlemlerini ya da çok sayıda kullanıcıyı idare etmesi beklenen DeFi projeleri için çok değerlidir. Denetim süreci genellikle dört aşamadan oluşur:

1. İlk analiz için akıllı sözleşmeler denetim ekibine sunulur.

2. Denetim ekibi, aksiyon alabilmesi için bulgularını projeyle paylaşır.

3. Proje ekibi, tespit edilen sorunlara yönelik değişiklikler yapar.

4. Denetim ekibi, yapılan tüm yeni değişiklikleri ve göze çarpan hataları içeren nihai raporunu yayınlar.

Birçok kripto kullanıcısı için yeni DeFi projelerine yatırım yaparken akıllı sözleşme denetimleri büyük bir öneme sahiptir. Projeler için ciddiye alınma isteği standart bir yaklaşım haline gelmiştir. Ayrıca bazı denetçiler sektör liderleri olarak görülmekte, bu da onlar tarafından yapılan denetimleri yatırımcıların gözünde daha değerli kılmaktadır.


Neden akıllı sözleşme denetimlerine ihtiyacımız var?

Akıllı sözleşmelerde kilitlenen ya da onlar üzerinden işlem yapılan değerin çok yüksek olması, bu sözleşmeleri hacker saldırıları için çekici bir hedef haline getirmiştir. Küçük kodlama hataları, çok yüksek miktarlarda paranın çalınmasına yol açabilir. Örneğin, Ethereum blockchaini üzerindeki DAO saldırısı yaklaşık 60 milyon dolar değerinde ETH'nin çalınmasına hatta Ethereum ağında bir sert çatallanma yapılmasına neden olmuştur.

Blockchain işlemleri geri döndürülemez olduğu için projenin kodunun güvenli olduğundan emin olmak çok önemlidir. Blockchain teknolojisinin son derece güvenli doğası, bir sıkıntının yaşanmasının ardından fonları kurtarmayı ya da sorunları çözmeyi zorlaştırır. Bu nedenle, güvenlik açıklarını ne pahasına olursa olsun engellemek çok daha faydalıdır.


Akıllı sözleşme güvenlik denetimleri nasıl çalışır?

Akıllı sözleşme denetim süreci, denetim sağlayıcılar arasında oldukça standarttır. Denetçilerin yaklaşımları arasında küçük farklar olabilse de tipik süreç şu şekildedir:

1. Denetimin kapsamının belirlenmesi. Proje (amaçladıkları hedef) ve genel mimariye dayanarak akıllı sözleşmenin ve projenin teknik özellikleri belirlenir. Teknik özellikler, projenin kodu yazarken ve kullanırken neyi amaçladığının denetim ekibi tarafından anlaşılmasına yardımcı olur.

2. Yapılması gereken iş miktarına bağlı olarak ilk fiyat teklifi gönderilir.

3. Testler yapılır. Bu aşamada tam olarak ne yapılacağı denetim ekibine, analiz araçlarına ve yöntemlerine bağlıdır. Genellikle hem manuel hem de otomatik testler yürütülür.

4. Raporun bulunan hataları içeren ilk taslağı yaratılarak geri bildirim ve bunu takiben yapılacak düzeltmeler için proje ekibine sunulur.

5. Tespit edilen sorunları çözmeye yönelik ekibin tüm aksiyonlarını da içeren nihai rapor yayınlanır.


Akıllı sözleşme denetim yöntemleri

Gas verimliliği 

Akıllı sözleşme denetimleri yalnızca blockchain güvenliğine odaklanmaz. Verimlilik ve optimizasyon da incelenir. Bazı sözleşmeler, işlevlerini yerine getirmek için bir takım karmaşık işlemler gerçekleştirir. Ethereum gibi ağlardaki gas ücretlerinin nispeten yüksek olduğu dikkate alındığında, verimli sözleşmeler işlem ücretlerinden büyük oranda tasarruf etmeye imkan tanıyabilir.

Sözleşmelerin performansının optimize edilmesi de geliştiricilerin becerilerinin bir göstergesidir. Verimsiz adımlar hataya daha fazla alan açar ve bu adımlardan kaçınılmalıdır. Gas maliyeti yüksek olduğunda, özellikle de düşük bir gas limiti kullanılıyorsa akıllı sözleşmelerin çalışması mümkün olmayabilir.

Sözleşmenin güvenlik açıkları

Denetimlerde yapılan işin büyük bir bölümünü sözleşmeleri güvenlik açıklarına karşı kontrol etmek oluşturur. Bazı sorunları tespit etmek kolay olsa da çoğu saldırıda fonları çalmak için ileri seviye teknikler ve stratejiler kullanılır. Örneğin, zayıf akıllı sözleşmelerde flaş kredi saldırıları düzenlemek için piyasa manipülasyonu kullanılabilir. Bu sorunları belirlemek için denetçiler kırılma testi sürecini başlatır ve akıllı sözleşmeye yönelik çeşitli saldırıların simülasyonunu yapar. Yaygın karşılaşılan güvenlik açıkları şunlardır:

1. Tekrar kayıt sorunları: Akıllı sözleşmenin, henüz kendi durumunu güncellemeden başka bir harici sözleşmeye bir çağrı yapması durumunda yaşanır. Daha sonra harici sözleşme orijinal akıllı sözleşmeye yinelenen çağrılar gönderebilir ve orijinal sözleşmenin bakiyesi henüz güncellenmediği için onunla aslında mümkün olmaması gereken şekillerde etkileşim kurabilir.

2. Tam sayı fazlalığı ve azlığı: Akıllı sözleşmenin bir aritmetik işlem gerçekleştirmesi ama çıktının depolama kapasitesini (genellikle 18 ondalık basamak) aşması durumunda yaşanır. Bu da hesaplanan tutarlarda hatalara neden olabilir.

3. Önden işlem yapma fırsatları: Kötü yapılandırılmış bir kod, piyasa alımları ya da satışları için önceden uyarı verebilir. Bu da başkalarının bu bilgiyi kullanmasına ve kendi çıkarlarına yönelik alım satımlar yapmasına neden olabilir.

Platform güvenliği kusurları

Çoğu denetim, sözleşmelere ev sahipliği yapan ağı hatta DApp ile etkileşim kurarken kullanılan API'yi de inceler. Proje, DDoS saldırılarına açık olabilir. Bir diğer olasılık ise web sitesinin kullanıcı arayüzünün ele geçirilmesi, dolayısıyla da kullanıcıların cüzdanlarını aslında kötü niyetli blockchain uygulamalarına bağlayacak olmasıdır.


Denetim raporu nedir?

Denetim raporu, denetim sürecinin sonunda sunulur. Şeffaflık için projenin bulguları toplulukla paylaşması beklenir. Çoğu rapor, sorunları kritik, önemli, önemsiz vb. şekillerde gruplandırır. Nihai rapor yayınlanmadan önce projeye sorunları çözmek için zaman tanındığından sorunla ilgili son durum da rapora dahil edilir.

Standart bir rapor, kısa bir özetin yanı sıra önerileri, gereksiz kod örneklerini ve kod hatalarının nerede olduğunun tam bir dökümünü içerir. Nihai versiyon yayınlanmadan önce projeye raporun bulgularına yönelik düzeltmeler yapmak için zaman tanınır.


Nereden akıllı sözleşme denetimi alabilirim?

Verdiği hizmetlerle tanınan birkaç akıllı sözleşme denetim hizmeti vardır. Bunlardan ikisi özellikle popülerdir ve kendilerinden denetim almak için bir fiyat teklifi almak ve çeşitli bilgileri paylaşmak gereklidir.

CertiK

Söz konusu akıllı sözleşme denetimleri olduğunda CertiK sektör lideridir. Yüzlerce projenin akıllı sözleşmesi CertiK tarafından denetlenmiştir. BSC'nin en büyük Otomatik Piyasa Yapıcısı (AMM) PancakeSwap buna örnek olarak verilebilir. Aşağıda, CertiK'in PancakeSwap denetiminin bir bölümünü görebilirsiniz.


Binance Labs tarafından desteklenen projelerin büyük bir çoğunluğunun sözleşmeleri de CertiK tarafından denetlenmiştir. CertiK, denetlenen projeler için güvenlik puanını da içeren bir liderlik sıralaması yayınlar. Bu sayede, projeleri birbirleriyle kıyaslayabilirsiniz. CertiK, Ethereum dışında BSC ve Polygon projelerini de denetler.


ConsenSys Diligence

Ethereum'un kurucu ortaklarından Joseph Lubin tarafından yürütülen ConsenSys, blockchain geliştirmesi konusunda kripto para sektörünün en büyük isimlerinden biridir. Şirket, ConsenSys Diligence altında Ethereum akıllı sözleşme denetimleri sunar. ConsenSys, sık karşılaşılan hatalara karşı Ethereum Sanal Makinesini (EVM) kontrol eden otomatik bir hizmet de sunar.


Bir akıllı sözleşme denetiminin maliyeti ne kadardır?

Tam maliyet, kontrol edilmesi gereken akıllı sözleşme sayısına dayanır. Genellikle bir denetim için binlerce dolar ödenmesi gereklidir. Büyük bir proje için fiyat kolaylıkla 10.000 USD'nin üzerinde çıkabilir. Denetiminizi yapan şirket ve bu şirketin itibarı da ödeyeceğiniz tutarı etkileyecektir.


Son Söz

Yatırımcı ve kullanıcıların yararına olacak şekilde akıllı sözleşme denetimleri altın standart haline gelmiştir. Fakat tüm projelerin denetimden geçmesi, denetimi kolayca değer biçmeye yardımcı olan bir gösterge olmaktan çıkarır. Bu nedenle, denetim raporunun kendisini okumak son derece önemlidir. Teknik bilginiz olmasa bile, yorumlara ve belirlenen sorunların ciddiyetine göz atmanız faydalı olacaktır.

Artık bir denetim raporuna denk geldiğinizde, en azından içeriğini daha kolay bir şekilde anlayabilirsiniz. Her zamanki gibi, tüm yatırım kararlarınızın resmin tamamını göz önünde bulundurduğundan ve mevcut tüm bilgileri dikkate aldığından emin olmalısınız.