NFT sözleşmesi güvenlik riskleri analizi: 2022 yılının ilk yarısı olayları incelemesi ve denetim noktaları

NFT Sözleşmesi Güvenlik Analizi: 2022'nin İlk Yarısında Olayların Gözden Geçirilmesi ve Yaygın Soruların Tartışılması

2022 yılının ilk yarısında, NFT alanında güvenlik olayları sıkça meydana geldi ve büyük ekonomik kayıplara yol açtı. Yapılan istatistiklere göre, bu altı ayda toplam 10 büyük NFT güvenlik olayı gerçekleşti ve toplam kayıp 64.90 milyon dolara ulaştı. Saldırı yöntemleri arasında sözleşme açıklarının kullanılması, özel anahtar sızıntıları ve phishing gibi yöntemler yer alıyor. Özellikle dikkat edilmesi gereken nokta, Discord platformundaki phishing saldırılarının oldukça yaygın hale gelmesi; neredeyse her gün sunucular saldırıya uğruyor ve çok sayıda kullanıcının kötü niyetli linklere tıklayarak zarar görmesine neden oluyor.

İlk yarı NFT güvenlik olayları analizi: Hangi tipik vakalar bize dikkat etmemiz gerektiğini gösteriyor?

Tipik Güvenlik Olayı Analizi

TreasureDAO olayı

3 Mart'ta, TreasureDAO ticaret platformu saldırıya uğradı ve 100'den fazla NFT çalındı. Sorun, TreasureMarketplaceBuyer sözleşmesinin buyItem fonksiyonunda yatıyordu. Bu fonksiyon, toplam fiyatı hesaplarken token türünü kontrol etmeden, miktarı birim fiyatla çarparak işlem yapıyordu. Bu, saldırganların ERC-20 token ödemesi 0 olduğunda, TreasureMarketplace sözleşmesinin buyItem fonksiyonunu çağırarak token satın almasına neden oldu.

Temel sebep, ERC-1155 ve ERC-721 tokenlerinin karışık kullanımından kaynaklanan mantıksal karmaşa. ERC-721 tokeninin kendisi miktar kavramına sahip değildir, ancak sözleşme, satın alma fiyatını hesaplamak için miktarı kullanmakta ve nihai transfer gerçekleştirildiğinde mantıksal ayrım yapılmamaktadır.

APE Coin airdrop olayı

17 Mart'ta, bir hacker, flash kredi kullanarak 60,000'den fazla APE Coin airdrop'u elde etti. Sorun, AirdropGrapesToken airdrop sözleşmesindeydi. Sözleşme, alpha.balanceOf() ve beta.balanceOf() kullanarak çağrıcının BAYC/MAYC NFT üzerindeki sahipliğini belirliyordu, ancak bu yöntem yalnızca kullanıcının NFT üzerindeki sahiplik durumunu anlık olarak elde etmeyi sağlıyor ve bu durum flash kredi ile manipüle edilebiliyor. Saldırgan, bu açığı kullanarak, flash kredi ile BAYC NFT'sini ödünç alıp ilgili airdrop'u elde etti.

Revest Finance olayı

27 Mart'ta, Revest Finance projesi saldırıya uğradı ve yaklaşık 120.000 dolar kaybedildi. Bu tipik bir ERC-1155 yeniden giriş saldırısıdır. Sorun, Revest sözleşmesindedir. Kullanıcılar depositAdditionalToFNFT() fonksiyonunu kullanarak FNFT teminat varlıklarını eklediklerinde, sözleşmenin önce eski FNFT'yi yok etmesi ve ardından yeni FNFT'yi basması gerekmektedir. Ancak, basım sürecinde min() fonksiyonu, basılması gereken FNFT'nin zaten var olup olmadığını kontrol etmemektedir ve fnftId durum değişkeni _mint() fonksiyonundan sonra artmaktadır. Ayrıca, _min() içinde ERC-1155'in gizli dış çağrısı _doSafeTransferAcceptanceCheck() bulunmaktadır, bu da yeniden giriş açığına yol açmaktadır.

NBA koyun yünü olayı

21 Nisan'da, NBA projesi bir saldırıya uğradı. Sorun, The_Association_Sales sözleşmesinin imza doğrulama mekanizmasında yatıyor. İki ana güvenlik açığı bulunmaktadır: imza sahteciliği ve imza yeniden kullanımı. İmza yeniden kullanımı, sözleşmenin daha önce kullanılan imzaları saklamaması nedeniyle, saldırganların aynı imzayı birden fazla kez kullanabilmesine yol açmaktadır. İmza sahteciliği ise, vData bellek parametresi info'nun parametre geçerken msg.sender kontrolü yapılmadığı için imzanın sahte olarak kullanılabilmesine neden olmaktadır.

Akutar olayı

