Lucene search
+L
Code423n4Most viewed

10190 matches found

Code423n4
Code423n4
added 2021/06/05 12:00 a.m.16 views

Users can avoid paying borrowing interest after the fyToken matures

Handle shw Vulnerability details Impact According to the protocol design, users have to pay borrowing interest when repaying the debt with underlying tokens after maturity. However, a user can give his vault to Witch and then buy all his collateral using underlying tokens to avoid paying the...

6.8AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/26 12:00 a.m.16 views

Conviction totals not updated during tokenization

Handle 0xRajeev Vulnerability details Impact updateConvictionScore function returns convictionDelta and governanceDelta which need to be used immediately in a call to updateConvictionTotalsconvictionDelta, governanceDelta for updating the conviction totals of conviction and governance-enabled...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/26 12:00 a.m.16 views

Call to swapExactTokensForETH in liquidateDai() will always fail

Handle 0xRajeev Vulnerability details Impact liquidateDai calls Uniswap’s swapExactTokensForETH to swap Dai to ETH. This will work if msg.sender, i.e. FSD contract, has already given the router an allowance of at least amount on the input token Dai. Given that there is no prior approval, the call...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/26 12:00 a.m.16 views

_calculateDeltaOfFSD fails when called with negative _reserveDelta

Handle cmichel Vulnerability details Vulnerability Details When reserveDelta is negative in ABC.calculateDeltaOfFSD the following branch is executed: if reserveDelta 0 uint256 capitalPostWithdrawal = capitalPool.subuint256reserveDelta; The type cast to uint256 is purely a reinterpretation of the...

6.8AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/26 12:00 a.m.16 views

setConvictionless can be front-run to prevent conviction reset

Handle 0xRajeev Vulnerability details Impact The denylist convictionless is meant to deny conviction scores for certain users and is set by the privileged roles timelock/FSD-owner in setConvictionless. The documentation says: “adjust which addresses are meant to not accrue a conviction score. The...

6.8AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/26 12:00 a.m.16 views

ERC20ConvictionScore allows transfers to special TOTAL_GOVERNANCE_SCORE address

Handle cmichel Vulnerability details Vulnerability Details The credit score of the special addresstypeuint160.max is supposed to represent the sum of the credit scores of all users that are governors. But any user can directly transfer to this address increasing its balance and accumulating a...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/25 12:00 a.m.16 views

withdraw() does not decrease pendingWithdrawals

Handle pauliax Vulnerability details Impact contract Withdrawable function withdraw does not subtract from pendingWithdrawals thus it only increases and could make function getReserveBalance revert when the balance pendingWithdrawals. Recommended Mitigation Steps Add this line to withdraw:...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/20 12:00 a.m.16 views

Unbounded loop in function transferERC721

Handle shw Vulnerability details Impact The function transferERC721 loops over an unbounded array, timelockERC721KeysnftContract, whose length never decreases but increases whenever the owner locks an ERC721 token. Therefore, the required gas for executing this loop grows over time and could reac...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/20 12:00 a.m.16 views

Unchecked return value of transferFrom in function timeLockERC20

Handle shw Vulnerability details Impact In the function timeLockERC20 line 610, the return value of IERC20.transferFrom is unchecked. The return value could be false if the transferred token is not ERC20-compliant, indicating that the transfer fails. In that case, the variable timelockERC20Balanc...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/19 12:00 a.m.16 views

Unbounded iteration

Handle cmichel Vulnerability details Vulnerability Details The Visor.removeNft iterates over all nfts. Anyone can add to this array by depositing NFTs, see Visor.onERC721Received. Other occurences that makes an unbounded iteration over arrays: Visor.getBalanceLocked Visor.getNftIdByTokenIdAndAddr...

6.8AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/11 12:00 a.m.16 views

_sendForReceiver is vulnerable to reentrancy. This enables a receiver to drain the remaining fees to distribute.

Handle janbro Vulnerability details Summary sendForReceiver is vulnerable to reentrancy. This enables a receiver to drain the remaining fees to distribute. Risk Rating Critical Vulnerability Details NFTXFeeDistributor.sol Line 163: bool success, bytes memory returnData =...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/11 12:00 a.m.16 views

Missing nonReentrant in swapTo

Handle adelamo Vulnerability details Here you have more info: --- The text was updated successfully, but these errors were encountered: All reactions...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/11 12:00 a.m.16 views

Unbounded iteration in NFTXEligiblityManager.distribute over _feeReceivers

