FutureSwap Credential Disclosure: Difference between revisions

From Quadriga Initiative Cryptocurrency Hacks, Scams, and Frauds Repository
Jump to navigation Jump to search
(Created page with "{{Imported Case Study|source=https://www.quadrigainitiative.com/casestudy/futureswapcredentialdisclosure.php}} thumb|FutureSwapFutureSwap is a decentralized exchange that operates on Arbitrum, a layer 2 solution to scale ethereum. One of the users who held over 300,000 FST (valued ~$798k USD) suffered an account breach and their funds were stolen. Details of the specific breach method were not located. The protocol apparently paused the smart con...")
 
(Another 30 minutes complete. Prevention added and much more research.)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
{{Imported Case Study|source=https://www.quadrigainitiative.com/casestudy/futureswapcredentialdisclosure.php}}
{{Case Study Under Construction}}{{Unattributed Sources}}


[[File:Futureswap.jpg|thumb|FutureSwap]]FutureSwap is a decentralized exchange that operates on Arbitrum, a layer 2 solution to scale ethereum. One of the users who held over 300,000 FST (valued ~$798k USD) suffered an account breach and their funds were stolen. Details of the specific breach method were not located. The protocol apparently paused the smart contract, bringing their system offline for 24-48 hours, in order to restore the funds.
[[File:Futureswap.jpg|thumb|FutureSwap]]FutureSwap is a decentralized exchange that operates on Arbitrum, a layer 2 solution to scale ethereum. One of the users who held over 300,000 FST (valued ~$798k USD) suffered an account breach and their funds were stolen. Details of the specific breach method were not located. The protocol apparently paused the smart contract, bringing their system offline for 24-48 hours, in order to restore the funds.


This is a global/international case not involving a specific country.
This is a global/international case not involving a specific country.
<ref name="slowmist-2069" /><ref name="insuraceblog-7013" />


== About FutureSwap ==
== About FutureSwap ==
<ref name="futureswap-7083" /><ref name="futureswapdocs-7084" /><ref name="coinmarketcap-7085" /><ref name="arbiscan-7088" /><ref name="coinmarketcap-7090" /><ref name="coingecko-7091" /><ref name="theblockcrypto-7092" /><ref name="arbiscan-7089" />
"The Future of Perpetuals Is Here. Leverage on any tokens with a protocol trusted with billions for its price execution, super low fees and reliability." "Take full control of your crypto. Built on Ethereum, our non-custodial perpetuals exchange focuses on one thing: being the best execution environment for trades."
"The Future of Perpetuals Is Here. Leverage on any tokens with a protocol trusted with billions for its price execution, super low fees and reliability." "Take full control of your crypto. Built on Ethereum, our non-custodial perpetuals exchange focuses on one thing: being the best execution environment for trades."


Line 13: Line 16:


"We have all been in this industry too long not to make the security of your funds our absolute top priority.  That’s why, so far, we’ve spent upwards of $450k on audits from Open Zeppelin and Trail of Bits, as well as code reviews from white hats."
"We have all been in this industry too long not to make the security of your funds our absolute top priority.  That’s why, so far, we’ve spent upwards of $450k on audits from Open Zeppelin and Trail of Bits, as well as code reviews from white hats."
"The credentials for [a FutureSwap] account were compromised by human error, and the attacker was able to gain access on Arbitrum and transfer the available reward FST to himself."
"Decentralized derivatives trading platform FutureSwap tweeted that an account with around 300,000 FST reward reserves (0.3% of supply) was compromised yesterday." "Last night, an account with access to a reserve of ~300,000 FST for rewards (0.3% of the supply) was compromised."
"We took action to remove control of the compromised FST by migrating the FST contract on Arbitrum." "Mainnet FST is unaffected. Arbitrum FST has been redeployed to the state before the withdrawal using a new contract." "Currently Arbitrum FST has used the new contract to take control of the compromised FST, the FST Arbitrum bridge is currently disabled and is scheduled to be restored within 24 to 48 hours."
"The new Arbitrum FST contract [has been deployed]. The old one is no longer valuable and should not be traded."
This is a global/international case not involving a specific country.
The background of the exchange platform, service, or individuals involved, as it would have been seen or understood at the time of the events.
Include:
* Known history of when and how the service was started.
* What problems does the company or service claim to solve?
* What marketing materials were used by the firm or business?
* Audits performed, and excerpts that may have been included.
* Business registration documents shown (fake or legitimate).
* How were people recruited to participate?
* Public warnings and announcements prior to the event.
Don't Include:
* Any wording which directly states or implies that the business is/was illegitimate, or that a vulnerability existed.
* Anything that wasn't reasonably knowable at the time of the event.
There could be more than one section here. If the same platform is involved with multiple incidents, then it can be linked to a main article page.


== The Reality ==
== The Reality ==
This sections is included if a case involved deception or information that was unknown at the time. Examples include:
TBD
 
* When the service was actually started (if different than the "official story").
* Who actually ran a service and their own personal history.
* How the service was structured behind the scenes. (For example, there was no "trading bot".)
* Details of what audits reported and how vulnerabilities were missed during auditing.


== What Happened ==
== What Happened ==
The specific events of the loss and how it came about. What actually happened to cause the loss and some of the events leading up to it.
"The credentials for [a FutureSwap] account were compromised by human error, and the attacker was able to gain access on Arbitrum and transfer the available reward FST to himself."
{| class="wikitable"
{| class="wikitable"
|+Key Event Timeline - FutureSwap Credential Disclosure
|+Key Event Timeline - FutureSwap Credential Disclosure
Line 57: Line 28:
!Description
!Description
|-
|-
|February 10th, 2022 8:37:00 PM
|February 10th, 2022 8:37:00 PM MST
|Main Event
|Post On Twitter
|Expand this into a brief description of what happened and the impact. If multiple lines are necessary, add them here.
|Future Swap posts on Twitter about the incident<ref name="futureswapxtwitter-7086" />.
|-
|-
|
|
Line 65: Line 36:
|
|
|}
|}
== Technical Analysis ==
<ref name="arbiscan-7089" /><ref name="futureswapxtwitter-7087" />
"The credentials for [a FutureSwap] account were compromised by human error, and the attacker was able to gain access on Arbitrum and transfer the available reward FST to himself."


== Total Amount Lost ==
== Total Amount Lost ==
The total amount lost has been estimated at $798,000 USD.
The total amount lost has been estimated at $798,000 USD.<ref name="coinmarketcap-7085" /><ref name="coinmarketcap-7090" />
 
== Immediate Reactions ==
 
=== Twitter Post About Breach ===
Future Swap shared about the incident on Twitter and announced their plans to migrate the contract<ref name="futureswapxtwitter-7086" /><ref name="futureswapxtwitter-7087" />.<blockquote>1/ Last night, an account with access to a reserve of ~300,000 FST for rewards (0.3% of the supply) was compromised. We took action to remove control of the compromised FST by migrating the FST contract on Arbitrum.
 
2/ The credentials for this account were compromised due to human error. The attacker was able to gain access and transfer the available rewards FST to themselves on Arbitrum.
 
3/ Mainnet FST is unaffected. Arbitrum FST has been redeployed to the state before the withdrawal using a new contract. The FST Arbitrum bridge is currently disabled, and we plan to restore it within 24 to 48 hours.
 
4/ The new Arbitrum FST contract is <nowiki>https://arbiscan.io/token/0x90e81b81307ece4257c1bb74bea94f5232cece53…</nowiki>. The old one (0x488cc08935458403a0458e45e20c0159c8ab2c92) is no longer valuable and should not be traded.


How much was lost and how was it calculated? If there are conflicting reports, which are accurate and where does the discrepancy lie?
5/ Trust and security are always our top priority. Our contracts are heavily audited and we are always improving our internal processes. Though the surface area of this attack was small, it’s a reminder that we can never be too careful.</blockquote>


== Immediate Reactions ==
 
How did the various parties involved (firm, platform, management, and/or affected individual(s)) deal with the events? Were services shut down? Were announcements made? Were groups formed?
"Decentralized derivatives trading platform FutureSwap tweeted that an account with around 300,000 FST reward reserves (0.3% of supply) was compromised yesterday." "Last night, an account with access to a reserve of ~300,000 FST for rewards (0.3% of the supply) was compromised."
 
"We took action to remove control of the compromised FST by migrating the FST contract on Arbitrum." "Mainnet FST is unaffected. Arbitrum FST has been redeployed to the state before the withdrawal using a new contract." "Currently Arbitrum FST has used the new contract to take control of the compromised FST, the FST Arbitrum bridge is currently disabled and is scheduled to be restored within 24 to 48 hours."


== Ultimate Outcome ==
== Ultimate Outcome ==
What was the end result? Was any investigation done? Were any individuals prosecuted? Was there a lawsuit? Was any tracing done?
 
=== Switching To A New Smart Contract ===
<ref name="futureswapxtwitter-7087" />
 
 
"The new Arbitrum FST contract [has been deployed]. The old one is no longer valuable and should not be traded."


== Total Amount Recovered ==
== Total Amount Recovered ==
The total amount recovered has been estimated at $798,000 USD.
The total amount recovered has been estimated at $798,000 USD.


What funds were recovered? What funds were reimbursed for those affected users?
== Ongoing Developments ==
TBD
== Individual Prevention Policies ==
The loss could have been prevented through better safeguarding of the private key.
 
=== Preventing Loss Of Funds ===
Users have a responsibility to safeguard their private key and avoid compromise through not sharing their seed phrase, exercising diligence for all transactions, and use a controlled secure environment to access cryptocurrency.


== Ongoing Developments ==
{{Prevention:Individuals:Never Share Private Keys}}
What parts of this case are still remaining to be concluded?
 
{{Prevention:Individuals:Double Check Transactions}}
 
{{Prevention:Individuals:Always Verify Executables}}
 
=== Safety With Smart Contracts ===
No other funds were reported lost in this case, however access to funds stored on the smart contract was restricted during the failure period.
 
{{Prevention:Individuals:Safe Smart Contract Usage}}


== Prevention Policies ==
{{Prevention:Individuals:Store Funds Offline}}
Which policies could have prevented this event from happening?


== References ==
{{Prevention:Individuals:End}}
[https://hacked.slowmist.io/en/ SlowMist Hacked - SlowMist Zone] (Jun 25)


[https://www.futureswap.com/ Futureswap] (Mar 12)
== Platform Prevention Policies ==
This situation could be avoided by providing additional education for users to help improve their security.


[https://docs.futureswap.com/ Futureswap Docs - Futureswap Docs] (Mar 12)
{{Prevention:Platforms:Cryptocurrency Safety Quiz}}


[https://coinmarketcap.com/currencies/futureswap/ https://coinmarketcap.com/currencies/futureswap/] (Mar 12)
An industry insurance fund could assist users affected by account breaches.


[https://twitter.com/futureswapx/status/1491979618571591685 @futureswapx Twitter] (Mar 12)
{{Prevention:Platforms:Establish Industry Insurance Fund}}


[https://twitter.com/futureswapx/status/1491979627379642372 @futureswapx Twitter] (Mar 12)
{{Prevention:Platforms:End}}


[https://arbiscan.io/token/0x90e81b81307ece4257c1bb74bea94f5232cece53 Futureswap Token (FST) Token Tracker | Arbiscan] (Mar 12)
== Regulatory Prevention Policies ==
This situation could be avoided by providing additional education for users to help improve their security.


[https://arbiscan.io/address/0x488cc08935458403a0458e45e20c0159c8ab2c92 Contract Address 0x488cc08935458403a0458e45e20c0159c8ab2c92 | Arbiscan] (Mar 12)
{{Prevention:Regulators:Cryptocurrency Education Mandate}}


[https://coinmarketcap.com/currencies/futureswap/historical-data/ https://coinmarketcap.com/currencies/futureswap/historical-data/] (Mar 12)
An industry insurance fund could assist users affected by account breaches.


[https://www.coingecko.com/en/coins/futureswap Futureswap price, FST chart, and market cap | CoinGecko] (Mar 12)
{{Prevention:Regulators:Establish Industry Insurance Fund}}


[https://www.theblockcrypto.com/linked/120099/decentralized-exchange-futureswap-raises-12-million-from-ribbit-capital-and-others Decentralized exchange Futureswap raises $12 million] (Mar 12)
{{Prevention:Regulators:End}}


[https://blog.insurace.io/security-incidents-in-february-9ba66f4bd0a3 https://blog.insurace.io/security-incidents-in-february-9ba66f4bd0a3] (Mar 10)
== References ==
<references>
<ref name="slowmist-2069">[https://hacked.slowmist.io/en/ SlowMist Hacked - SlowMist Zone] (Jun 26, 2021)</ref>
<ref name="futureswap-7083">[https://www.futureswap.com/ Futureswap Homepage] (Mar 12, 2022)</ref>
<ref name="futureswapdocs-7084">[https://docs.futureswap.com/ Futureswap Docs - Futureswap Docs] (Mar 12, 2022)</ref>
<ref name="coinmarketcap-7085">https://coinmarketcap.com/currencies/futureswap/ (Mar 12, 2022)</ref>
<ref name="futureswapxtwitter-7086">[https://twitter.com/futureswapx/status/1491979618571591685 Future Swap - "Last night, an account with access to a reserve of ~300,000 FST for rewards (0.3% of the supply) was compromised. We took action to remove control of the compromised FST by migrating the FST contract on Arbitrum." - Twitter] (Mar 12, 2022)</ref>
<ref name="futureswapxtwitter-7087">[https://twitter.com/futureswapx/status/1491979627379642372 Future Swap - "The new Arbitrum FST contract is 0x90e81b81307ece4257c1bb74bea94f5232cece53. The old one (0x488cc08935458403a0458e45e20c0159c8ab2c92) is no longer valuable and should not be traded." - Twitter] (Mar 12, 2022)</ref>
<ref name="arbiscan-7088">[https://arbiscan.io/token/0x90e81b81307ece4257c1bb74bea94f5232cece53 Futureswap Token (FST) Token Tracker | Arbiscan] (Mar 12, 2022)</ref>
<ref name="arbiscan-7089">[https://arbiscan.io/address/0x488cc08935458403a0458e45e20c0159c8ab2c92 Futureswap Token Contract Address - Arbiscan] (Mar 12, 2022)</ref>
<ref name="coinmarketcap-7090">https://coinmarketcap.com/currencies/futureswap/historical-data/ (Mar 12, 2022)</ref>
<ref name="coingecko-7091">[https://www.coingecko.com/en/coins/futureswap Futureswap price, FST chart, and market cap | CoinGecko] (Mar 12, 2022)</ref>
<ref name="theblockcrypto-7092">[https://www.theblockcrypto.com/linked/120099/decentralized-exchange-futureswap-raises-12-million-from-ribbit-capital-and-others Decentralized exchange Futureswap raises $12 million] (Mar 12, 2022)</ref>
<ref name="insuraceblog-7013">https://blog.insurace.io/security-incidents-in-february-9ba66f4bd0a3 (Mar 10, 2022)</ref>
</references>

Latest revision as of 12:09, 13 July 2023

Notice: This page is a new case study and some aspects have not been fully researched. Some sections may be incomplete or reflect inaccuracies present in initial sources. Please check the References at the bottom for further information and perform your own additional assessment. Please feel free to contribute by adding any missing information or sources you come across. If you are new here, please read General Tutorial on Wikis or Anatomy of a Case Study for help getting started.

Notice: This page contains sources which are not attributed to any text. The unattributed sources follow the initial description. Please assist by visiting each source, reviewing the content, and placing that reference next to any text it can be used to support. Feel free to add any information that you come across which isn't present already. Sources which don't contain any relevant information can be removed. Broken links can be replaced with versions from the Internet Archive. See General Tutorial on Wikis, Anatomy of a Case Study, and/or Citing Your Sources Guide for additional information. Thanks for your help!

FutureSwap

FutureSwap is a decentralized exchange that operates on Arbitrum, a layer 2 solution to scale ethereum. One of the users who held over 300,000 FST (valued ~$798k USD) suffered an account breach and their funds were stolen. Details of the specific breach method were not located. The protocol apparently paused the smart contract, bringing their system offline for 24-48 hours, in order to restore the funds.

This is a global/international case not involving a specific country. [1][2]

About FutureSwap

[3][4][5][6][7][8][9][10]

"The Future of Perpetuals Is Here. Leverage on any tokens with a protocol trusted with billions for its price execution, super low fees and reliability." "Take full control of your crypto. Built on Ethereum, our non-custodial perpetuals exchange focuses on one thing: being the best execution environment for trades."

"Futureswap is a decentralized non-custodial perpetual protocol where users can gain leveraged exposure on assets. Liquidity providers (LPs) deposit liquidity in order to earn passive income from trading fees and FST incentives. This liquidity is utilized by the Futureswap protocol and other automated market makers (AMMs) under the hood to create leveraged exposure. Realistically, Futureswap operates as a lending protocol as no leverage contracts are being created but only LPs lending funds while holding collateral."

"Take full advantage of everything Layer 2 has to offer. Say goodbye to eye-watering gas fees. Get your money in an instant with superfast withdrawals. Stay completely secure with optimistic rollups. Execute your trades instantly. Trade from any device. Gain leveraged exposure on limitless assets."

"We have all been in this industry too long not to make the security of your funds our absolute top priority. That’s why, so far, we’ve spent upwards of $450k on audits from Open Zeppelin and Trail of Bits, as well as code reviews from white hats."

The Reality

TBD

What Happened

"The credentials for [a FutureSwap] account were compromised by human error, and the attacker was able to gain access on Arbitrum and transfer the available reward FST to himself."

Key Event Timeline - FutureSwap Credential Disclosure
Date Event Description
February 10th, 2022 8:37:00 PM MST Post On Twitter Future Swap posts on Twitter about the incident[11].

Technical Analysis

[10][12]

"The credentials for [a FutureSwap] account were compromised by human error, and the attacker was able to gain access on Arbitrum and transfer the available reward FST to himself."

Total Amount Lost

The total amount lost has been estimated at $798,000 USD.[5][7]

Immediate Reactions

Twitter Post About Breach

Future Swap shared about the incident on Twitter and announced their plans to migrate the contract[11][12].

1/ Last night, an account with access to a reserve of ~300,000 FST for rewards (0.3% of the supply) was compromised. We took action to remove control of the compromised FST by migrating the FST contract on Arbitrum.

2/ The credentials for this account were compromised due to human error. The attacker was able to gain access and transfer the available rewards FST to themselves on Arbitrum.

3/ Mainnet FST is unaffected. Arbitrum FST has been redeployed to the state before the withdrawal using a new contract. The FST Arbitrum bridge is currently disabled, and we plan to restore it within 24 to 48 hours.

4/ The new Arbitrum FST contract is https://arbiscan.io/token/0x90e81b81307ece4257c1bb74bea94f5232cece53…. The old one (0x488cc08935458403a0458e45e20c0159c8ab2c92) is no longer valuable and should not be traded.

5/ Trust and security are always our top priority. Our contracts are heavily audited and we are always improving our internal processes. Though the surface area of this attack was small, it’s a reminder that we can never be too careful.


"Decentralized derivatives trading platform FutureSwap tweeted that an account with around 300,000 FST reward reserves (0.3% of supply) was compromised yesterday." "Last night, an account with access to a reserve of ~300,000 FST for rewards (0.3% of the supply) was compromised."

"We took action to remove control of the compromised FST by migrating the FST contract on Arbitrum." "Mainnet FST is unaffected. Arbitrum FST has been redeployed to the state before the withdrawal using a new contract." "Currently Arbitrum FST has used the new contract to take control of the compromised FST, the FST Arbitrum bridge is currently disabled and is scheduled to be restored within 24 to 48 hours."

Ultimate Outcome

Switching To A New Smart Contract

[12]


"The new Arbitrum FST contract [has been deployed]. The old one is no longer valuable and should not be traded."

Total Amount Recovered

The total amount recovered has been estimated at $798,000 USD.

Ongoing Developments

TBD

Individual Prevention Policies

The loss could have been prevented through better safeguarding of the private key.

Preventing Loss Of Funds

Users have a responsibility to safeguard their private key and avoid compromise through not sharing their seed phrase, exercising diligence for all transactions, and use a controlled secure environment to access cryptocurrency.

Private keys can be obtained through seed phrases, mnemonics, private key files, mobile synchronization screens, wallet export features, wallet backups, etc... Never ever send these to anyone else who you do not intend to allow to take all of your money. Attackers will use a wide variety of tactics to convince you like pretending to be your wallet software, pretending they work for the wallet software, or asking you to screen share. Don't fall for them.

Every approval on Web3 is an opportunity to lose all of the funds present in your wallet. Take the time to review the transaction in full. Fully check over the balance, permissions, and entire address which you are interacting with. Do not trust that your clipboard or any website front-end is guaranteed to provide an accurate address or transaction status. Always perform a test transaction prior to the first high-value transaction in any session.

Any time untrusted software is being run is an opportunity for abuse. It is recommended to always interact with cryptocurrency in a fully controlled environment, which is an environment where you have understanding of every piece of software running there. Using a hardware wallet, spare computer with all software wiped, and/or virtual machine with only the needed software greatly reduces your attack surface. Take the time to verify downloaded files come from the correct and expected source and match available hashes if provided. Any time you encounter a new file, always check if it can contain executable code prior to using it.

Safety With Smart Contracts

No other funds were reported lost in this case, however access to funds stored on the smart contract was restricted during the failure period.

Avoid the use of smart contracts unless necessary. Minimize the level of exposure by removing or withdrawing assets whenever possible. Aim to choose smart contracts which have obtained third party security audits, preferably having been audited by at least three separate reputable firms. Pay attention to the audit reports, which smart contracts are covered, and whether the smart contract has been upgraded or modified since the report. Ensure that any administrative functions with the ability to remove funds from the smart contract are under the authority of a multi-signature wallet which is controlled by at least three separate and reputable entities.

Store the majority of funds offline. By offline, it means that the private key and/or seed phrase is exclusively held by you and not connected to any networked device. Examples of offline storage include paper wallets (seed phrase or key written down and deleted from all electronic media), hardware wallets, steel wallet devices, etc...

For the full list of how to protect your funds as an individual, check our Prevention Policies for Individuals guide.

Platform Prevention Policies

This situation could be avoided by providing additional education for users to help improve their security.

Never take for granted the limited knowledge of users of your service and their tendency to skip past provided information. It is recommended to design a simple tutorial and quiz for new users which explains the basics of seed phrases, strong password generation, secure two-factor authentication, common fraud schemes, how ponzi schemes work, as well as other risks which are unique to the cryptocurrency space. This tutorial and quiz should ensure their understanding and be a standard part of the sign-up or download process which is difficult or impossible to skip.

An industry insurance fund could assist users affected by account breaches.

Work with other industry platforms to set up a multi-signature wallet with private keys held separately by delegate signatories from seven prominent platforms and services within the industry. Establish requirements for contributions by all platforms and services, designed to be affordable for small platforms yet large enough to cover anticipated breach events. Any breach event can be brought forth by a member platform or a petition of 100 signatures for consideration by the delegate signatories. A vote of 4 or more delegate signatures is required to release any funds, which could partially or fully restore lost funds based on their assessment.

For the full list of how to protect your funds as a financial service, check our Prevention Policies for Platforms guide.

Regulatory Prevention Policies

This situation could be avoided by providing additional education for users to help improve their security.

Create a standard tutorial and quiz for all new cryptocurrency participants, which is required to be completed once per participant. This tutorial and quiz should cover the basics of proper seed phrase protection, strong password generation, secure two-factor authentication, common fraud schemes, how to detect and guard against phishing attacks, how ponzi schemes work, as well as other risks which are unique to the cryptocurrency space.

An industry insurance fund could assist users affected by account breaches.

Set up a multi-signature wallet with private keys held separately by delegate signatories from seven prominent platforms and services within the industry. Establish requirements for contributions by all platforms and services within the country, designed to be affordable for small platforms yet large enough to cover anticipated breach events. Any breach event can be brought forth by a member platform or a petition of 100 signatures for consideration by the delegate signatories. A vote of 4 or more delegate signatures is required to release any funds, which could partially or fully restore lost funds based on their assessment.

For the full list of regulatory policies that can prevent loss, check our Prevention Policies for Regulators guide.

References