Lucene search
+L
Code423n4Most viewed

10190 matches found

Code423n4
Code423n4
•added 2023/10/25 12:00 a.m.•19 views

correct use of safeAllowed modifier

Lines of code Vulnerability details Impact Detailed description of the impact of this finding. 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 Recommended Mitigation Steps function...

7.2AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/10/25 12:00 a.m.•19 views

[ADRIRO-NEW-M-01] Manager authorization in VotiumStrategy still leaves room for unprotected access

Lines of code Vulnerability details Summary Access control has been added to the VotiumStrategy contract with the intention of restricting functionality only to AfEth. However, an error in the implementation still leaves the contract publicly accessible. Impact In the updated codebase, the sponso...

7.2AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/10/25 12:00 a.m.•19 views

SafeID's ownership is not checked properly in BasicAction.generateDebt()

Lines of code Vulnerability details Impact the ownership of safe's id passed in BasicAction.generateDebt is never checked which can lead to unexpected results Proof of Concept BasicAction.generateDebt has the following code - function generateDebt address manager, address taxCollector, address...

7.3AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/10/21 12:00 a.m.•19 views

Upgraded Q -> 2 from #671 [1697894602524]

Judge has assessed an item in Issue 671 as 2 risk. The relevant finding follows: Low-02: It may become economically feasible to coerce depositNonce to overflow --- The text was updated successfully, but these errors were encountered: All reactions...

7.3AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/10/20 12:00 a.m.•19 views

No proper validation of Singleton

Lines of code Vulnerability details Bug Description Operators, executors, or the Main Console account can execute transactions on behalf of a SubAccount. SubAccounts must have an enabled SafeModerator guard, which checks whether the guard and handler have not been disabled or updated, and whether...

7.2AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/10/20 12:00 a.m.•19 views

Resetting a sub-account's guard manually from the Main Console can potentially lead to a permanent denial of service (DoS) for that sub-account.

Lines of code Vulnerability details Impact If the Main Console resets the guard, resets the fallback handler, or disables itself as a module of a sub-account, the executors will permanently cease executing any transactions on that sub-account. And also if the Main Console resets the fallback...

7.3AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/10/20 12:00 a.m.•19 views

Malicious sub-account operators can perform cross-chain signature replay attack

Lines of code Vulnerability details Impact Malicious sub-account operators can perform policy or transactions not allowed to the specific chain but allowed in other chain. This is possible due to cross-chain signature replay attack. Proof of Concept To describe the attack, for example, let us hav...

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

_reimburse and createProxyDelegatorAndTransfer uses ERC20Votes.transferFrom with user as msg.sender, but allowance is given for ERC20MultiDelegate contract.

Lines of code Vulnerability details Description The delegateMulti external method is called by user. This function call some internal functions like reimburse and transferBetweenDelegators, which doesn't change the msg.sender because they are internal. So, when these functions try to use...

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

Tokens could be stolen by specifying an unauthorized address.

Lines of code Vulnerability details Impact transferBetweenDelegators transfers tokens between proxy contract addresses without any validation. Tokens could be stolen by specifying an unauthorized address. Proof of Concept The issue with transferBetweenDelegators occurs here as we can see: functio...

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

_reimburse() bypasses 1155 accounting, allowing potential fund drainage.

Lines of code Vulnerability details Impact The reimburse function allows the caller to withdraw any remaining source delegate balance back to themselves. This bypasses the 1155 token balances and could let the caller drain funds. For example: The reimburse function allows the caller to withdraw a...

7.1AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/10/06 12:00 a.m.•19 views

Manipulation of Overall Liquidity Calculation

Lines of code Vulnerability details Impact in this part in code : is handle the claiming of rewards for liquidity mining. It calculates rewards based on the liquidity provided by a user, their position, and certain parameters like ambRewardPerWeek and overallTimeWeightedLiquidity, the problem is ...

7.1AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/10/06 12:00 a.m.•19 views

Lack of validation in accrued index allows excess rewards claim.

Lines of code Vulnerability details Impact Mapping tickTrackingIndexAccruedUpTo tracks the index up to which rewards have been accrued for a position. However, there is no validation that this index is incremented properly and stays in sync with tickTracking. An attacker could manipulate the...

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

Existing pools will be bricked due to uninitialized state

