De recente @ResupplyFi hack toont aan hoe een eenvoudige gehele deling kan leiden tot catastrofale manipulatie van de vault. Een exploit van $9,56 miljoen uitgevoerd binnen enkele uren na implementatie. Laten we deze kritieke ERC4626 kwetsbaarheid ontleden ↓
2/ Aanvalsvector: ERC4626 "eerste donatie" manipulatie: • Lege vault bij implementatie • Aanvaller stort 1 wei • Maakt grote activa-donatie • Aandeelprijs inflateert astronomisch • De wisselkoersberekening van het protocol faalt
3/ De kwetsbaarheid in één regel: _exchangeRate = 1e36 / IOracle(_exchangeRateInfo.oracle).getPrices(address(collateral)); Gehele deling zonder afrondingsbescherming → wisselkoers rondt af naar nul wanneer de oracle-prijs te hoog is.
4/ De exploitketen: 1. Stort 1 wei in een lege kluis 2. Doneer om de aandelenprijs te verhogen 3. Oracle rapporteert de verhoogde prijs 4. Wisselkoers = 0 door deling 5. LTV-controle: 0 <= maxLTV (altijd waar!) 6. Onbeperkt lenen ontgrendeld
5/ Preventie is eenvoudig: _exchangeRate = 1e36 / prijs; vereisen(_exchangeRate 0, "Ongeldige koers"); Ook: • Handhaaf minimale stortingen • Voeg controle op aandelenverhouding toe • Houd de liquiditeit van de vault in de gaten
6/ Belangrijke les: ERC4626-kluizen hebben extra bescherming nodig bij de implementatie. Het "eerste deposant" probleem is niet nieuw, maar ResupplyFi laat zien hoe het kan leiden tot een kritieke kwetsbaarheid. Lees de volledige technische analyse op onze blog:
3,72K