Lucene search
+L
Code423n4Most viewed

10190 matches found

Code423n4
Code423n4
โ€ขadded 2023/02/03 12:0 a.m.โ€ข18 views

Lack of double step transfer in admin modification in a upgradeable contract is dangerous

Lines of code Vulnerability details Lack of double step transfer in admin modification in a upgradeable contract is dangerous Summary Double step transfer of admin / ownership should be a must in upgradeable contracts Vulnerability Detail Admin is changed with changeAdmin that calls changeAdmin,...

6.9AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/02/03 12:0 a.m.โ€ข18 views

Upgraded Q -> 2 from #508 [1675443068820]

Judge has assessed an item in Issue 508 as 2 risk. The relevant finding follows: Cannot add additional Multisig when 10 Multisig addresses are registered --- The text was updated successfully, but these errors were encountered: All reactions...

7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/02/02 12:0 a.m.โ€ข18 views

Solmate's safeTransfer can result in failed transfer with low level call and won't revert as it does not check the codesize of to address, which may lead to loss of funds

Lines of code Vulnerability details The following contract use solmate's SafeTransferLib : solmate/utils/SafeTransferLib.sol Solmate's safeTransfer / safeTransferFrom uses inline assembly call to transfer ether from contract to receiver. According to Solidity Docs the call may return true even if...

6.9AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/02/01 12:0 a.m.โ€ข18 views

Lack of slippage protection when swapping on Uniswap v2/v3

Lines of code Vulnerability details Impact Lack of slippage protection when swapping on Uniswap v2/v3. It'll create the potential to be sandwiched by MEV bots and result in user loss. Proof of Concept In the LendgineRouter.mint function, the contract would swap all the token0 to token1 in...

7.1AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/02/01 12:0 a.m.โ€ข18 views

Unsafe cast on uniswapV3SwapCallback can get all assets in the contract

Lines of code Vulnerability details Unsafe cast on uniswapV3SwapCallback can get all assets in the contract Summary Type cast with overflows doesn't throw an error / revert therefore, value can be transferred out just by calling the method. Contracts that inherit from SwapHelper:...

7.2AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/30 12:0 a.m.โ€ข18 views

Config update happening in memory instead of at storage slot

Lines of code Vulnerability details Impact While adding configs in addConfig function, configs is updated in memory as shown at . It should accept configs parameter to a function as storage. Proof of Concept function addConfiguint256 memory configs, uint256 configsLen, DripsReceiver memory receiv...

7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/29 12:0 a.m.โ€ข18 views

Attacker can steal the NFT bought by sending it to another vault he control

Lines of code Vulnerability details Impact The mitigation of H-08 try to validate the vault returned by market with the VaultRegistry. However, it only validated if the vault exists, but not if it is the correct vault. A similar attack described in code-423n4/2022-12-tessera-findings47 can be...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/29 12:0 a.m.โ€ข18 views

Integer Overflow Vulnerability in _addSplittable Function.

Lines of code Vulnerability details Impact splitsStorage.splitsStatesuserId.balancesassetId.splittable += amt; This vulnerability, if exploited, would allow an attacker to add a large amount of funds to a user's splittable balance, causing it to exceed the maximum value that the uint128 type can...

6.9AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/27 12:0 a.m.โ€ข18 views

TimeswapV2LiquidityToken should not use totalSupply()+1 as tokenId

Lines of code Vulnerability details Impact Assuming ERC1155Enumerable is acting normally, there is a Accounting Issue about TimeswapV2LiquidityToken and TimeswapV2Token's tokenId. Different liquidities can have the same tokenId, leading to serious balance manipulation. I'm submitting this issue a...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/27 12:0 a.m.โ€ข18 views

Malicious borrower can create pool imbalance by tricking the V2 pool to send lesser number of long tokens in exchange for short tokens

Lines of code Vulnerability details Impact Timeswap V2 Pool works on constant product AMM where total long tokens & short tokens follow the equation total long total short = L. Any increase in long tokens has to be accompanied with a proportionate drop in short tokens and viceversa to ensure that...

7.2AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/25 12:0 a.m.โ€ข18 views

Upgraded Q -> M from #229 [1674661320954]

Judge has assessed an item in Issue 229 as M risk. The relevant finding follows: Centralization Risk Contract: Impact: It seems the poolAdmin holds too much power including changing reward controller, rescue tokens etc. This can allow poolAdmin to impact all users by changing the config or draini...

7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/20 12:0 a.m.โ€ข18 views

A staker might drain the stRST contract slowly

Lines of code Vulnerability details Impact Detailed description of the impact of this finding. The stake function relies on the payoutRewards function to calculate stakeRate, which has a round-up error. Then, stateRate is also used to calculate stakeAmount, which also has a round-up error. As a...

7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/19 12:0 a.m.โ€ข18 views