Lines of code Vulnerability details Existing pools will be bricked due to uninitialized Summary Pools already present in the exchange will be bricked when crossTicks is called with an uninitialized tickTracking storage, which will trigger an array out of bounds error. Impact New pools in the...

7.3AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/10/04 12:00 a.m.•19 views

Update score system can be bricked

Lines of code Vulnerability details Impact The updateScores function is used to manually update users scores, devlopers have shared their reasoning of this in the documentation. Any change in the alpha and the multipliers will unbalace the reward system because the change cannot be propagated to...

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

The prime Initializer function in prime.sol is marked “virtual”

Lines of code Vulnerability details Impact The prime initializer is responsible for setting the state variables in the prime.sol contract. The deal breaker here is; Use of virtual - If the function in the parent contract is expected to be overridden in its child contracts, it should be declared a...

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

pendingScoreUpdates counts may be corrupted

Lines of code Vulnerability details Vulnerability details Prime.pendingScoreUpdates is used to record the number of users whose score needs to be recalculated when addMarket , updateAlpha , updateMultipliers occurs. Record pendingScoreUpdates=totalIrrevocable + totalRevocable when the above metho...

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

Single Failure in claim() Reverts Entire Transaction

Lines of code Vulnerability details Impact When the claim function is called it calls internally initializeMarketsmsg.sender which then loops through the whole market and other functions involving the user passed as parameter, the problem is that if one single thing fails everything will fail and...

7.1AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/27 12:00 a.m.•19 views

Missing deadline check for AfEth actions

Lines of code Vulnerability details Summary AfEth main actions execute on-chain swaps and lack an expiration deadline, which enables pending transactions to be maliciously executed at a later point. Impact Both AfEth deposits and withdrawals include on-chain swaps in AMM protocols as part of thei...

7.1AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/25 12:00 a.m.•19 views

AfEth withdrawing will not work when ratio will be 0

Lines of code Vulnerability details Impact AfEth withdrawing will not work when ratio will be 0. It will be not possible to withdraw. Proof of Concept Any ratio for the 2 tokens of afEth can be set by owner. AfEth.withdraw function will not work in case if ratio will be 0, which means that safEth...

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

Any user can drain the escrow contract by calling decreaseDepositRequest with more amount than they deposited into the escrow while requesting.

Lines of code Vulnerability details Impact In the protocol, users submit deposit requests to the Centrifuge gateway for depositing assets into the Liquidity Pools. There is also a mechanism to decrease this deposit order by calling LiquidityPool::decreaseDepositRequest which decreases their depos...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/14 12:00 a.m.•19 views

transferIn() is susceptible to a front-running attack

Lines of code Vulnerability details Impact Another auth caller can exploit the vulnerability by executing front-running transactions using the source address that has just given allowance approval to the contract. This allows the attacker to acquire and increase the destination amount of the...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•19 views

Unchecked token transfer

Lines of code Vulnerability details Impact Unchecked token transfer Proof of Concept Since the contract will work with many different ERC721 tokens, and not all of them are based, for instance, on the OZ ERC721 token contract. And some tokens can return False instead of reverting a transaction in...

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

To protect the contract in case of hacking or detection of incorrect operation, it is necessary to add pause and blacklist functions

Lines of code Vulnerability details Impact Cases of hacking and self-identification of errors in contact often occur. To protect the contract in such a case, the pause and blacklist functions in the contract are usually used. This would provide protection for the DelegateToken.sol contract in cas...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•19 views

Non-standart ERC20 tokens are not supported

Lines of code Vulnerability details Impact The issue here is that some non-standard ERC20 tokens can have fee-on-transfer Proof of Concept The issue here is that some non-standard ERC20 tokens can have fee-on-transfer, so it could cause a problem that the protocol will lose tokens on each call...

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

removeFromAllTicks should be done before getTVL

Lines of code Vulnerability details After the mitigation, the TR fee is directly sent to GE vault. Suppose 0.1 eth trading fee has accumulated in TR. uint vaultValueX8 = getTVL; uint adjBaseFee = getAdjustedBaseFeetoken == addresstoken0; // Wrap if necessary and deposit here if msg.value 0...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•20 views

CreateOffererLib#createOrderHash function can be front-run by attacker and cause user create order failed