23 Nisan'da, NFT projesi Akutar'ın AkuAuction sözleşmesi, bir açık nedeniyle 11539 ETH (yaklaşık 34 milyon dolar) kilitlendi. Sözleşmede iki mantıksal açık bulunuyor:

  1. İade fonksiyonu processRefunds, iadeleri gerçekleştirmek için call fonksiyonunu kullanır ve iade sonucunu require koşulu olarak belirler. Saldırgan, fallback içerisinde kötü niyetli bir şekilde revert işlemi yaparak, tüm sözleşmenin iade işleminin gerçekleştirilmesini engelleyebilir.
  2. İade fonksiyonundaki iki kontrol koşulu, kullanıcının birden fazla NFT teklif edebileceği durumu dikkate almadığı için proje tarafının sonraki iade işlemleri asla gerçekleştirilemez.

XCarnival olayı

24 Haziran'da, NFT borç verme protokolü XCarnival saldırıya uğradı ve hacker 3087 Ethereum (yaklaşık 3.8 milyon dolar) kazandı. Sorun, XNFT sözleşmesinin pledgeAndBorrow fonksiyonunda bulunuyor. Bu fonksiyon, NFT'yi teminat gösterirken saldırganın gönderdiği xToken adresinin proje beyaz listesinin içinde olup olmadığını kontrol etmedi ve borç verme işlemi sırasında teminat kayıt durumunu denetlemedi, bu da saldırgana geçersiz teminat kayıtlarını tekrar tekrar kullanarak borç almasına olanak tanıdı.

İlk yarıda NFT güvenlik olayları analizi: Hangi tipik vakalar bize dikkat etmemiz gerektiğini hatırlatıyor?

NFT Sözleşmesi Denetimi Sıkça Sorulan Sorular

  1. İmza kötüye kullanımı ve tekrar kullanımı:

    • İmza verisi, kullanıcı nonce'u eksik olduğu için tekrar yürütme doğrulaması eksiktir, bu da tekrar kullanılabilir imza verisinin NFT basmasına neden olur.
    • İmza kontrolü mantıksız, imza sahibinin sıfır adresi olup olmadığının kontrol edilmemesi, herhangi bir kullanıcının kontrol yoluyla madeni para basmasına neden oluyor.
  2. Mantık açığı:

    • Sözleşme yöneticileri, toplam miktar kısıtlaması olmaksızın özel bir yöntemle madeni para basabilir, bu da NFT'nin gerçek miktarının beklenenden fazla olmasına yol açar.
    • NFT müzayedesinde, kazanan işlem sırası bağımlılığı saldırısını kullanarak teklif fiyatını değiştirebilir ve NFT'yi düşük fiyatla alabilir.
  3. ERC721/ERC1155 yeniden giriş saldırısı:

    • Transfer bildirim fonksiyonunu (onERC721Received fonksiyonu) kullanırken, NFT sözleşmesi transfer hedef sözleşmesine gönderilen çağrılar reentrancy saldırısına neden olabilir.
  4. Yetki kapsamı çok geniş:

    • Stake veya müzayede sırasında _operatorApprovals yetkilendirmesi gereklidir, tekil token yetkilendirmesi değil, bu da NFT'nin çalınma riskini artırır.
  5. Fiyat manipülasyonu:

    • NFT fiyatı, belirli bir sözleşmenin token sahipliğine bağlıdır. Saldırganlar, token fiyatını artırmak için hızlı kredi kullanarak NFT'lerin anormal bir şekilde tasfiye edilmesine neden olabilir.

NFT sözleşmeleriyle ilgili güvenlik olaylarının sıklıkla yaşanması ve denetim sürecinde tespit edilen açıkların genellikle gerçek saldırılarla uyuşması nedeniyle, NFT sözleşmelerinin kapsamlı bir denetim için profesyonel güvenlik şirketlerine başvurmak son derece önemlidir.

İlk yarı NFT güvenlik olayları analizi: Hangi tipik vakalar bize dikkat etmemiz gerektiğini gösteriyor?

View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 6
  • Repost
  • Share
Comment
0/400
BrokeBeansvip
· 20h ago
Sözleşme yine sorun çıkardı, kim alacak ki?
View OriginalReply0
CryptoNomicsvip
· 20h ago
*of* markov zincir analizi uygulamak, bu hack'lerin kötü sözleşme denetimi ile %73.4 korelasyon gösterdiğini ortaya koyuyor. istatistiksel olarak kaçınılmaz.
View OriginalReply0
blockBoyvip
· 20h ago
Tüh, her gün bir açık buluyorum.
View OriginalReply0
ILCollectorvip
· 20h ago
Ah, birkaç milyon dolar böylece buharlaştı, gerçekten kesinti kaybı yaşayan abinin acısını hissediyorum.
View OriginalReply0
SorryRugPulledvip
· 20h ago
Yine dc phishing ile rezil oldum.
View OriginalReply0
GweiTooHighvip
· 20h ago
Yine kontratlar alınıp satıldı, bitmek bilmedi.
View OriginalReply0
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)