GithubHelp home page GithubHelp logo

2023-05-asymmetry-mitigation-contest's Introduction

Asymmetry - Mitigation Review contest details

Important note

Each warden must submit a mitigation review for every in-scope High and Medium finding from the parent contest. Incomplete mitigation reviews will not be eligible for awards.

Findings being mitigated

Mitigations of all High and Medium issues will be considered in-scope and listed here.

Overview of changes

Most of the mitigations I feel are self explanatory.

The one exception is H-04, I would like extra attention towards that one because we are assuming 1:1 but are reverting if the CRV pool is depegged. I think there could be a better solution, but it seems that we had many issues that had separate solutions, one being adding a chainlink oracle, which doesn't exist.

Mitigations to be reviewed

URL Mitigation of Purpose
https://github.com/asymmetryfinance/smart-contracts/pull/282/files H-01 Use internal accounting to get the balance
https://github.com/asymmetryfinance/smart-contracts/pull/209/files H-02 Don't get rETH from pool on deposits
https://github.com/asymmetryfinance/smart-contracts/pull/264/files H-03 Enable/Disable Derivatives
https://github.com/asymmetryfinance/smart-contracts/pull/262/files H-04 To protect against oracle attacks we assume FRX is 1:1 with ETH and revert if the oracle says otherwise since there is no chainlink for FRX
https://github.com/asymmetryfinance/smart-contracts/pull/209/files H-05 Using Chainlink to get price instead of poolPrice
https://github.com/asymmetryfinance/smart-contracts/pull/242/files H-06 Using Chainlink to get price instead of assuming 1:1
https://github.com/asymmetryfinance/smart-contracts/pull/258/files H-07 Check if withdraw from deposit contract possible
https://github.com/asymmetryfinance/smart-contracts/pull/209/files H-08 Using Chainlink to get price instead of poolPrice
https://github.com/asymmetryfinance/smart-contracts/pull/276/files M-01 Don't divide before multiply
https://github.com/asymmetryfinance/smart-contracts/pull/264/files M-02 Fixing it by enable/disable derivatives
https://github.com/asymmetryfinance/smart-contracts/pull/228/files M-04 Using swapTo/swapFrom directly from rocketpool
https://github.com/asymmetryfinance/smart-contracts/pull/264/files M-05 Fixing it by enable/disable derivatives
https://github.com/asymmetryfinance/smart-contracts/pull/209/files M-08 Use Chainlink to get rETH
https://github.com/asymmetryfinance/smart-contracts/pull/208/files M-10 Check derivativeCount on stake
asymmetryfinance/safeth#226 M-11 Use entire balance for rebalance
https://github.com/asymmetryfinance/smart-contracts/pull/252/files M-12 Pass in minAmount

Out of Scope

Reason Issue
We will be manually holding safETH to prevent this, if not redeploy M-03
This is as expected M-06
Will need a black swan event to happen and will upgrade rebalanceToWeights later to handle this M-07

2023-05-asymmetry-mitigation-contest's People

Contributors

paroxism avatar toshisat avatar itsmetechjay avatar

Watchers

Sean Luther avatar Ashok avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.