Lines of code Vulnerability details Impact Function CreateOffererLibcalculateOrderHashAndId is used to calculate ERC20/ERC721/ERC1155 order hash and delegateTokenId. It create delegateTokenId parameter by calling DelegateTokenStorageHelpersdelegateIdNoRevert function, this function calculate...

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

In transferFrom() address "from" can be put of contract address and bypass Errors.FromNotCreateOfferer(from)

Lines of code Vulnerability details Impact In transferFrom address "from" can be put of contract address and bypass Errors.FromNotCreateOffererfrom Proof of Concept the code should be function transferFromaddress from, address targetTokenReceiver, uint256 createOrderHashAsTokenId external...

7.2AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•19 views

Unchecked return value of low level

Lines of code Vulnerability details In the code you provided earlier, there is a potential "Unchecked return value of low-level call" vulnerability in the following line: addressstrategy.delegatecallabi.encodeWithSignature"harvest"; This line of code uses the delegatecall function to invoke the...

7.3AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•19 views

No protection against conduit front-running

Lines of code Vulnerability details Impact A malicious conduit could front-run and prevent the transfer Proof of Concept The conduit is trusted to conduct the transferFrom in the resulting order. A malicious conduit could front-run and prevent the transfer. calculateOrderHash: This uses the condu...

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

Users will not receive on Token on Destination chain because the internal _executeWithToken(...) function is not implemented.

Lines of code Vulnerability details Impact Loss of tokens on the Destination chain. Proof of Concept The DestinationBridge.sol contract inherits AxelarExecutable.sol which has the executeWithToken... that's called at the end of executeWithToken... function. The executeWithToken... is not...

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

Risk of Token Get Stuck in burnAndCallAxelar Function due to Use of Same Chain ID

Lines of code Vulnerability details Impact The burnAndCallAxelar function within the contract presents a potential risk where tokens can become stuck if the same chain ID is used for both the source and destination chains. In this scenario, tokens are burned from the user's account, and a...

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

_execute can be reorder a batch of commands while executing

Lines of code Vulnerability details Impact Lets see what is written in by Axelar: AxelarGatewayMultisig.execute takes a signed batch of commands. Each command has a corresponding commandID. This is guaranteed to be unique from the Axelar network. execute intentionally allows retrying a commandID ...

7.4AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/07 12:00 a.m.•21 views

Wrong calculation of elapsed days

Lines of code Vulnerability details Impact For a certain period of time, the dailyIr is compounded every day. However, when calculating prevClosePrice, the last day's addition is missed. The formula for calculating the current price is as follows: Range.dailyInterestRate Days Elapsed + 1...

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

Reorgs could revert the setRange function and lead to a long lasting stale price of USDY

Lines of code Vulnerability details Summary Reorgs could revert the setRange function and therefore lead to stale prices for a long time depending on the off chain protection, against it Vulnerability Details Here is the setRange function of the USDY price oracle: function setRange uint256...

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

Transaction origin check in ROE Markets make Options positions opened by contract users impossible to reduce or close

Lines of code Vulnerability details This issue was present in the original contest but I did not notice it as I did not have time to review OptionsPositionManager. The Roe Markets LendingPool.sol that OptionsPositionManager uses is a modified version of Aave V2 with an added PMTransfer...

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

Loss of token if a smart contract perform a cross-chain transfer using source bridge

Lines of code Vulnerability details Impact Loss of a token ownership if a smart contract perform a cross-chain transfer using source bridge Proof of Concept When a caller call burnAndCallAxelar, the token is burnt on source chain and the payload is encoded in this way: bytes memory payload =...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/06 12:00 a.m.•19 views

Users can redeem rDpx they haven't deposited

Lines of code Vulnerability details Impact This can lead to loss of funds for the protocol Proof of Concept In the redeem function of PerpetualAtlanticVaultLP, rdpx amount to send to the user is calculated in addition to the Weth and there is no check for if the user actually owns the rdpx. asset...

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

ERRORNEOUS RETURN VALUE PROVIDED BY THE UniV2LiquidityAmo.getLpTokenBalanceInWeth FUNCTION DUE TO PRECISION ERROR

Lines of code Vulnerability details Impact The UniV2LiquidityAmo.getLpTokenBalanceInWeth function is used to return the LP token balance of the contract in weth. It calls the getLpPrice function which is expected to return the LP price in 1e8 precision. getLpPrice function calls the...

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

