OpenSea’de bulunan bir bug hackerların yüksek fiyatlı NFT’leri pazar değerinin altına almasına neden oldu. Bu durum, NFT’lerin orijinal sahiplerinin yüz binlerce dolar kayıp yaşamasına sebep oldu.
Söz konusu açık, ne kadar zamandır OpenSea’de?
Söz konusu açık, haftalardır platformda varlığını sürdürdüğü iddia ediliyor. Örneğin Twitter’da Carson Turner kullanıcı adlı bir kişi, 2 Ocak tarihinde @ACYCapital’in kendi Bored Ape Yacht Club NFT’sini OpenSea hackinden faydalanarak aldığını iddia etti. Aynı şekilde Bug’ın ilk olarak 31 Aralık’ta keşfedildiği düşünülüyor.
Tıpkı Carson Turner gibi bir başka twitter kullanıcısı 13 Ocak’ta da benzer bir bug’dn söz ederek, bug’ın yol açacağı problemlerden kaçınmanın yollarını paylaştı.
IMPORTANT THREAD!
please RT to spread the word.there’s an OpenSea bug (shocking, i know) in their contract that allows people to exploit old listings and buy NFTs right from under you. here’s a story of what happened today & how you can make sure it doesn’t happen to you:
1/
— ginotheghost.eth (@GinoTheGhost) January 13, 2022
Saldırının detayları
Ancak kötü niyetli kişilerin, bu bug’dan geniş kapsamlı bir şekilde istifade etmesi 23 – 24 Ocak günlerinde yaşandı.
Blockchain analiz şirketi Elliptic’e göre, bu bugdan yaklaşık 8 kere faydalanıldı. Bunun sonucunda pazar değeri 1 milyon doların üzerinde olan NFT’ler çalındı.
Saldırıyı gerçekleştirenler Bored Ape Yacht Club #9991 NFT’sini 0.77 ETH yani yaklaşık 1,760 dolara satın aldı. Bu işlemin akabinde hızlıca 84.2 ETH’e yani yaklaşık 192 bin 400 dolara elinden çıkardı. Böylece saldırganlar, 190 bin dolardan fazla kar elde etmiş oldu. Satışı gerçekleştiren hesap, OpenSea’de 12 saat içinde 400 ETH’den fazla ödeme aldı. Bu da 904 bin dolardan fazla ödeme anlamına geliyor.
Açıktan nasıl faydalanıldı?
Yazılım geliştiricis Rotem Yakir’in paylaştıklarına göre; söz konusu bug, NFT akıllı sözleşmelerinde bulunan bilgiler ile OpenSea’nin arayüzünde sunulan bilgilerin uyuşmamasından kaynaklanıyor. Bu kapsamda saldırganlar, blockchainde varlığını sürdüren ancak OpenSea’de görünmeyen eski kontratlardan faydalanıyor.
Burada bilmeniz gereken en önemli detay, NFT’lerin liste fiyatının ve ikincil satış fiyatlarının nasıl belirlendiği. OpenSea kullanıcıları NFT’leri satışa açarken, alıcıların görebilmesi için bir liste fiyatı belirliyor. Akıllı kontratlarda, alıcının liste fiyatını kabul etmesi halinde NFT otomatik olarak alıcıya transfer ediliyor.
Eğer alıcı, ürünü tekrar satmak için listelemek isterse, ilk liste fiyatını iptal etmeli. Ancak pek çok kişi yüksek gaz ücretleri nedeniyle, bu işlemi yapmak yerine, NFT’leri farklı bir cüzdana aktarıp, ardından orijinal cüzdanlarına geri gönderiyordu. Bu yöntem ile OpenSea’deki liste fiyatları değişse de, orijinal liste fiyatı blockchain’de aktif olarak kalıyor. Üstelik iddialara göre bu bilgiye OpenSea API üzerinden ulaşmak mümkün.
OpenSea’nin bu yaşananların ardından liste fiyatları ile ilgili yeni bir özellik yayınladığını belirtelim. Şirket, listeleme yöneticisi isimli özelliği devreye alıyor.
What’s going on:
Listings made a long time ago are resurfacing when items transfer back into lister’s wallets.What we did:
We can’t cancel these orders for listers, so to fix the problem, we launched a new listings manager today.https://t.co/jy2sUhaBUA pic.twitter.com/6b8lHmkEYN— OpenSea (@opensea) January 24, 2022