Lucene search
+L
Code423n4Most viewed

10190 matches found

Code423n4
Code423n4
•added 2023/07/14 12:0 a.m.•12 views

_winningRandomNumber vartiable used in calculating if caller is winner can be read via web3.getStorageAt() and user can predict if he wins or not before hand

Lines of code Vulnerability details Impact the variable winningRandomNumber used in isWinner to calc if caller has won the tier can be read, and the calculation can be predicted. Proof of Concept that a variable is marked internal doesnt mean it cannot be read Tools Used vs code Recommended...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/14 12:0 a.m.•13 views

The output amount validation in Vault.liquidate() is not correct.

Lines of code Vulnerability details Impact The output amount validation is not correct in Vault.liquidate, so the method might accept invalid output amount and refuse valid output amount. Proof of Concept In Vault.liquidate, there is a validation about the output share amount should be less than ...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/14 12:0 a.m.•12 views

Pending owner can be the wrong recipient of ownership

Lines of code Vulnerability details Impact An attacker can call the acceptOwnership function with their address as the pending owner before the legitimate pending owner has a chance to call the function Proof of Concept The transferOwnership function allows the current owner to set a pending owne...

6.6AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/14 12:0 a.m.•12 views

Possible centralization issue in PrizePool.closeDraw

Lines of code Vulnerability details The winning random number is chosen by DrawManager, which will lead to centralization risk. Despite haventt really deep dive in codebase of this issue, but if DrawManager ,can somehow calculate which random number can make their controlled address is winner wit...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/13 12:0 a.m.•12 views

The 'Nouns Fork' is considered unfair towards contributors, given they are not awarded any new tokens.

Lines of code Vulnerability details Impact The 'Nouns Fork' is considered unfair towards contributors, given they are not awarded any new tokens. Proof of Concept The Nouns Fork mechanism allows members of the minority in the Nouns DAO to exit to a new forked Nouns DAO, but the current approach m...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/13 12:0 a.m.•12 views

Arbitrary Pending _setPendingVetoer Address Assignment.

Lines of code Vulnerability details Impact If an attacker successfully impersonates the vetoer, they can set any address as the pending vetoer. This can compromise the integrity of the vetoer role and enable unauthorized access or control over certain functions or actions within the contract. Pro...

7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/13 12:0 a.m.•12 views

[M-05] NounsDAOV3DynamicQuorum.quorumVotes(): Wrong totalSupply parameter used to calculated dynamic votes thresholds

Lines of code Vulnerability details Impact and Details It is stated in NounsDAOV3Fork.adjustedTotalSupply that the total supply of nouns exclude those in treasury and escrow contract. In NounsDAOV3Proposals.isDefeated, the dynamic threshold is calculated based on adjustedTotalSupply at the time o...

6.6AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/13 12:0 a.m.•12 views

executeTransaction function allows executing a queued transaction.

Lines of code Vulnerability details Impact The executeTransaction function allows executing a queued transaction. It requires the caller to be the admin, verifies the transaction's queue status and time lock, and executes the transaction. The use of target.call this can be exploit it by an attack...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/13 12:0 a.m.•12 views

Potential for Permanent Lock of Funds in NounsDAOExecutorV2 Contract

Lines of code Vulnerability details Impact The NounsDAOExecutorV2 contract has a potential vulnerability where Ether or ERC20 tokens could become permanently locked in the contract. This could occur if funds are sent to the contract by someone other than the admin, or if the admin loses access to...

7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/11 12:0 a.m.•12 views

Upgraded Q -> 2 from #835 [1689085140858]

Judge has assessed an item in Issue 835 as 2 risk. The relevant finding follows: L-02 --- The text was updated successfully, but these errors were encountered: All reactions...

7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/10 12:0 a.m.•12 views

Funds added to reserves through sync are accidentally transferred out to users

Lines of code Vulnerability details Impact Wells have the ability to shift funds to other Wells as part of gas-efficient multi-pool swaps. This natspec explanation of this can be find here. The sync function is intended to synchronize the underlying token amounts with the token reserves of the...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/10 12:0 a.m.•12 views

Function collision between extension functions and account functions

Lines of code Vulnerability details Impact Users or owner can't use extensions because of collision between extension functions and account functions Proof of Concept Whenever someone calls account it will check for functions inside it, if there isn't function it goes to fallback to check...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/10 12:0 a.m.•12 views

Well.skim() TRANSACTION CAN BE FRONT RUN BY Well.sync() TRANSACTION THUS MAKING THE Well.skim() CALL INEFFECTIVE