LienToken.transferFrom There is a possibility of malicious attack

Lines of code Vulnerability details Impact Corrupt multiple key properties of public vault, causing vault not to function properly Proof of Concept When LienToken.makePayment/buyoutLien/payDebtViaClearingHouse If it corresponds to PublicVault, it will make multiple changes to the vault, such as:...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/19 12:0 a.m.โ€ข18 views

IRREVERSIBLE SHUTDOWN FUNCTION

Lines of code Vulnerability details Impact The abstract contract VaultImplementation is inherited by Vault.sol and PublicVault.sol. Its shutdown can be called by the strategist to make loadVISlot.isShutdown = true. This will make the modifier whenNotPaused revert, rendering commitToLien and...

7.1AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/19 12:0 a.m.โ€ข18 views

PublicVault Contract Allows Minting Tokens to a Null Address

Lines of code Vulnerability details Impact The PublicVault contract allows the minting of tokens to a null address. When the redeemFutureEpoch function is called with a null address as the receiver, the function will still proceed with the minting of the underlying asset, but the tokens will not...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/17 12:0 a.m.โ€ข18 views

JumpRateModelV2 may return wrong values

Lines of code Vulnerability details JumpRateModelV2 may return wrong values Impact Solidity integer division might truncate. As a result, performing multiplication before division can sometimes avoid loss of precision. Vulnerability Details In general, this is a problem due to precision mostly if...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/17 12:0 a.m.โ€ข18 views

Reuse of signature to get KYCd after it has been removed

Lines of code Vulnerability details Impact There is no time limit on the validity off KYC digests and users with a removed KYC are not saved. If a issuer of such a digest is either compromised or if they by mistake issue a digest with a deadline far into the future a user could reuse the same...

6.5AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/17 12:0 a.m.โ€ข18 views

Centralization risk

Lines of code Vulnerability details Impact MANAGERADMIN can set a very high value for minimumRedeemAmount which will ensure that all attempt to redeem amount simply fails Proof of Concept 1. User A wants to redeem amount 100000 using the requestRedemption function 2. Before User A can do so,...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2023/01/03 12:0 a.m.โ€ข18 views

Underlying assets stealing in token via share price manipulation

Lines of code Vulnerability details Impact asset can be stolen from depositors in the vault by manipulating the price of a share. Proof of Concept ERC4626 vaults are subject to a share price manipulation attack that allows an attacker to steal underlying tokens from other depositors this is a kno...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/12/21 12:0 a.m.โ€ข18 views

incorrect message signer check in ecrecover() and no validation for oracleSigner which would cause all the unsigned messagess to be considered asvalid ones

Lines of code Vulnerability details Impact address oracleSigner has been used to verify signed messages by comparing the return value of ecrecover by oracleSigner. but the return value of ecrecover would be 0x0 and code doesn't check that return value is not 0x0. if owner set oracleSigner as 0x0 ...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/12/19 12:0 a.m.โ€ข18 views

Funds will be lost if the contract handling the refunds are unable to handle them at the moment

Lines of code Vulnerability details The return values of low-level calls are not checked Impact If the fund transfer results in a revert on the recipient's end, e.g. due to being paused, the code will continue on as if it had been successful, and the Ether will be lost. Proof of Concept Return...

6.9AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/12/19 12:0 a.m.โ€ข18 views

Reentrancy issue #1: Functions buy() and add() are vulnerable to reentrancy attack through tokensToSend() hook of ERC777

Lines of code Vulnerability details It is important to be aware that I have reported two reentrancy bugs. Each of these have different ways of being activated and can be found in separate functions. Impact All calculations done in Caviar Pair are using token balance directly. For example, when...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/12/19 12:0 a.m.โ€ข18 views

Malicious users can block listing

Lines of code Vulnerability details Impact In the OptimisticListingSeaport contract, any user with the Rae token corresponding to this Vault can call the propose function to create a listing proposal, which can be used for listing when the proposal exists over PROPOSALPERIOD. function listaddress...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/12/16 12:0 a.m.โ€ข18 views

Token decimals may be above 18 leading to underflow issues

Lines of code Vulnerability details Impact In both StableVault and Trading, there is an assumption that token decimal amounts are =18. However this can break if token decimals are 18, resulting in underflow which can lead to unpredictable behaviors, and extreme amounts during deposits and...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/12/16 12:0 a.m.โ€ข18 views

Miners Can Re-Roll the VRF Output to Game the Protocol

Lines of code Vulnerability details Impact Miners are able to rewrite a chain's history if they dislike the VRF output used by the protocol. Consider the following example: A miner or well-funded user is participating in the PoolTogether protocol. A VRF request is made and fulfilled in the same...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/12/16 12:0 a.m.โ€ข18 views

Draw admin/owner can rug the winner after recoverTimelock expires.

