Resources

People often ask me "How did you learn how to hack?" The answer: by reading. This page is a collection of the blog posts and other articles that I have accumulated over the years of my journey. Enjoy!

Price calculation can be manipulated by intentionally reverting some of price feeds- 1344

KupiaSecPosted 2 Years Ago
  • Within the Olympus ecosystem, they have three different price feeds that can be used. If one of them reverts, then it simply uses the other ones. So, what could possibly go wrong?
  • The key to the issue is reverting. What if we could force a price feed to fail? If that was so, then we could use a price oracle that had a good price and make it more centralized for ourselves. Selective failures can be real bad in blockchain for gaming the system.
  • Uniswap and Balancer both have reentrancy checks. So, if an attacker called Olympus while in a callback from both Uniswap and Balancer then the price feeds would fail. Bunni uses Uniswap under the hood for some things. So, if this functionality is deliberately triggered then it's possible to force a revert here as well.
  • Overall, a super interesting bug that has a VERY long chain of questions being asked. I really enjoyed the bug, since it really thinks outside the box and requires a deep understand of the protocols being interacted with. At the end, they ranked this as a medium, which is fair since Chainlink could not be manipulated this way.