Handle @cmichelio Vulnerability details Vulnerability Details NFTXEligiblityManager.distribute iterates over all feeReceivers. Impact If the number of feeReceivers gets too big, the transaction's gas cost could exceed the block gas limit and make it impossible to call distribute at all. Recommend...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/10 12:00 a.m.16 views

erc1155 are redeemed one by one

Handle paulius.eth Vulnerability details Impact When depositing erc1155s amounts array is used and tokens are sent in bulk safeBatchTransferFrom, however, when redeeming it iterates over the amount and redeems it one by one. It is not convenient when the amount is large. Let's say I deposited 100...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/04 12:00 a.m.16 views

uint(-1) index for not found

Handle paulius.eth Vulnerability details Impact functions getTokenConfigBySymbolHash, getTokenConfigByCToken and getTokenConfigByUnderlying check returned index against max uint: index != uint-1 -1 should indicate that the index is not found, however, a default value for an uninitialized uint is ...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2021/05/01 12:00 a.m.16 views

Randomnesss can be manipulated

Handle adelamo Vulnerability details Here you have more info: --- The text was updated successfully, but these errors were encountered: All reactions...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2021/04/30 12:00 a.m.16 views

NFT can be minted for free after sale ended

Handle s1m0 Vulnerability details Impact The getPrice return 0 after the sale ended and SALELIMIT - numSales nft can be minted for free. Proof of Concept Tools Used Manual analysis Recommended Mitigation Steps Without documentation i'm not sure if it's the expected behaviour or not. If it's not y...

6.8AI score
SaveExploits0
Code423n4
Code423n4
added 2021/04/28 12:00 a.m.16 views

flashProof is not flash-proof

Handle @cmichelio Vulnerability details Vulnerability Details The flashProof modifier is supposed to prevent flash-loan attacks by disallowing performing several sensitive functions in the same block. However, it performs this check on tx.origin and not on an individual user address basis. This...

6.8AI score
SaveExploits0
Code423n4
Code423n4
added 2021/04/28 12:00 a.m.16 views

A proposal can be cancelled by anyone

Handle s1m0 Vulnerability details Impact A proposal can be cancelled by anyone if only exist another proposal with the same type and hasMinority has 16% votes. Proof of Concept 1 voteProposal assume this vote trigger finalise. finalise set mapPIDfinalisingproposalID = true 2 cancelProposal This...

6.7AI score
SaveExploits0
Code423n4
Code423n4
added 2021/04/07 12:00 a.m.16 views

PriceAware uses prices from getAmountsOut

Vulnerability details getPriceFromAMM relies on values returned from getAmountsOut which can be manipulated e.g. with the large capital or the help of flash loans. The impact is reduced with UPDATEMINPEGAMOUNT and UPDATEMAXPEGAMOUNT, however, it is not entirely eliminated. Impact Email address...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/21 12:00 a.m.15 views

Tighten Admin Access Control

Lines of code Vulnerability details Admin functions do not use a custom admin role and rely only on owner access control. Recommendation: Implement a custom admin role. // Custom admin role instead of owner enum Role ADMIN // Restrict drop function function dropTopVotedPiece external...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/21 12:00 a.m.15 views

openPosition() Lack of minimum token0PremiumPortion/token1PremiumPortion limit

Lines of code Vulnerability details Vulnerability details In openPosition, it allows token0PremiumPortion and token1PremiumPortion to be 0 at the same time. In this case, if tokenId enters outofprice, for example, UpperOutOfRange, anyone might be able to input: marginFrom = 0 marginTo = 0...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/21 12:00 a.m.15 views

LendingPool interest should not accrue when pool's repay is paused

Lines of code Vulnerability details Impact When the canRepay status of pools inside InitCore is paused, users are not allowed to repay their positions when borrowing from the paused pool. However, interests continue to accrue during this pause period, exposing users to potential liquidation risk...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/21 12:00 a.m.15 views

LP owner cannot control slippage while managing their position

Lines of code Vulnerability details Summary The owner of the LP cannot specify the slippage parameters while interacting with this position in increaseLiquidity and decreaseLiquidity. Impact Liquidity interaction with Uniswap is protected by minimum amount parameters that control the slippage of...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/20 12:00 a.m.15 views

TRST-M-8 from previous audit still present

Lines of code Vulnerability details Proof of Concept TRST-M-8 from previous audit describes the fact, that when repaying is paused, then pool still continue accruing interests. Usually this is not considered as a medium bug anymore. However, protocol team has stated, that they have fixed...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/19 12:00 a.m.15 views

In case if wLP will be blacklisted then user will not be able to withdraw it