Lines of code Vulnerability details Impact The Well.skim external function is used to transfer the excess tokens held by the well to teh recipient. This is done by calculating the differnce between the contract balance and the reserves for each of the tokens as shown below: skimAmountsi =...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/10 12:0 a.m.•12 views

Predictability of cloned address may be susceptible to frontrunning

Lines of code Vulnerability details Impact DoS for the Aquifer.boreWell function due to frontrunning. Proof of Concept From the video documentation, Anyone can call boreWell in Aquifer.sol after confirming an implementation contract. The address of the new Well depends solely upon the salt...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/10 12:0 a.m.•12 views

bad actore can increase gas usage in swapfrom function

Lines of code Vulnerability details Impact bad actor can increase gas in swapfrom function because everytime calling swapfrom function it store new unit and everytime runs the loop for length of it Proof of Concept the swapfrom function includes function setReservesIERC20 memory tokens, uint256...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/10 12:0 a.m.•12 views

No fee swap is possible through addLiquidity and removeLiquidityImbalanced

Lines of code Vulnerability details impact Some will not pay swap fees even after the swap fee is added. proof of concept This is equivalent to swap 1000 tokenA to 500 tokenB, but no fee calculation code lies in adding and removing liquidity. Add this test in Well.AddLiquidity.t.sol. function...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/10 12:0 a.m.•12 views

Well.sol contract allows anyone to add liquidity to tokens with fee-on-transfer by calling the addLiquidity function

Lines of code Vulnerability details Impact A malicious user can call the wrong function for adding liquidity for a pair with fee-on-transfer tokens. The reserves information maintained within the contract suffers from an inconsistency which can result in various miscalculations for liquidity...

6.6AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/10 12:0 a.m.•12 views

Pool address predictability creates many problems

Lines of code Vulnerability details Impact The Aquifer.boreWell function is responsible for creating new Well. This is done using the LibClone.cloneDeterministic function. The address of the new Well depends solely on the salt and/or immutableData parameter provided by the user. Once a user creat...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/10 12:0 a.m.•12 views

Long term denial of service due to lack of fees in Well

Lines of code Vulnerability details Description The Well allows users to permissionless swap assets or add and remove liquidity. Users specify the intended slippage in swapFrom, in minAmountOut. The ConstantProduct2 implementation ensures Kend - Kstart = 0, where K = Reserve1 Reserve2, and the...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/09 12:0 a.m.•12 views

Upgraded Q -> 2 from #198 [1688918565387]

Judge has assessed an item in Issue 198 as 2 risk. The relevant finding follows: QA1. UlyssesPool.maxRedeem needs to consider the protocol fees. --- The text was updated successfully, but these errors were encountered: All reactions...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/07 12:0 a.m.•12 views

uint128 changeAmount might overflow

Lines of code Vulnerability details Impact This issue is an edge case, that uint128 changeAmount could overflow, making the protocol fail for certain amount of swap. Proof of Concept Let's break down the changeAmount: 1. amountOut/amountIn 2. BASE27 3. normalizer File:...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/07 12:0 a.m.•12 views

Interest is not accrued before parameters are updated in SavingsVest

Lines of code Vulnerability details Impact Stablecoin holders can receive wrongly calculated yield in the SavingsVest contract. Also, wrong vesting profit can be slashed when the protocol is under-collateralized. Proof of Concept The SavingsVest contract lets users deposit their stablecoins and...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/07 12:0 a.m.•12 views

Unsafe cast in getCollateralRatio()

Lines of code Vulnerability details Impact LibGetters.getCollateralRatio might return the incorrect ratio due to the unsafe cast. Proof of Concept getCollateralRatio outputs the collateral ratio using the total collaterals and issued agTokens. // The stablecoinsIssued value need to be rounded up...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/05 12:0 a.m.•12 views

Contracts are vulnerable to rebasing accounting-related issues

Lines of code Vulnerability details Impact Rebasing tokens are tokens that have each holder's balanceof increase over time. Aave aTokens are an example of such tokens. If rebasing tokens are used, rewards accrue to the contract holding the tokens, and cannot be withdrawn by the original depositor...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/05 12:0 a.m.•12 views

_normalizeDecimals() Wrong calculation formula

Lines of code Vulnerability details Impact Wrong decimal place conversion, resulting in wrong quantity Proof of Concept in callOutSignedAndBridge The number of tokens will be converted to 18 decimal when packedData is performed. function callOutSignedAndBridgebytes calldata params, DepositInput...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/05 12:0 a.m.•12 views

Functions don't update after being called

Lines of code Vulnerability details Impact Without updating the reserve or vault value of tokens after calling different functions, the contract may be prone to inconsistent state, security issues, financial implications, and bad user experience. It is important to review and update the reserve...

