Headline: DeFi logic is only as good as its edge cases. ๐ก๏ธ I just published a post-mortem on a "design choice" in Aave V4 that turned into a $195M liquidation deadlock during the rsETH crash. The issue: Strict intermediate overflow checks in MathUtils.mulDivDown (src/spoke/libraries/LiquidationLogic.sol:329). The Reality: When a whale position (like Lazarus Group's rsETH dump) hits the liquidation threshold, the dynamic bonus calculation overflows and triggers a REVERT. A "safe" revert in theory = Unstoppable Bad Debt in practice. ๐ I reported this 2 months ago. It was dismissed as "intended design". Full PoC and write-up: ๐ [dev.to/rdin777/how-aave-v4s-design-choice-turned-into-a-195m-liquidation-deadlock-kelpdaorseth-case-57kk] ๐ [github.com/rdin777/aave-v4-post-mortem] cc @aave @stani.eth
- 0 replies
- 0 recasts
- 1 reaction
Just finished the Foundry Fundamentals course on @CyfrinUpdraft by @PatrickAlphaC! ๐ ๏ธ Deep dived into Forge, Anvil, and advanced smart contract testing. Ready to apply these skills in security research. Next stop: Security & Auditing! ๐ก๏ธ Check out my badge: https://profiles.cyfrin.io/u/rdin35051/achievements/foundry #Foundry #Solidity #Web3Security #CyfrinUpdraft
- 0 replies
- 0 recasts
- 1 reaction
Headline: Just "broke" my Starknet staking contract to learn a lesson. ๐ Iโve been deep-diving into Cairo math lately. Found (and proved) a classic Rounding Error vulnerability. The Bug: Division before Multiplication. In integer math, (a / b) * c is NOT the same as (a * c) / b. If total_supply is huge, rewards literally become zero. Every. Single. Time. The Fix: Always multiply before you divide to keep that precision alive. ๐ Wrote a full deep dive on DEV.to and pushed the PoC to GitHub. Check it out: https://dev.to/rdin777/how-i-broke-my-starknet-staking-contract-with-simple-math-a-lesson-on-rounding-errors-50ob CC: @starknet @starknet-foundry #starknet #cairo #security #build
- 0 replies
- 0 recasts
- 1 reaction