Ribbon Finance Malicious DNS Hijack: Difference between revisions
No edit summary |
No edit summary |
||
| Line 152: | Line 152: | ||
<ref name="ribbonfinanceopenzeppelin-4149">[https://blog.openzeppelin.com/ribbon-finance-audit/ Ribbon Finance Audit - OpenZeppelin blog] (Dec 4, 2021)</ref> | <ref name="ribbonfinanceopenzeppelin-4149">[https://blog.openzeppelin.com/ribbon-finance-audit/ Ribbon Finance Audit - OpenZeppelin blog] (Dec 4, 2021)</ref> | ||
<ref name="cloudflarewhatisdns-10527">[https://www.cloudflare.com/learning/dns/what-is-dns/ | <ref name="cloudflarewhatisdns-10527">[https://www.cloudflare.com/learning/dns/what-is-dns/ What is DNS? | How DNS works | Cloudflare] (Feb 9, 2023)</ref> | ||
<ref name="alexintoshtwitter-8874">[https://twitter.com/Alexintosh/status/1540047636467748870 @Alexintosh Twitter] (Aug 23, 2022)</ref> | <ref name="alexintoshtwitter-8874">[https://twitter.com/Alexintosh/status/1540047636467748870 @Alexintosh Twitter] (Aug 23, 2022)</ref> | ||
Revision as of 20:30, 25 February 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.
About Ribbon Finance
Ribbon Finance describes themselves as a yield earning protocol[1].
"SUSTAINABLE ALPHA FOR EVERYONE" "Earn yield on your cryptoassets with DeFi's first structured products protocol." "Ribbon Finance is a new protocol that helps users access crypto structured products for DeFi. It combines options, futures, and fixed income to improve a portfolio's risk-return profile."
Ribbon Finance's Theta Vault product is a strategy focused around yield between ETH (ethereum) and WBTC (wrapped bitcoin)[2][3]. It has been extensively audited[4]. Audits were found provided by Quantstamp[5], ChainSafe (2 audits)[6], Peckshield[7], and OpenZeppelin[8], and the service has an active bug bounty program on ImmuneFi[9] which pays rewards of up to $250,000 USD[2]. Despite all this, the protocol still advises users to exercise caution and not risk funds they are not willing to lose.[10]
"Theta Vault, which is a yield-focused strategy on ETH and WBTC. The vault earns yield on its deposits by running a weekly automated options selling strategy. The vault reinvests the yield earned back into the strategy, effectively compounding the yields for depositors over time." "Ribbon's v1 and v2 Theta Vault contracts are audited. Despite the audits and security measures we have taken, we advice users to exercise caution and to not risk funds they are not willing to lose."
The Reality
While the smart contract operates in a decentralized manner, most users will tend to interact with the contracts using transactions generated by a centralized website. When a domain name is accessed on the internet, a service called DNS is used to point the domain name to an IP address[11].
The Ribbon Finance project used NameCheap for their registrar for their primary website[12]. The procedures at NameCheap were such that support team members were able to override the DNS of the website to point the domain name to a malicious server[13][14][15].
What Happened
The account of a customer support agent for NameCheap was reportedly hacked[16].
This allowed the attacker to modify the DNS settings for multiple high profile decentralized protocols with domain names registered there, including Convex Finance, Ribbon Finance, Defi Saver, and AllBridge[17]. The attacker was able to override any 2-factor authentication, passwords, and security alert settings.
The issue was quickly corrected by the Ribbon Finance team, but not before 2 users were affected[18].
| Date | Event | Description |
|---|---|---|
| March 22nd, 2022 | Domain Vault Announced | The first archived appearance of the "Domain Vault" service on NameCheap which costs $19.88/mo and is still "coming soon"[19]. |
| June 20th, 2022 3:05:42 AM | First Malicious Contract | The very first smart contract is created by a wallet controlled from the attacker[20]. |
| June 20th, 2022 | Domain Vault Launches | The NameCheap "Domain Vault" service now switches from "Get early access" to "Get Domain Vault" with the price remaining at $19.88/mo[21][22]. |
| June 23rd, 2022 6:17:41 AM | Final Malicious Contract | The final malicious smart contract is created by the attacker[23]. |
| June 23rd, 2022 1:02:00 PM | Alexintosh Convex Finance Tweet | The Twitter user @alexintosh reported an abnormal approval requested by the similarly affected Convex Finance website, with a similar but not exact smart contract address[24][25][26]. |
| June 23rd, 2022 2:23:00 PM | Please Review Approvals | Convex Finance posts their very first announcement on Twitter, requesting users to "[p]lease review approvals while we evaluate a potential front end issue[27]." |
| June 23rd, 2022 3:46:00 PM | Additional Malicious Contracts | Twitter user @HarukoTech describes several malicious contracts which were created against different protocols and that "[t]he attacker seems to be generating similar addresses to well know[n] protocols"[28]. |
| June 23rd, 2022 3:54:00 PM | Bret Woods Suggestion | Twitter user Bret Woods (@fewture) posts that "[w]e're seeing hackers create addresses that match the first 4 and last 4 characters". His suggestion is to run the same transaction with "the gas SUPER LOW. Like 5 gwei. Your transaction won't go through, but it will populate on @etherscan where it is much easier to click through and make sure it's doing what you intended to do"[29]. |
| June 23rd, 2022 4:46:00 PM | Convex Finance DNS Hijack Post | Similarly affected Convex Finance first posts on Twitter to announce the DNS hijacking. They list 5 addresses which are affected, that investigation is still ongoing, and that the issue is "remediated" for their service[30][31]. |
| June 23rd, 2022 9:57:59 PM | Massive WBTC Theft | A total of 16.50942255 WBTC are transferred from one user and victim of the DNS exploit to the attacker[32]. |
| June 24th, 2022 2:29:00 AM | Immediate Remediation | Ribbon Finance posts on Twitter that they have "immediately remedied the issue"[18]. |
| June 24th, 2022 4:10:00 AM | MistTrack Analysis | MistTrack is one of the first firms to report on the issue, providing a blockchain transaction for 16.5 WBTC (wrapped bitcoin)[33]. |
| June 24th, 2022 10:01:00 AM | NameCheap Response | NameCheap's CEO responds on Twitter that they've "traced this down to a specific [customer support] agent that was either hacked or compromised somehow and have removed all access from this agent. This affected a few targeted domains but we will continue investigating."[34] |
| June 24th, 2022 10:03:00 AM | Free DomainVault Monitoring | NameCheap's CEO expands the original tweet to say that they "would like to offer [affected services their] Domain Vault service for free and [they] will also place all affected domains on the highest security monitoring"[35]. |
| June 24th, 2022 11:21:00 AM | NameCheap DomainVault | "Usually we require a pin code from customer. We also monitor all actions as well a monitor a real time vip list. In the end our [customer support] needs to be able to modify to help customers especially when 99% don't understand [DNS]. If you want complete security use [DomainVault]"[36] |
| June 24th, 2022 4:16:00 PM | NameCheap Clarifies Hack | NameCheap responds that it "[l]ooks more like [their customer support] person was hacked."[16] |
| June 25th, 2022 | Domain Vault Discount | NameCheap lowers the price of their Domain Vault service from $19.88/mo[37] to $1.88/mo[38]. |
| July 1st, 2022 10:14:00 AM | Postmortem Released | Convex Finance releases a post-mortem report with further details of what happened, how much was lost, and their compensation plans[39][12]. |
| July 2nd, 2022 | Price Segmentation | NameCheap decides to offer two different Domain Vault services from "Silver" tier at $1.88/mo[40] to "Titanium" tier at $19.88/mo[41]. |
Total Amount Lost
Ribbon Finance reports that at least 2 users were affected by the incident[18].
MistTrack reports one of the users lost 16.5 WBTC[33]. Blockchain analysis shows that the exact amount was 16.50942255 WBTC[32]. The closing market price of wrapped bitcoin on June 23rd, 2022 was $21,057.95 USD[42]. This creates a loss estimate of $347,654.59 USD.
How much was lost and how was it calculated? If there are conflicting reports, which are accurate and where does the discrepancy lie?
Immediate Reactions
Ribbon Finance reported an "immediate remedy" on their Twitter shortly after the DNS issue was initially reported[18].
We are aware of a DNS attack on http://app.ribbon.finance and have immediately remedied the issue.
The takeover prompted 2 users to approve malicious contracts for vault deposits.
All funds on the vault contract are unaffected.
MistTrack was one of the first to respond to the situation, highlighting a transaction for the theft of 16.5 WBTC[33].
On-chain analysis showed that it was the same attacker as Convex. One victim lost 16.5 WBTC.
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?
Ultimate Outcome
The NameCheap CEO ultimately responded on Twitter to explain that there was a hacked or compromised customer support agent and all access was removed from them[34]. He also offered completely free Domain Vault monitoring to all affected services[43].
"We've traced this down to a specific [customer support] agent that was either hacked or compromised somehow and have removed all access from this agent. This affected a few targeted domains but we will continue investigating." "In the meantime we would like to offer you our Domain Vault service for free and we will also place all affected domains on the highest security monitoring."
What was the end result? Was any investigation done? Were any individuals prosecuted? Was there a lawsuit? Was any tracing done?
Total Amount Recovered
The total amount recovered is unknown.
What funds were recovered? What funds were reimbursed for those affected users?
Ongoing Developments
What parts of this case are still remaining to be concluded?
Prevention Policies
The issue ultimately stemmed from a single customer support agent being compromised. A multi-signature requirement on DNS changes would have prevented this scenario entirely.
While NameCheap offers advanced protections on their domain names, this service had just launched two days prior to the DNS change, so it was unlikely to be a reasonable expectation that Convex Finance would have already signed up.
Users of platforms need to be careful and double check any new approval requested by any platform against the proper smart contract address. It is recommended to double check any new smart contract addresses being interacted with.
References
- ↑ Ribbon Finance: Crypto structured products on Ethereum (Oct 12, 2021)
- ↑ 2.0 2.1 Ribbon Finance Bug Bounties on ImmuneFi (Feb 25, 2023)
- ↑ Introduction to Ribbon - Ribbon Finance (Dec 4, 2021)
- ↑ audit/RibbonThetaVault V2 Smart Contract Review And Verification.pdf at master · ribbon-finance/audit · GitHub (Dec 4, 2021)
- ↑ audit/Quantstamp Theta Vault.pdf at master · ribbon-finance/audit · GitHub (Dec 4, 2021)
- ↑ audits/Ribbon-Audit_April-2021.pdf at main · ChainSafe/audits · GitHub (Dec 4, 2021)
- ↑ audit/PeckShield-Audit-Report-Ribbon-v1.0.pdf at master · ribbon-finance/audit · GitHub (Dec 4, 2021)
- ↑ Ribbon Finance Audit - OpenZeppelin blog (Dec 4, 2021)
- ↑ Ribbon Finance ImmuneFi Bug Bounty - Coin World Story (Feb 25, 2023)
- ↑ Security - Ribbon Finance (Dec 4, 2021)
- ↑ What is DNS? | How DNS works | Cloudflare (Feb 9, 2023)
- ↑ 12.0 12.1 Post Mortem Of Events June 23 (Aug 24, 2022)
- ↑ @ConvexFinance Twitter (Aug 24, 2022)
- ↑ @DevanCollins3 Twitter (Aug 24, 2022)
- ↑ @LefterisJP Twitter (Feb 10, 2023)
- ↑ 16.0 16.1 @NamecheapCEO Twitter (Feb 11, 2023)
- ↑ DeFi Dapps DNS Attacked - TrustNodes (Feb 25, 2024)
- ↑ 18.0 18.1 18.2 18.3 Ribbon Finance Reports Remedy - Twitter (Feb 22, 2023)
- ↑ Domain Vault Page on Mar 22nd, 2022 - Namecheap (Feb 9, 2023)
- ↑ First Smart Contract Creation - EtherScan (Feb 23, 2023)
- ↑ Domain Vault Page on June 19th, 2022 - Namecheap (Feb 12, 2023)
- ↑ Domain Vault Page on June 20th, 2022 - Namecheap (Feb 12, 2023)
- ↑ Final Malicious Contract Creation - EtherScan (Feb 23, 2023)
- ↑ @Alexintosh Twitter (Aug 23, 2022)
- ↑ Contract Addresses - ConvexFinance (Aug 24, 2022)
- ↑ https://en.cryptonomist.ch/2022/06/24/convex-more-info-on-the-hack/ (Jul 2, 2022)
- ↑ @ConvexFinance - "Please review approvals while we evaluate a potential front end issue." - Twitter (Aug 23, 2022)
- ↑ @HarukoTech Twitter (Aug 24, 2022)
- ↑ Bret Woods (@fewture) Guide - Twitter (Feb 22, 2023)
- ↑ @ConvexFinance Twitter (Aug 24, 2022)
- ↑ https://en.cryptonomist.ch/2022/06/24/convex-more-info-on-the-hack/ (Jul 2, 2022)
- ↑ 32.0 32.1 Theft Transaction For 16.5 WBTC - Etherscan (Feb 22, 2023)
- ↑ 33.0 33.1 33.2 MistTrack Transaction Analysis - Twitter (Feb 22, 2023)
- ↑ 34.0 34.1 @NamecheapCEO - "traced this down to a specific [customer support] agent that was either hacked or compromised" - Twitter (Aug 24, 2022)
- ↑ @NamecheapCEO - "we would like to offer you our Domain Vault service for free and we will also place all affected domains on the highest security monitoring" - Twitter (Feb 24, 2023)
- ↑ @NamecheapCEO "If you want complete security use [Domain Vault]" - Twitter (Aug 24, 2022)
- ↑ Domain Vault Page on June 24th, 2022 - Namecheap (Feb 13, 2023)
- ↑ Domain Vault Page on June 25th, 2022 - Namecheap (Feb 13, 2023)
- ↑ @ConvexFinance Twitter (Feb 18, 2023)
- ↑ Domain Vault Page on July 1st, 2022 - Namecheap (Feb 13, 2023)
- ↑ Domain Vault Page on July 2nd, 2022 - Namecheap (Feb 13, 2023)
- ↑ Wrapped Bitcoin Historic Prices - CoinMarketCap (Feb 22, 2023)
- ↑ @NamecheapCEO - "we would like to offer you our Domain Vault service for free and we will also place all affected domains on the highest security monitoring" - Twitter (Feb 24, 2023)