7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/05 12:0 a.m.•12 views

Missing deadline checks allow pending transactions to be maliciously executed

Lines of code Vulnerability details Impact In PoolActions.sol, swapToEqualAmounts function has no deadline check for the transaction when swapping. File: src/talos/libraries/PoolActions.sol function swapToEqualAmountsActionParams memory actionParams, int24 baseThreshold internal bool zeroForOne,...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/05 12:0 a.m.•12 views

Although ERC20Boost.decrementGaugesBoostIndexed function would require user to remove all of her or his boost from a deprecated gauge at once, such user can instead call ERC20Boost.decrementGaugeBoost function for multiple times to utilize such deprecated gauge and decrement its userGaugeBoost for multiple times

Lines of code Vulnerability details Impact When the gauge input corresponds to a deprecated gauge, calling the following ERC20Boost.decrementGaugeBoost function can still execute gaugeState.userGaugeBoost -= boost.toUint128 if boost = gaugeState.userGaugeBoost is false. function...

7.1AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/05 12:0 a.m.•12 views

addLiquidity() unable to work

Lines of code Vulnerability details Impact missing the first transfer of the asset to router, addLiquidity unable to work Proof of Concept UlyssesRouter.addLiquidityuse for mint LP The code is as follows: function addLiquidityuint256 amount, uint256 minOutput, uint256 poolId external returns...

7.1AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/05 12:0 a.m.•12 views

## Significant roundoff error in depositToPort function (ArbitrumBranchBridgeAgent.sol )

Lines of code Vulnerability details Significant roundoff error in depositToPort function ArbitrumBranchBridgeAgent.sol This issue is caused with different decimals than 18. As an Eg USDC, WBTC. Let's consider the USDC as the case scenario. If User deposit USDC into the depositToPort function, He...

6.4AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/03 12:0 a.m.•12 views

quorumReached does not account for forVotes

Lines of code Vulnerability details Impact quorumReached does not account for forVotes. Proof of Concept The supportVodes mapping of the ProposalExtraData struct consists of three values: forVotes, againstVotes and abstainVotes respectively on keys 0, 1 and 2. The function: function...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/03 12:0 a.m.•12 views

Wrong proposalThreshold amount in LybraGovernance.sol

Lines of code Vulnerability details Impact The proposal can be created with only 100000 esLBR delegated instead of 10000000. Proof of Concept According to LybraV2Docs, a proposal can only be created if the sender has at least 10 million esLBR tokens delegated to his address to meet the proposal...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/03 12:0 a.m.•12 views

The _spendAllowance function in EUSD contract is labeled as virtual which can be overriden as malicious code

Lines of code Vulnerability details Impact The spendAllowance function is labeled as virtual which can be overriden by some malicious code Proof of Concept The attacker could modify the spendAllowance function to only call approve function of same contract which is internal and can pass max...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/07/03 12:0 a.m.•12 views

The LybraRETHVault.depositEtherToMint doesn't keep record of user's ether deposits which results in loss for the user.

Lines of code Vulnerability details Impact High: User will lose his deposited ether. Proof of Concept The collateralAsset address variable which is used in LybraPeUSDVaultBase is assumed to be stETH token address Now the depositEtherToMint function from contract LybraRETHVault.sol which inherits...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/26 12:0 a.m.•12 views

A Dutch trade could end up with an unintended lower closing price

Lines of code Vulnerability details Impact notTradingPausedOrFrozen that is turned on and off during an open Dutch trade could have the auction closed with a lower price depending on the timimg, leading to lesser capability to boost the Rtoken and/or stRSR exchange rates as well as a weakened...

7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/23 12:0 a.m.•12 views

Canto pool could be drained.

Lines of code Vulnerability details Impact It was written that there a limit for 10 USDC /10 USDT /0.01 ETH, which currently equals to 10 USDT/ 10 USDC/ 18 USDT almost. These limits are for 4 Canto. Which means code accepts the Canto price at max: 2,5 USDC or equavalent. It is also written in the...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/23 12:0 a.m.•12 views

Missing store revert in case of erc20 conversion error can lead to loss of funds

Lines of code Vulnerability details Impact The module is expected to have no changes in case a erc20 conversion failed. It was implemented by swallowing the error with a log and continuing with the flow finishing the IBC transfer. This is the relevant code section: if , err =...

7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/23 12:0 a.m.•12 views

GetStandardDenom at CreatePool might panic on unchecked nil

Lines of code Vulnerability details Impact A panic might occur when calling CreatePool and stop the app Proof of Concept here we can see CreatePool is creating new struct pool which call k,GetStandardDenom as value for StandardDenom key. now lets check GetStandardDenom body: func k Keeper...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/21 12:0 a.m.•12 views

