Nexus Mutual Fund Pool Vulnerable: Difference between revisions
(Created page with "{{Imported Case Study|source=https://www.quadrigainitiative.com/casestudy/nexusmutualfundpoolvulnerable.php}} thumb|Nexus MutualNexus Mutual initially launched with a critical vulnerability which put the funds at risk. This was resolved before it could be exploited. This is a global/international case not involving a specific country. == About Nexus Mutual == Nexus Mutual is "[a] people-powered alternative to insurance". "Nexus Mutual uses th...") |
No edit summary |
||
| (One intermediate revision by the same user not shown) | |||
| Line 1: | Line 1: | ||
{{Imported Case Study|source=https://www.quadrigainitiative.com/casestudy/nexusmutualfundpoolvulnerable.php}} | {{Imported Case Study 2|source=https://www.quadrigainitiative.com/casestudy/nexusmutualfundpoolvulnerable.php}} | ||
{{Unattributed Sources}} | |||
[[File:Nexusmutual.jpg|thumb|Nexus Mutual]]Nexus Mutual initially launched with a critical vulnerability which put the funds at risk. This was resolved before it could be exploited. | [[File:Nexusmutual.jpg|thumb|Nexus Mutual]]Nexus Mutual initially launched with a critical vulnerability which put the funds at risk. This was resolved before it could be exploited. | ||
This is a global/international case not involving a specific country. | This is a global/international case not involving a specific country.<ref name="example-715" /><ref name="openzeppelinforum-1155" /><ref name="nexusmutualmedium-1995" /><ref name="nexusmutual-1996" /><ref name="nexusmutual-1997" /><ref name="defirate-1998" /><ref name="nexusmutualtwitter-1999" /><ref name="samczsuntwitter-2000" /><ref name="coindesk-311" /><ref name="solidifiedplatformgithub-2001" /> | ||
== About Nexus Mutual == | == About Nexus Mutual == | ||
| Line 37: | Line 38: | ||
Don't Include: | Don't Include: | ||
* Any wording which directly states or implies that the business is/was illegitimate, or that a vulnerability existed. | * 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. | * Anything that wasn't reasonably knowable at the time of the event. | ||
| Line 58: | Line 58: | ||
!Description | !Description | ||
|- | |- | ||
|February 24th, 2020 | |February 24th, 2020 | ||
| | |Main Event | ||
| | |Expand this into a brief description of what happened and the impact. If multiple lines are necessary, add them here. | ||
|- | |- | ||
| | | | ||
| Line 70: | Line 66: | ||
| | | | ||
|} | |} | ||
== Technical Details == | |||
This section includes specific detailed technical analysis of any security breaches which happened. What specific software vulnerabilities contributed to the problem and how were they exploited? | |||
== Total Amount Lost == | == Total Amount Lost == | ||
No funds were lost. | |||
How much was lost and how was it calculated? If there are conflicting reports, which are accurate and where does the discrepancy lie? | How much was lost and how was it calculated? If there are conflicting reports, which are accurate and where does the discrepancy lie? | ||
| Line 83: | Line 82: | ||
== Total Amount Recovered == | == Total Amount Recovered == | ||
There do not appear to have been any funds recovered in this case. | |||
What funds were recovered? What funds were reimbursed for those affected users? | What funds were recovered? What funds were reimbursed for those affected users? | ||
| Line 89: | Line 88: | ||
== Ongoing Developments == | == Ongoing Developments == | ||
What parts of this case are still remaining to be concluded? | What parts of this case are still remaining to be concluded? | ||
== General Prevention Policies == | |||
No user funds were lost. | |||
== Individual Prevention Policies == | |||
{{Prevention:Individuals:Placeholder}} | |||
{{Prevention:Individuals:End}} | |||
== Platform Prevention Policies == | |||
{{Prevention:Platforms:Placeholder}} | |||
{{Prevention:Platforms:End}} | |||
== Prevention Policies == | == Regulatory Prevention Policies == | ||
{{Prevention:Regulators:Placeholder}} | |||
{{Prevention:Regulators:End}} | |||
== References == | == References == | ||
[https://example.com Example Domain] (Mar | <references><ref name="example-715">[https://example.com Example Domain] (Mar 23, 2021)</ref> | ||
[https://forum.openzeppelin.com/t/list-of-ethereum-smart-contracts-post-mortems/1191 List of Ethereum Smart Contracts Post-Mortems - Security - OpenZeppelin Community] (Jun | <ref name="openzeppelinforum-1155">[https://forum.openzeppelin.com/t/list-of-ethereum-smart-contracts-post-mortems/1191 List of Ethereum Smart Contracts Post-Mortems - Security - OpenZeppelin Community] (Jun 23, 2021)</ref> | ||
[https://medium.com/nexus-mutual/responsible-vulnerability-disclosure-ece3fe3bcefa Responsible Vulnerability Disclosure] (Jun | <ref name="nexusmutualmedium-1995">[https://medium.com/nexus-mutual/responsible-vulnerability-disclosure-ece3fe3bcefa Responsible Vulnerability Disclosure] (Jun 23, 2021)</ref> | ||
[https://nexusmutual.io/ Nexus Mutual | A decentralised alternative to insurance] (Jun | <ref name="nexusmutual-1996">[https://nexusmutual.io/ Nexus Mutual | A decentralised alternative to insurance] (Jun 25, 2021)</ref> | ||
[https://nexusmutual.io/assets/docs/nmx_white_paperv2_3.pdf Nexus Mutual Whitepaper] (Jun | <ref name="nexusmutual-1997">[https://nexusmutual.io/assets/docs/nmx_white_paperv2_3.pdf Nexus Mutual Whitepaper] (Jun 25, 2021)</ref> | ||
[https://defirate.com/nexus-mutual-security/ Nexus Mutual Discloses Security Vulnerabilities - Transparent DeFi Update] (Jun | <ref name="defirate-1998">[https://defirate.com/nexus-mutual-security/ Nexus Mutual Discloses Security Vulnerabilities - Transparent DeFi Update] (Jun 26, 2021)</ref> | ||
[https://twitter.com/NexusMutual/status/1232051358892789761 @NexusMutual Twitter] (Jun | <ref name="nexusmutualtwitter-1999">[https://twitter.com/NexusMutual/status/1232051358892789761 @NexusMutual Twitter] (Jun 26, 2021)</ref> | ||
[https://twitter.com/samczsun/status/1232050053067476993 @samczsun Twitter] (Jun | <ref name="samczsuntwitter-2000">[https://twitter.com/samczsun/status/1232050053067476993 @samczsun Twitter] (Jun 26, 2021)</ref> | ||
[https://www.coindesk.com/defi-insurance-firm-nexus-mutual-makes-its-first-payout-following-bzx-attacks DeFi Insurance Firm Nexus Mutual Makes Its First Payout Following bZx Attacks - CoinDesk] (Jun 21) | <ref name="coindesk-311">[https://www.coindesk.com/defi-insurance-firm-nexus-mutual-makes-its-first-payout-following-bzx-attacks DeFi Insurance Firm Nexus Mutual Makes Its First Payout Following bZx Attacks - CoinDesk] (Jun 21, 2020)</ref> | ||
[https://github.com/solidified-platform/audits/blob/master/Audit%20Report%20-%20Nexus%20Mutual%20%5B22.04.2019%5D.pdf <nowiki>audits/Audit Report - Nexus Mutual [22.04.2019].pdf at master · solidified-platform/audits · GitHub</nowiki>] (Jun | <ref name="solidifiedplatformgithub-2001">[https://github.com/solidified-platform/audits/blob/master/Audit%20Report%20-%20Nexus%20Mutual%20%5B22.04.2019%5D.pdf <nowiki>audits/Audit Report - Nexus Mutual [22.04.2019].pdf at master · solidified-platform/audits · GitHub</nowiki>] (Jun 26, 2021)</ref></references> | ||
Latest revision as of 13:30, 1 May 2023
Notice: This page is a freshly imported case study from the original repository. The original content was in a different format, and may not have relevant information for all sections. Please help restructure the content by moving information from the 'About' and 'General Prevention' sections to other sections, and add any missing information or sources you can find. 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!
Nexus Mutual initially launched with a critical vulnerability which put the funds at risk. This was resolved before it could be exploited.
This is a global/international case not involving a specific country.[1][2][3][4][5][6][7][8][9][10]
About Nexus Mutual
Nexus Mutual is "[a] people-powered alternative to insurance".
"Nexus Mutual uses the power of Ethereum so people can share risk together without the need for an insurance company." "Nexus Mutual is run entirely by its members. Only members can decide which claims are valid. All member decisions are recorded and enforced by smart contracts on the Ethereum public blockchain."
The fund claims it "will always put the security of our protocol and the safety of our members funds above anything else." "The Mutual’s code was audited by the Solidified team in April 2019 prior to its mainnet launch back in May."
"On February 20th, the core team received [a] report from renowned security researcher Samczsun outlining a vulnerability that could put a significant portion of the mutual’s funds at risk." "[T]he vulnerability allowed any third party to trigger a treasury rebalance at any point in time."
"The mutual’s funds are currently held entirely in DAI and ETH. Whenever a claim is accepted, the mutual must ensure enough funds in the corresponding asset are available to pay out the claimant. If the amount being paid exceeds a certain threshold, the protocol exchanges the required amount in several batches with a time delay in-between. With this, the system relied on Oraclize to trigger the rebalance via Uniswap."
"We do acknowledge that there have been warnings against using Uniswap in this way and it is known to be susceptible to this type of attack. The bZx hack should have been a huge red flag for us as well, but we were overwhelmed by our product being put to its first real test to successfully pay a claim."
"Within 4 hours of receiving the report, the Mutual kill switched the system’s interaction with Uniswap, disabling the ability to execute this exploit." "[I]f any [immediate] claims in Dai are to be paid, Nexus Mutual will raise governance proposals to transfer the required ETH to the advisory board multi-sig, exchange them for Dai, and pay the underlying claim. In the longer-term, Nexus Mutual is aiming to integrate with a manipulation-resistant DEX and are currently evaluation options."
"Samczsun will receive a $5,000 bounty for his disclosure. The threat matrix categorized the vulnerability as a high severity issue given its potential impact and medium likelihood of being executed." "With the recent disclosures, Nexus Mutual has decided to launch a bug bounty program in the near future." "We are working on comprehensive fixes that require contract upgrades and further security reviews."
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
This sections is included if a case involved deception or information that was unknown at the time. Examples include:
- 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
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.
| Date | Event | Description |
|---|---|---|
| February 24th, 2020 | Main Event | Expand this into a brief description of what happened and the impact. If multiple lines are necessary, add them here. |
Technical Details
This section includes specific detailed technical analysis of any security breaches which happened. What specific software vulnerabilities contributed to the problem and how were they exploited?
Total Amount Lost
No funds were lost.
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
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
What was the end result? Was any investigation done? Were any individuals prosecuted? Was there a lawsuit? Was any tracing done?
Total Amount Recovered
There do not appear to have been any funds recovered in this case.
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?
General Prevention Policies
No user funds were lost.
Individual Prevention Policies
No specific policies for individual prevention have yet been identified in this case.
For the full list of how to protect your funds as an individual, check our Prevention Policies for Individuals guide.
Platform Prevention Policies
Policies for platforms to take to prevent this situation have not yet been selected in this case.
For the full list of how to protect your funds as a financial service, check our Prevention Policies for Platforms guide.
Regulatory Prevention Policies
No specific regulatory policies have yet been identified in this case.
For the full list of regulatory policies that can prevent loss, check our Prevention Policies for Regulators guide.
References
- ↑ Example Domain (Mar 23, 2021)
- ↑ List of Ethereum Smart Contracts Post-Mortems - Security - OpenZeppelin Community (Jun 23, 2021)
- ↑ Responsible Vulnerability Disclosure (Jun 23, 2021)
- ↑ Nexus Mutual | A decentralised alternative to insurance (Jun 25, 2021)
- ↑ Nexus Mutual Whitepaper (Jun 25, 2021)
- ↑ Nexus Mutual Discloses Security Vulnerabilities - Transparent DeFi Update (Jun 26, 2021)
- ↑ @NexusMutual Twitter (Jun 26, 2021)
- ↑ @samczsun Twitter (Jun 26, 2021)
- ↑ DeFi Insurance Firm Nexus Mutual Makes Its First Payout Following bZx Attacks - CoinDesk (Jun 21, 2020)
- ↑ audits/Audit Report - Nexus Mutual [22.04.2019].pdf at master · solidified-platform/audits · GitHub (Jun 26, 2021)