Lines of code Vulnerability details Impact The admin/owner of VRFNFTRandomDraw can wait for recoverTimelock to expire before making the draw. This way he can use lastResortTimelockOwnerClaimNFT to take back the reward NFT from the contract without any time to allow for the winner to claim. He cou...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/12/12 12:0 a.m.โ€ข18 views

Unlimited Global & User Withdrawal right after previous period ends and new period begins

Lines of code Vulnerability details Impact Checks for Global and User Withdraw Limit Per Period are missing for the first withdrawal request right AFTER period length expires and a new period begins. First withdrawal request amount after period length expires can be way higher than...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/12/09 12:0 a.m.โ€ข18 views

Attacker can drain pool using executeBuyWithCredit with malicious marketplace payload.

Lines of code Vulnerability details Description Paraspace supports leveraged purchases of NFTs through PoolMarketplace entry points. User calls buyWithCredit with marketplace, calldata to be sent to marketplace, and how many tokens to borrow. function buyWithCredit bytes32 marketplaceId, bytes...

7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/12/09 12:0 a.m.โ€ข18 views

suppliers funds loss because attacker can transfer his collateralized tokens when health factor is below liquidation threshold by reentrancy attack during executeLiquidateERC20() logic and transferring collateralize

Lines of code Vulnerability details Impact Function executeLiquidateERC20 is for liquidating a position if its Health Factor drops below 1. The caller liquidator covers liquidationAmount amount of debt of the user getting liquidated, and receives a proportional amount of the collateralAsset plus ...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/11/14 12:0 a.m.โ€ข18 views

Reentrancy attack can be used to externally call the _execute function in the Exchange contract

Lines of code Vulnerability details Reentrancy attack can be used to externally call the execute function in the Exchange contract The execute function present in the Exchange contract is intended to be called only internally using delegatecall by the execute and bulkExecute functions. This is...

7.1AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/11/08 12:0 a.m.โ€ข18 views

Bidder can abuse the bidIndices[] in finalize()

Lines of code Vulnerability details Impact finalize could be called by anyone, and the input array bidIndices is not sanity checked. Some malicious bidder can trick the bidIndices to always get the reserveQuotePerBase price. The seller would incur some loss. The other bidders are grieved, wasting...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/10/25 12:0 a.m.โ€ข18 views

PA1D._payoutTokens() won't work for USDT and other inconsistent ERC20 tokens.

Lines of code Vulnerability details Impact Some ERC20 tokens USDT, BNB, OMG do not return a boolean on succesful transfer. Checking the returned value of transfer for these tokens will always fail. Proof of Concept Usage of ERC20 interface and require statement in PA1D.sol. Recommended Mitigation...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/10/25 12:0 a.m.โ€ข18 views

untyped data signing

Lines of code Vulnerability details in function deployHolographableContract the bytes32 hash is directly encoded without adding any domain separator . this will cause several issues an attacker can front run the signature and use them on same contract on another chain . eg a user wants to call...

7.2AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/10/12 12:0 a.m.โ€ข18 views

outboundTransfer should return excess msg.value

Lines of code Vulnerability details Impact In function outboundTransfer, if users sends more msg.value than required, by accident, then the remaining msg.value is not sent back. So, if msg.value amount argument, then the excess msg.value is not sent back to msg.sender. This causes loss of funds f...

6.9AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/10/12 12:0 a.m.โ€ข18 views

No withdraw mechanism for eth sent to GraphProxy contract

Lines of code Vulnerability details Impact The GraphProxy contract implements receive and fallback functions to receive funds. However, there is no method associated with a user to withdraw his funds which might be sent accidentally to the proxy contract, thus leading to most of the eth locked in...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/10/10 12:0 a.m.โ€ข18 views

blockRange should have a minimal value

Lines of code Vulnerability details Impact The blockRange doesn't have any minimal value so owner can call the setBlockRange function to change the blockRange value to a lower value which will automaticaly block the matching of some of the orders that have expirationTime == 0. Proof of Concept Th...

6.9AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/10/01 12:0 a.m.โ€ข18 views

AlgebraPoolDeployer.sol#L50-L51 : After the pool deployment, the memory of "parameters's" members are not cleaned.

Lines of code Vulnerability details Impact As the memory of previous members are not cleared, this can cause unexpected result when deploying subsequent pools. Proof of Concept. parameters = ParametersdataStorage: dataStorage, factory: factory, token0: token0, token1: token1; pool = addressnew...

7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/10/01 12:0 a.m.โ€ข18 views

Type Error

Lines of code Vulnerability details Impact Type Error Proof of Concept Provide direct links to all referenced code in GitHub. Add screenshots, logs, or any other relevant proof that illustrates the concept. Tools Used Foundry - Forge Recommended Mitigation Steps Consider changing uint to int and ...