Options could not be settled, causing liquidity get locked in vault

Lines of code Vulnerability details Impact In settle logics, RdpxV2Core contract calls to PerpetualAtlanticVault.settle to update funding, burn option tokens and do some token settles. However, the logic could be reverted in the call...

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

DOS the system by frontrunning the initialize function

Lines of code Vulnerability details Impact LivepeerGovernor and Treasury are vulnerable to DOS. Proof of Concept The initialize function present in these two contracts is not called just after their construction. Which is confirmed in the contract LivepeerGovernorUpgradeMock.sol while initializin...

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

Missed approving to UniswapV2Router

Lines of code Vulnerability details Impact The contract should have already granted an allowance of at least minamountOfWeth for the input token. This step is missing during the UniswapV2Router call within the lowerDepeg function. // @audit msg.sender should have already given the router an...

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

withdrawGivenInputAmount() calls _lpTokenSpecified with the wrong value of feeDirection

Lines of code Vulnerability details Impact withdrawGivenInputAmount calls lpTokenSpecified with the wrong value of feeDirection: function withdrawGivenInputAmount uint256 xBalance, uint256 yBalance, uint256 totalSupply, uint256 burnedAmount, SpecifiedToken...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/08/28 12:00 a.m.•19 views

Potential pools unavailable

Lines of code Vulnerability details Impact The function getPointGivenXandUtility may always rollback and report an error CurveError. Proof of Concept According to the formula y = k^2 u^2/aku + x - bku, it is possible to find the other coordinates of a point on the curve when given a u and a...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/08/28 12:00 a.m.•19 views

Lack of balance checks in the withdrawGivenOutputAmount function

Lines of code Vulnerability details Impact Lack of balance checks in the withdrawGivenOutputAmount function can lead to various unpredictable consequences due to the breach of requirements "The pool's balances of the x reserve and y reserve tokens must be greater than the MINBALANCE" and "The...

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

Deposit / Withdraw with reserveTokenSpecified misses important checks

Lines of code Vulnerability details Impact When depositing or withdrawing liquidity and specifying the amount of reserve tokens, the protocol bypasses crucial checks ensuring the amounts locked don't become too small. This oversight allows a malicious actor to remove all but a negligible quantity...

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

M-02 - Malicious users can set their hooks to contracts that will always revert, causing Claimers to get their tx to claim the user's prizes to be reverted

Lines of code Vulnerability details Title M-02 - Malicious users can set their hooks to contracts that will always revert, causing Claimers to get their tx to claim the user's prizes to be reverted Original Issue M-02 - Unintended or Malicious Use of Prize Winners' Hooks Details The previous...

7.2AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/08/10 12:00 a.m.•19 views

receive() in LendingLedger should be replaced by an appropriate function to prevent users from sending native by mistake

Lines of code Vulnerability details Impact Users lose funds by transferring them by mistake to LendingLedger. Proof of Concept Since the LendingLedger contract has a receive external payable function which receives native without any validation, which means that anyone can transfer native to it b...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/08/10 12:00 a.m.•19 views

electionToTimestamp() might return incorrect timestamps depending on the day of the first election

Lines of code Vulnerability details Bug Description For nominee elections, election dates are determined using the the electionToTimestamp function in the SecurityCouncilNomineeElectionGovernorTiming module. When SecurityCouncilNomineeElectionGovernor is initialized after deployment, the first...

6.6AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/08/10 12:00 a.m.•19 views

Proposals will not be submitted in SecurityCouncilMemberElectionGovernor.sol and SecurityCouncilNomineeElectionGovernor.sol

Lines of code Vulnerability details Impact SecurityCouncilNomineeElectionGovernor::execute and SecurityCouncilNomineeElectionGovernor::createElection will always revert, since the form of description at the proposal is not compliant to the format required at GovernorUpgradable of Openzeppelin...

6.7AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/08/10 12:00 a.m.•19 views

Delegating older lock to a newer one does not allow to undelegate it

Lines of code Vulnerability details Impact User who accidentally delegates his lock to the newer one, will get his lock stuck. User won't be able to undelegate his lock, because function delegate will always revert. Please notice, that this is the different issue than previously reported:...

6.8AI score
SaveExploits0
Total number of security vulnerabilities5000