$48 000 USD
DESCRIPTION OF EVENTS
"The world’s first and largest digital marketplace for crypto collectibles and non-fungible tokens (NFTs). Buy, sell, and discover exclusive digital items." "Discover, collect, and sell extraordinary NFTs. OpenSea is the world's first and largest NFT marketplace."
"As the first and largest marketplace for Non-Fungible Tokens and Semi-Fungible Tokens, OpenSea provides a first-in-class developer platform consisting of an API, SDK, and developer tutorials. Feel free to browse around and get acclimated with developing smart contracts and interacting with NFT data."
"Fascinated by the [CryptoKitties] movement that was forming, Devin Finzer and Alex Atallah joined early adopter communities in Discord and started talking to users. With the OpenSea beta launch in December 2017, the first open marketplace for any non-fungible token on the Ethereum blockchain was born."
"Valued at $13 billion in a recent funding round, OpenSea has become one of the most valuable companies of the NFT boom, providing a simple interface for users to list, browse, and bid on tokens without interacting directly with the blockchain."
"There are [some] straightforward security issues [on OpenSea], which have become newly urgent given the huge quantities of money on their platform."
"A [UI] bug in OpenSea has let hackers buy rare NFTs for well below market value, in some cases leading to hundreds of thousands of dollars in losses for the original owners — and hundreds of thousands of dollars in profits for the apparent thieves." "An interface bug that had been dormant for months let attackers trade on old contracts, causing hundreds of thousands of dollars in unintended sales."
"The exploit appears to rely on the fact that NFT owners are unaware that old marketplace listings for their NFTs are still active. Those old listings are now being used to purchase NFTs at prices chosen by the seller in the past - which is often well below current market prices."
"The bug appears to have been present for weeks and seems to be referenced in at least one tweet from January 1st, 2022. But exploitation of the bug has picked up significantly in the past day: blockchain analytics company Elliptic reported that in a 12-hour stretch before the morning of January 24th, it was exploited at least eight times to “steal” NFTs with a market value of over $1 million."
"The bug was discovered as early as December 31st, 2021, according to CoinDesk."
"According to a Twitter thread by software developer Rotem Yakir, the bug is caused by a mismatch between the information available in NFT smart contracts and the information presented by OpenSea’s user interface. Essentially, the attackers are taking advantage of old contracts that persist on the blockchain but are no longer present in the view provided by the OpenSea application."
"OpenSea users sell NFTs by setting a “list price” for potential buyers to see. Due to the nature of smart contracts, if a buyer accepts that list price, the NFT is automatically transferred to them. If an owner wants to re-list an NFT for a higher sale price, the proper way to do this is to cancel the first listing, which costs a “gas fee” that might be in the tens or even hundreds of dollars, so some users had skirted around this by transferring the NFT to another wallet, then back to the original wallet. While this technique apparently removed the listing from the information in OpenSea’s front-end display, the original listing remained active on the blockchain and could allegedly be found through the OpenSea API."
"The way OS works, is by having their marketplace conduct off-chain to save gas. When you list an item for sale (or bid) you are signing data that validate that you are willing to sell your NFT at this price." "The signature is saved in @opensea's DB off-chain and when someone wants to buy your NFT, they will send to their smart contract your previously signed data where the signature and sale information (such as expiration & price) are validated on-chain before making the transfer."
"When you cancel a listing, you are require to preform a transaction, why you might ask? the reason is that someone might save your signed listing (which are public or even their API) and use it later, even if the listing got removed from the UI." "So the transaction on-chain will save the fact that you canceled this sale on their smart contract and even if someone will try to use your signed data from before, the on-chain validation will reject the sale."
"So what is this bug and how to avoid it? the bug stems from the fact that previously you could re-list an NFT without canceling it (which you can't now) and all the previous listing are not canceled on-chain, this is why re-listing will NOT work." "Furthermore, transferring a previously listed NFT to back to the wallet that listed it, will not prevent you from this bug. Re-list will not help you too (unless you made sure you cancelled all previous listing)."
"And as we shown before sites save old listing and now exploiters can use this information to perform the sale since @opensea smart contract will believe this sale is valid! (which is kinda is)." "Another big problem that @opensea has, is that they don't have order nonce, so even if you made a listing 6 months ago then made another one 4 months ago & canceled it after 1 day, the first list is still valid and may not be visible on the UI."
"@LooksRareNFT for example, has the ability to cancel all orders using a nonce so even if you somehow forgotten to cancel a listing, this can make sure you are safer." "To sum up, previously, you could have re-list an NFT without canceling the previous list. Sometimes but not always, If you cancel your new listing, the old one will not appear on the UI but is still valid." "The two options are to cancel the listing directly or to send it to another wallet without transferring it back until the original listing expires." "Generally, I'd say simplest is to just cancel."
A tweet from January 12th, 2022, details the forced sale of NFTs via the same method.
"[T]here’s an OpenSea bug (shocking, i know) in their contract that allows people to exploit old listings and buy NFTs right from under you. [H]ere’s a story of what happened today & how you can make sure it doesn’t happen to you."
"[C]anceling listings can be expensive. [I]t costs gas to cancel EACH listing (every time you lower the price it’s a separate listing). [W]hat many people do is transfer the NFT to another wallet to cancel the listing. [T]his used to work."
"[S]uddenly, people have been reporting their NFTs were sold below floor and they don’t even know how. [W]hat’s happening is, listings from as long as up to 6 months are still active on @rarible, even OS in some cases, when you transfer them back to your wallet."
"[T]oday in the @FLUF_World community, a female VIP lanyard (worth at least 10eth) was sold for 2.7eth to someone exploiting the listing. [F]ortunately, when it was re-listed it for 7eth, [I] sniped it instantly to make sure it could get back into the hands of the rightful owner."
"[A]fter working out a deal to get the owner their Fluf back, i transferred it back to him. [W]ell guess what, IT IMMEDIATELY RE-LISTED FOR 3ETH from an old listing that was still somehow active. [F]ortunately, @maxpoker247 sniped it and saved the day (again)."
"[T]oday was exhausting. [I] wasted 6 hours of my life trying to sort this out with the original owner & regain liquidity, only for THE SAME EXPLOIT to almost fuck the whole thing up anyway [and] this result was a DREAM SCENARIO."
"[B]ig thank you to the @FLUF_World community for stepping up today. [S]o many people donated thousands of dollars to help our friend who was fucked over by a platform that generates millions of dollars in revenue a day."
"It’s unclear whether OpenSea is treating the situation as an open security flaw or a result of user error. The company did not respond to a request for comment by time of publication."
OpenSea is one of the largest NFT marketplaces online. If an order is placed on the blockchain, it's available for future use unless cancelled or the NFT is no longer in the wallet which the offer applies to. If an NFT is moved from one wallet to another and back again, then OpenSea will fail to display the open order, which can still be executed. On January 12th, a user had two of their previous orders exploited in order to purchase the NFT (worth 10 ETH) for 2.7 ETH and again for 3 ETH. Other users returned the NFT to the rightful owner for the price they paid for it, which was 7 ETH in the first case and 3 ETH in the second case. Therefore, most of the funds were recovered.
An OpenSea bug let attackers snatch Apes from owners at six-figure discounts - The Verge (Mar 15)
@cap10bad Twitter (Mar 16)
@boredapebot Twitter (Mar 16)
How OpenSea took over the NFT trade - The Verge (Mar 10)
Dune Analytics (Mar 10)
https://opensea.io/ (Mar 9)
Meet OpenSea | The NFT marketplace with everything for everyone - YouTube (Mar 9)
https://docs.opensea.io/docs (Mar 9)
https://docs.opensea.io/docs/frequently-asked-questions (Mar 9)
https://opensea.io/about (Mar 9)
@yakirrotem Twitter (Mar 21)
@yakirrotem Twitter (Mar 21)
https://coinmarketcap.com/currencies/ethereum/historical-data/ (Dec 21)
@GinoTheGhost Twitter (Mar 21)