7.2AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/09/25 12:0 a.m.โ€ข18 views

IERC20.transfer doesn't support all ERC20 tokens

Lines of code Vulnerability details Impact IERC20.transfer doesn't support all ERC20 tokens in the function recoverERC20. Proof of Concept In the contract frxETHMinter, the function recoverERC20 is used to recover ERC20 tokens, if someone accidentally sent some of them in the contract. However...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/09/12 12:0 a.m.โ€ข18 views

_claim function vulnerable to cross-chain-replay attacks

Lines of code Vulnerability details If there's a fork, since anyone can call claim, an attacker can monitor the blockchain for calls to claim, and then make the same call with the same arguments on the other chain. Proof of Concept There are no EIP-712 protections in the encoding: bytes32 leafHas...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/09/01 12:0 a.m.โ€ข18 views

PRICE's getCurrentPrice() can return zero price

Lines of code Vulnerability details Currently no price validity check is performed in getCurrentPrice. This way zero ohmEthPriceFeed.latestRoundData produced prices will yield zero getCurrentPrice which will be passed over to the logic. Also, negative OHM price or zero / negative reserve...

6.6AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/09/01 12:0 a.m.โ€ข18 views

Race condition produces DDOS on governance : 20% minority can block the other 80% from passing a proposal.

Lines of code Vulnerability details Impact An account controlling enough voting percentage to endorse a proposal can block an unwanted proposal from being activated. This can be done by frontrunning or by paying more for gas. There can only be one concurrent activated proposal so there is a race...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/08/17 12:0 a.m.โ€ข18 views

Calling borrowAsset function with 0 _collateralAmount can borrow asset tokens without providing any collateral tokens

Lines of code Vulnerability details Impact The borrowAsset function can be called with the collateralAmount input being set to 0. This will successfully bypass the step for providing any collateral tokens while directly borrowing the asset tokens. When a borrower borrows assets without providing...

6.9AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/08/17 12:0 a.m.โ€ข18 views

If maxLTV == 0 case is used for allowing unlimited borrowing without any collateral, borrower whitelist must be enforced.

Lines of code Vulnerability details Impact If maxLTV == 0 case is used for allowing unlimited borrowing without any collateral, borrower whitelist must be enforced since it is a kind of undercollateral. Proof of Concept function isSolventaddress borrower, uint256 exchangeRate internal view return...

6.9AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/08/17 12:0 a.m.โ€ข18 views

No Return Data Checks on Chainlink's latestRoundData() Might Return Stale Prices

Lines of code Vulnerability details Impact The updateExchangeRate function of FraxlendPairCore contract gets price using chainlink latestRoundData function. However it lacks the check on the return data and this might lead to stale prices. Proof of Concept ./FraxlendPairCore.sol:524: , int256...

6.9AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/08/17 12:0 a.m.โ€ข18 views

Users could borrow all the liquidity in the FraxlendPair

Lines of code Vulnerability details Impact Any user can borrow any amount of Asset without transfer any Collateral Token to the Pair Proof of Concept By invoking borrowAsset and passe collateralAmount = 0 you will be able to borrow all the liquidity in the Pair As we can see they just check for i...

6.8AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/08/12 12:0 a.m.โ€ข18 views

Take over of MinterRole contract

Lines of code Vulnerability details Impact Any user can call the grantMinter or revokeMinter method and take the mint control of the contract. Proof of Concept The grantMinter and revokeMinter methods are not protected by any type of authentication restriction, when they should have the...

7.2AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/08/06 12:0 a.m.โ€ข18 views

Attacker can use the same param to call Community.escrow() multiple times and reduce all the debt

Lines of code Vulnerability details Impact In Community contract, function escrow is used to reduce debt when lender comed in terms with the builder and agent to reduce debt. It checks that all lender, builder and agent are signed the data. But the issue is there is no nonce value in data which...

6.7AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/08/06 12:0 a.m.โ€ข18 views

Vault rebalancing can be exploited if two vaults rebalance into the same vault

Lines of code Vulnerability details Impact User funds stolen Proof of Concept Swap data is completely arbitrary and can be used to swap though malicious ERC20 tokens allowing control transfer. This control transfer would allow the attacker to call rebalance on a second vault and exploit both as...

6.9AI score
Exploits0
Code423n4
Code423n4
โ€ขadded 2022/08/06 12:0 a.m.โ€ข18 views

Unclaimed interest is 0 within 24 hours since the last time that loan is lent or interest is earned for project

Lines of code Vulnerability details Impact When returnToLender is called, the unclaimed interest is calculated as below. uint256 noOfDays = block.timestamp - communityProject.lastTimestamp / 86400; // 246060 /// Interest formula = principal APR days / 365 1000 // prettier-ignore uint256...

6.9AI score
Exploits0
Total number of security vulnerabilities5000