Lines of code Vulnerability details Proof of Concept When users deposit wLP tokens as collateral, then they are checked to be whitelisted. Later, it's possible that for some reason wLP token will be backlisted by governor. And once it's done, then users, who already used that wLP tokens as...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/19 12:00 a.m.15 views

addRewardToken() does note remove old entries before adding new ones

Lines of code 455, 280, 378, 411 Vulnerability details Each time addRewardToken is called, new entries are added to the array, but doing so does not remove any old entries. By calling the function multiple times, an attacker can can increase their voting power indefinitely, without having to...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/19 12:00 a.m.15 views

addRewardToken() does note remove old entries before adding new ones

Lines of code 455, 280, 378, 411 Vulnerability details Each time addRewardToken is called, new entries are added to the array, but doing so does not remove any old entries. By calling the function multiple times, an attacker can can increase their voting power indefinitely, without having to...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/12 12:00 a.m.15 views

Return values of approve() not checked

Lines of code 321, 215, 184, 450, 761, 217, 157, 234, 339, 386https://github.com/Tapioca-DAO/t...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/12 12:00 a.m.15 views

addRewardToken() does note remove old entries before adding new ones

Lines of code 455, 280, 378, 411 Vulnerability details Each time addRewardToken is called, new entries are added to the array, but doing so does not remove any old entries. By calling the function multiple times, an attacker can can increase their voting power indefinitely, without having to...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/12 12:00 a.m.15 views

Use of transferFrom() rather than safeTransferFrom() for NFTs in will lead to the loss of NFTs

Lines of code 230, 342, 514, 536 Vulnerability details The EIP-721 standard says the following about transferFrom: /// @notice Transfer ownership of an NFT -- THE CALLER IS RESPONSIBLE /// TO CONFIRM THAT to IS CAPABLE OF RECEIVING NFTS OR ELSE /// THEY MAY BE PERMANENTLY LOST /// @dev Throws...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/12 12:00 a.m.15 views

latestAnswer() may return stale values

Lines of code 121, 122, 123, 124, 51 Vulnerability details latestAnswer only returns the latest answer or zero, and thus there is no way to tell whether the value is stale or not. Use latestRoundData instead, and check whether the latest timestamp is within your protocol's limits. File:...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/08 12:00 a.m.15 views

Usage of _safeMint in NextGenCore@_mintProcessing allows an attacker to reenter when onERC721Received is called

Lines of code Vulnerability details Impact An attacker can : Exceed the per address allowance in Fixed Price Sale, Exponential Descending Sale and Linear Descending Sale modes. Cause a loss for another user in Burn-to-Mint mode by accepting an offer when onERC721Received is triggered. Proof of...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/08 12:00 a.m.15 views

Ocean.doMultipleInteractions() cannot wrap ether

Lines of code Vulnerability details Bug Description doMultipleInteractions in Ocean.sol attempts to wrap ether but reverts due to a logical error. The internal helper function, doMultipleInteractions, includes the following: if msg.value != 0 balanceDeltas.increaseBalanceDeltaWRAPPEDETHERID,...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/08 12:00 a.m.15 views

_doMultipleInteractions - User can use more wrapped tokens than they own

Lines of code Vulnerability details Impact User can use more wrapped tokens than they own. Proof of Concept When wrapped tokens are used by an Adaptor or Primitive through computeOutputAmount, it does not check if the user has enough tokens. Therefore, when calling computeOutputAmount, you need t...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/08 12:00 a.m.15 views

Potential Gas and Overflow Issues with Decimal Shift Left in _convertDecimals Function

Lines of code Vulnerability details Impact The exponentiation operation in the decimal shift left scenario can lead to high gas consumption and potential integer overflow. The gas cost and risk of overflow increase with the value of the exponent, which could make the function expensive or even...

7.4AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/08 12:00 a.m.15 views

Limited functionality due to Primitive's balance being decreased before it is called

Lines of code Vulnerability details Impact In the current implementation, the balance of a primitive is decreased burned before it is called. This requires the primitive to hold outputAmount of outputToken before a transaction, which severely restricts the functionality it can provide and has no...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/04 12:00 a.m.15 views

addRewardToken() does note remove old entries before adding new ones

Lines of code 455, 280, 378, 411 Vulnerability details Each time addRewardToken is called, new entries are added to the array, but doing so does not remove any old entries. By calling the function multiple times, an attacker can can increase their voting power indefinitely, without having to...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/01 12:00 a.m.15 views

Excess funds sent via msg.value not refunded

