2710 matches found
No guarantee sale organizer will fulfil their end of the deal
Lines of code Vulnerability details Impact Sale participants will only be able to claim their CTDL tokens once the sale is finalized. However, there is no guarantee that it ever will be, because: Sale finalisation can only be performed by the owner The owner is able to change the sale parameters...
Checks missing while adding rewards
Handle csanuragjain Vulnerability details Impact Reward amount higher than contract reward balance can bring instability in the contract Proof of Concept 1. In FarmingPools.sol contract check notifyRewardAmounts function 2. Observe there is no check to see if added reward is higher than contract...
Lack of access control in the parameterize function of proposal contracts
Handle shw Vulnerability details Impact Most of the proposal contracts have a parameterize function for setting the proposal parameters, and these functions are protected only by the notCurrent modifier. When the proposal is proposed through a lodgeProposal transaction, an attacker can front-run...
Use of deprecated Chainlink API
Handle defsec Vulnerability details Impact The contract uses Chainlink’s deprecated API latestAnswer. Such functions might suddenly stop working if Chainlink stopped supporting deprecated APIs. Impact: Deprecated API stops working. Prices cannot be obtained. Protocol stops and contracts have to b...
_mintFromAssets: no slippage check
Handle cmichel Vulnerability details The sNOTE.mintFromAssets function uses tokens to provide single-sided liquidity. In Balancer this is basically a combination of a swap to balanced amounts followed by providing balanced liquidity. Note that no slippage checks are used as mintOutputAmount is se...
MAX_SHORTFALL_WITHDRAW limit on BTP extraction is not enforced
Handle gellej Vulnerability details Impact The function extractTokensForCollateralShortfall allows the owner of the sNote contract to withdraw up to 50% of the total amount of BPT. Presumably, this 50% limit is in place to prevent the owner from "rug-pulling" the sNote holders or at least to give...
Drain of funds by reentrancy in OpenLevV1.addMarket
Handle 0x1f8b Vulnerability details Impact It's possible to create a market, create trades, create a new market with different values, and preserve the previous trades pointing to the new tokens. Proof of Concept The method addMarket inside the contract OpenLevV1Lib increase the marketId numPairs...
All the scxMinted is at risk of being burnt.(Limbo.sol)
Handle Hawkeye Vulnerability details Impact If one of the variables that calculate adjustedRectangle is a zero value,it will impair the calculation of excessSCX which would equal to all of the scxMinted on line 219.Nothing will be deducted from scxMinted on line 229 since adjustedRectangle =0...
makeProposal can be front run with an arbitrary proposal modifications, enabling griefing attack
Handle hyh Vulnerability details Impact Griefing attack is possible for makeProposal as proposal details can be modified by anyone. Proposal setters have no access controls, requiring only that proposal be not current, so when makeProposal is executed after the preparation phase an attacker can...
Burning a User's Tokens for a Flash Proposal will not Deduct Their Balance
Handle kirk-baird Vulnerability details Impact The proposal to burn a user's tokens for a flash governance proposal does not result in the user losing any funds and may in fact unlock their funds sooner. Proof of Concept The function burnFlashGovernanceAsset will simply overwrite the user's state...
Use of deprecated Chainlink latestAnswer()
Handle sirhashalot Vulnerability details Impact Chainlink's documentation listed the latestAnswer function as deprecated. This function doesn't revert if no answer is available but returns 0, and the return value of latestanswer is not checked in the Notional code. In fact, Chainlink removed thei...
You can flip governance decisions without extending vote duration
Handle camden Vulnerability details Impact The impact here is that a user can, right at the end of the voting period, flip the decision without triggering the logic to extend the vote duration. The user doesn't even have to be very sophisticated: they can just send one vote in one transaction to ...
unwrap() can be called by anybody leading to loss of funds.
Handle GeekyLumberjack Vulnerability details Impact The caller of unwrap would receive all of the unwrapped convex tokens. Potentially depriving the user of all collateral and any rewards. Proof of Concept This portion of the readme describes the process that leads to the vulnerability. To repay ...
Malicious Users Can Transfer Vault Collateral To Other Accounts To Extract Additional Yield From The Protocol
Handle leastwood Vulnerability details Impact ConvexYieldWrapper.sol is a wrapper contract for staking convex tokens on the user's behalf, allowing them to earn rewards on their deposit. Users will interact with the Ladle.sol contract's batch function which: Approves Ladle to move the tokens...
Miscalculation of rewards due to removal of vaults
Handle hack3r-0m Vulnerability details Location: getDepositedBalance gives balance of account + collateralbalance of all vaults if a malicious party removes the vault of the usersince anyone can add/remove vaults of anyone if they are present in the cauldron before some critical action involving ...
Chainlink oracle query in _validateOrder does not check that response is fresh
Handle TomFrenchBlockchain Vulnerability details Impact Potential for TreasuryManager to use a stale price to calculate the slippage limit, allowing unacceptable slippage relative to if the price feed was current. Proof of Concept EIP1271Wallet queries Chainlink for the most recent price for...
OpenLevV1Lib's and LPool's doTransferOut functions call native payable.transfer, which can be unusable for smart contract calls
Handle hyh Vulnerability details Impact When OpenLev operations use a wrapped native token, the whole user withdraw is being handled with a payable.transfer call. This is unsafe as transfer has hard coded gas budget and can fail when the user is a smart contract. This way any programmatical usage...
The wrap and unwrap functions lack access control, allowing anyone to consume the convexToken in the contract
Handle cccz Vulnerability details Impact In the wrap and unwrap functions of the ConvexYieldWrapper contract, due to the lack of access control, anyone can consume the convexToken in the contract function wrapaddress to, address from external require!isShutdown, "shutdown"; uint256 amount =...
transferFrom can return false, and didnt revert
Handle Tomio Vulnerability details Impact in the the user can create launchevent, and providing token to the launchevent contract, however, some token may behave differently when handling a failed transfer and transferFrom, some token may handle failed transfer and transferFrom by returning a fal...
Unchecked transfers may lead to funds lost.
Handle bobi Vulnerability details Impact There are some transferFrom and transfer calls without checking the resultseg. against reverting. Moreover, for certain ERC20 tokens, should insufficient tokens be present, no revert occurs whatsoever, and instead, a "false" value is returned, which should...