M-03 Unmitigated

Lines of code Vulnerability details adriro-MR-M-03-ERROR: Recovery transaction can be replayed after a cancellation The mitigation of M-03 contains an error in the implementation of the fix. The original issue is still present. Impact The report in M-03 describes an issue related to the replay of...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/21 12:0 a.m.•12 views

M-03 Unmitigated

Lines of code Vulnerability details Mitigation of M-03: Issue not mitigated, see comments Link to Issue: code-423n4/2023-05-ambire-findings16 Comments The issue is not mitigated. There is an error in the implementation of the mitigation of M-03. See report adriro-MR-M-03-ERROR for details. Assess...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/20 12:0 a.m.•12 views

M-05 Unmitigated

Lines of code Vulnerability details Mitigation of M-05: Issue NOT mitigated Mitigated issue M-05: Virgin stake can claim all drops Fix: code-423n4/2023-05-xeth@aebc324 The issue is that if dripping is enabled when totalSupply == 0 the entire amount dripped will immediately accrue to the first...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/19 12:0 a.m.•12 views

FurnaceP1.setRatio will work incorrect after call when frozen

Lines of code Vulnerability details Impact FurnaceP1.setRatio will not update lastPayout when called in frozen state, which means that after component will be unfrozen, melting will be incorrect. Proof of Concept melt function should burn some amount of tokens from lastPayoutBal. It depends of...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/14 12:0 a.m.•12 views

In LlamaAccount.transferERC20(), Transaction revert if the Token does not support 0 value transfer

Lines of code Vulnerability details Impact In LlamaAccount.transferERC20, Transaction revert if the Token does not support 0 value transfer when transferring tokens to recipient address. In LlamaAccount.sol, transferERC20 function is given by, File: src/accounts/LlamaAccount.sol 165 function...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/14 12:0 a.m.•12 views

_newCastCount can overflow and lead to wrong state

Lines of code Vulnerability details Impact The method newCastCount only checks for overflow via the two parameters that are passed. If a user were to pass a quantity that is equal to typeuint128.max - currentCount + 1, they could effectively bring the newCastCount value to 0 or to any value they...

7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/14 12:0 a.m.•12 views

THERE IS NO INPUT VALIDATION FOR CRITICAL STATE VARIABLES WHICH COULD BREAK THE CORE FUNCTIONALITY OF THE PROTOCOL

Lines of code Vulnerability details Impact In the LlamaAbsoluteStrategyBase.queuingPeriod variable denotes the minimum time in seconds between queueing and execution of action. The LlamaAbsoluteStrategyBase.minExecutionTime returns the block.timestamp + queuingPeriod timestamp. Here queuingPeriod...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/14 12:0 a.m.•12 views

Executing a script action with non-zero value results in frozen funds

Lines of code Vulnerability details Llama instances have a separate LlamaExecutor contract for action execution. When calling LlamaCore.executeAction, the flow is the following for simplicity, we ignore action guards: The function does internal validation: checking the current action state is...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/13 12:0 a.m.•12 views

[ H ] In executeAction function, ETH can remain stuck after reverting due to a failed call.

Lines of code Vulnerability details Impact If and when the executeAction function reverts at either of the checks, the amount of ETH sent along with the call will be locked in the contract forever, with no current measures of recovery. Proof of Concept executeAction is called, but the call fails ...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/13 12:0 a.m.•12 views

The signature "V" length is not checked in castApprovalBySig, CastDisapprovalBySig & createActionBySig

Lines of code Vulnerability details Impact The length of the "v" value in the signatures is not checked. V must correspond according to ECDSA principles values of either 27 or 28. Not checking this will result in an attacker crafting a malicious v value and bypassing any checks, withdrawing funds...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/09 12:0 a.m.•12 views

Legacy version check should be removed to avoid double relaying message in CrossDomainMessager.sol

Lines of code Vulnerability details Impact Legacy version check should be removed to avoid double relaying message Proof of Concept In Optimism bedrock implementation, to handle the pre-bedrock migration, there is code check to make sure the transaction that finalized and relayed in pre-bedrock...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/06/09 12:0 a.m.•12 views

FRONT-RUNNING SUSCEPTIBILITY IN ADDBID()

Lines of code Vulnerability details Impact Auction.addBid is susceptible to front-running attacks. This vulnerability presents a significant risk as participants with adequate knowledge or skill could manipulate Ethereum transaction ordering to gain undue advantage, potentially compromising the...

7AI score
SaveExploits0
Total number of security vulnerabilities5000