#hack #grim
30млн$ взлом Grim Finance на блокчейне Fantom через #reentrancy баг: https://ftmscan.com/tx/0x19315e5b150d0a83e797203bb9c957ec1fa8a6f404f4f761d970cb29a74a5dd6
Фунция depositFor(token, _amount, user) не была защищена от reentrancy.
В ней идет вызов к IERC20(token).safeTransferFrom(msg.sender, address(this), _amount)
Атакующий размещает ликвидность на SpiritSwap и получает LP-токены, вызывает depositFor(token=ATTACKER, user=ATTACKER), получает управление контракт ATTACKER, который вызывает depositFor() с теми же параметрами несколько раз, на последнем шаге вызывает depositFor(token=Spirit-LP, user=ATTACKER). За каждый шаг минтятся соответствующие LP-токены, в итоге их больше чем надо, в конце они выводятся и выводятся Spirit-LP токены и соответствующая ликвидность больше, чем должно
Post #54
1.71K