Lines of code 201 Vulnerability details The code below allows the caller to provide Ether, but does not refund the amount in excess of what's required, leaving funds stranded in the contract. The condition should be changed to check for equality, or the code should refund the excess. File:...

7.2AI score
SaveExploits0
Code423n4
Code423n4
added 2023/12/01 12:00 a.m.15 views

addRewardToken() does note remove old entries before adding new ones

Lines of code 455, 280, 378, 411 Vulnerability details Each time addRewardToken is called, new entries are added to the array, but doing so does not remove any old entries. By calling the function multiple times, an attacker can can increase their voting power indefinitely, without having to...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/11/29 12:00 a.m.15 views

latestAnswer() may return stale values

Lines of code 121, 122, 123, 124, 51 Vulnerability details Impact latestAnswer only returns the latest answer or zero, and thus there is no way to tell whether the value is stale or not. Use latestRoundData instead, and check whether the latest timestamp is within your protocol's limits. File:...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/11/17 12:00 a.m.15 views

Sandwich attack on buy()

Lines of code Vulnerability details Impact Function Market:buy does not check or take in a minimum buy amount. This makes users' funds vulnerable to sandwich attacks. buy will increase shareDataid.tokenCount, and thus change the exchange rate of share price. price, fee =...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/11/17 12:00 a.m.15 views

Lost fees

Lines of code Vulnerability details Impact Buyers do not get any split of the fees. It is instead to be distributed to holders. But holder splits on successive buys are partially lost to the contract and cannot be recovered. Proof of concept The buyer's rewardsLastClaimedValueidmsg.sender is...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/11/17 12:00 a.m.15 views

asD.sol::mint & asDFactory.sol::create allows an attacker to mint legitimate aSD with counterfeit underlying $NOTE

Lines of code Vulnerability details Impact When creating an aSD token using create from the asDFactory.sol, there's the cNote address reference to specify and set. A malicious user can deploy a counterfeit NOTE underlying token that isn't legit or backed by anything and set/reference it as...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/11/17 12:00 a.m.15 views

asD::withdrawCarry assumes wrong number of decimals returned by exchangeRateCurrent which will cause owner to not be able to withdraw revenue

Lines of code Vulnerability details tl;dr asD::withdrawCarry assumes that the exchange rate returned by the cNote contract will be scaled by 1e28, but in reality it will be only scaled by 1e18. It will cause withdrawCarry to always revert with Integer Underflow, which means that owner won't ever ...

7AI score
SaveExploits0
Code423n4
Code423n4
added 2023/11/15 12:00 a.m.15 views

Staleness Vulnerability in chainlinkAdaptor's getAssetPrice function

Lines of code Vulnerability details Impact The current implementation of the getAssetPrice function in the chainlinkAdaptor contract lacks a crucial check for the heartbeat of the data feed, introducing a potential risk of consuming stale data. This issue is exacerbated by the fact that different...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/11/15 12:00 a.m.15 views

Missing slippage check in deposit function

Lines of code Vulnerability details Summary Users depositing in the protocol have no control over the amount of RSETH minted in return for their deposit. Impact The depositAsset function present in the LRTDepositPool contract allows users to deposit any of the supported assets into the protocol i...

6.9AI score
SaveExploits0
Code423n4
Code423n4
added 2023/11/13 12:00 a.m.15 views

Multiple instances of reentrancy

Lines of code Vulnerability details Impact This can lead to massive loss of funds and asset in Nextgen. Proof of Concept There are multiple instances of reentrancy in NextGenCore.sol, MinterContract.sol and AuctionMemo.sol. These reentrancy is due to the use of ERC721 safeMint... for token transf...

7.1AI score
SaveExploits0
Code423n4
Code423n4
added 2023/11/10 12:00 a.m.15 views

Attacker can take over and hijack any and every asset of a party initialized with the governance value distributionsRequireVote set to false, through the utilization of a flash loan.

Lines of code Vulnerability details Pre-requisite knowledge & an overview of the features in question 1. The distributionsRequireVote flag: The distributionsRequireVote flag is a governance value flag set to false by default in the governance values. It determines whether or not a party member ca...

7.5AI score
SaveExploits0
Code423n4
Code423n4
added 2023/11/10 12:00 a.m.15 views

PartyGovernance contract cannot accept Eth

Lines of code Vulnerability details Impact The PartyGovernance contract does not have payable in it fallback back function which is the main context of allowing a contract to accept Ether or else it will revert or lost forever if receive. Proof of Concept Lack of payable fallback function is...

7AI score
SaveExploits0
Total number of security vulnerabilities5000