Payouts
1st Places
Top 10
Top 25
All
Sherlock
Code4rena
CodeHawks
Immunefi
Apr '25
Mar '25
Feb '25
Jan '25
medium
The attacker can steal rewards from AutoCompoundingPodLP because in _processRewardsToPodLp, the rewards from TokenRewards are not distributed
medium
Attacker can steal rewards in AutoCompoundingPodLp because he can revert the compounding with slippage
medium
The attacker can steal rewards from spTKNs because they can influence the fee processing by making a direct token transfer to the pod when the fees are below the minimum
medium
Pods with `hasTransferTax` set to `true` have an incorrect `totalSupply` because the burn fee is applied recursively to itself
medium
Swapping in _acquireBorrowTokenForRepayment is not working when the sell fee is enabled because the swap does not support fee-on-transfer tokens
medium
Transferring of _userProvidedDebtAmtMax does not work in _acquireBorrowTokenForRepayment because _props.sender is never set, which leads to a transferFrom call from address(0), causing the transaction to revert
high
`transferReserveToAuction` uses the wrong period, which is why `endAuction` will always fail, and the bidders' bids will be locked
high
An attacker can get many shares with a flashloan within one transaction and thus receive a lot of rewards and cause auctions to fail without having to permanently deposit reserve tokens.
medium
There are shares in a period with failed auctions, which leads to some users receiving rewards from other users from successful periods
Dec '24
Aug '24
high
high
Jun '24
high
high
medium
low
low
Apr '24
high
Design flaw and mismanagement in vault licensing leads to double counting in collateral ratios and positions collateralized entirely with kerosine
high
Users can get their Kerosene stuck until TVL becomes greater than Dyad's supply
high
User can get their Kerosene stuck because of an invalid check on withdraw
high
Unable to withdraw Kerosene from `vaultmanagerv2::withdraw` as it expects a `vault.oracle()` method which is missing in Kerosene vaults
high
Attacker Can Frontruns User's Withdrawals To Make Them Reverts Without Costs
medium
Incorrect deployment / missing contract will break functionality
Mar '24
Feb '24
Dec '23
high
The userGaugeProfitIndex is not set correctly, allowing an attacker to receive rewards without waiting
high
Users staking via the `SurplusGuildMinter` can be immediately slashed when staking into a gauge that had previously incurred a loss
medium
Wrong ProfitManager in GuildToken, will always revert for other types of gauges leading to bad debt
medium
`totalBorrowedCredit` can revert, breaking gauges.
medium
Incorrect calculations in debtCeiling
medium
LendingTerm::debtCeiling() can return wrong debt as the min() is evaluated incorrectly
Nov '23
Oct '23
Sep '23
Aug '23
Jul '23
24.83 USDC • 5 total findings • CodeHawks • schnilch
#59
medium
Anyone can burn **DecentralizedStableCoin** tokens with `burnFrom` function
low
Lack of events for critical actions
gas
`++i`/`i++` should be `unchecked{++i}`/`unchecked{i++}` when it is not possible for them to overflow, as is the case when used in `for`- and `while`-loops
gas
Spelling errors
gas
Prefer array assignment over pushing elements in for-loops