Lucene search
+L
Code423n4Recent

10190 matches found

Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•17 views

Lack of ERC1155 Token Balance Check in flashloan Smart Contract Function

Lines of code Vulnerability details Description: : The flashloan function in the code you provided does not check if the amount of ERC1155 tokens being flashed is available. This could lead to a situation where the function fails to complete because the caller does not have enough ERC1155 tokens ...

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

test dupes medium 2

No description provided. --- The text was updated successfully, but these errors were encountered: All reactions...

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

Incorrect delegate token URI in MarketMetadata.sol.

Lines of code Vulnerability details Impact Web3 logic may be error prone by the wrong delegate token URL. Proof of Concept In DelegateToken.tokenURL, MarketMetadata.delegateTokenURI is called. MarketMetadata.delegateTokenURI is as follows. File: MarketMetadata.sol 37: function...

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

Compound charges are sent to GeVault, making them potentially vulnerable to theft

Lines of code Vulnerability details Impact In the previous version, the compound fee would be saved in the TokenisableRange before being deposited into LP, and would be deposited into LP after reaching 1%. After reconstruction, the fees are sent directly to GeVault for distribution through getTVL...

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

test dupes medium

No description provided. --- The text was updated successfully, but these errors were encountered: All reactions...

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

The roerouter hard-coded address error causes all fee funds to be sent to the treasury instead of the vault

Lines of code Vulnerability details Impact The roerouter hard-coded address error causes all fee funds to be sent to the treasury instead of the vault. This will reduce the capital utilization rate, because the fee should be added to the LP to earn interest, but now because the vault address cann...

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

The code uses assembly for memory allocation, which can be complex and prone to errors.

Lines of code Vulnerability details Impact The code uses assembly for memory allocation, which can be complex and prone to errors. Inefficient memory management can lead to gas inefficiency and potential vulnerabilities. Proof of Concept The code uses assembly for memory allocation, which can be...

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

The DelegateToken.approve function will directly overwrite the old user's approval, resulting in a loss of user rights

Lines of code Vulnerability details Impact DelegateToken.approve will override the old approval with the same delegateId. This will directly impact the rights of users who were previously approved, effectively revoking their previous approval. function approveaddress spender, uint256...

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

Lack of Access Control On Flashloan

Lines of code Vulnerability details Impact Anybody can get free flashloan on other users' tokens in the contract. Airdrops, token rights can be taken from the rightful owner. Proof of Concept The flashloan function takes in a Structs.FlashInfo calldata info parameter which specifies the below...

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

The onlySeaport is a single point of failure and a centralization risk

Lines of code Vulnerability details Impact The onlySeaport holds a lot of power within the system, which can compromise the system integrity and it's permission-less nature. Having a single EOA as onlySeaport is a large centralization risk and a single point of failure. A single private key may b...

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

There is a potential vulnerability with the nonce not incrementing as expected if there is an error or revert during the seaport flow

Lines of code Vulnerability details Impact This would allow the attacker to reuse the same nonce in multiple seaport transactions by reverting the first transaction after processNonce increments the stored nonce. Proof of Concept There is a potential issue with the nonce not incrementing as...

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

yryryserywretsh

Lines of code L1 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 Assess...

7.1AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•11 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/11 12:00 a.m.•8 views

Any user can withdraw a delegate token after expiration

Lines of code Vulnerability details Impact The withdraw function in the DelegateToken contract does not check the caller msg.sender when the expiration time has ended, thus anyone can make a call to withdraw to steal the funds/tokens associated with a delegate token owned by another user after th...

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

Use of tx.origin breaks interoperability with AA wallets.

Lines of code Vulnerability details In OptionPositionMananger, several functions like close and sellOptions, need to call PMWithdraw, which calls PMTransfer. Then it is checked that tx.origin != user. However, smart contract wallet cannot be tx.origin, which means AA wallets will not be able to...

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

Attacker can extract value from pool by sandwiching herself at swapAll during close

Lines of code Vulnerability details Attacker can drain the lending pool by leveraging two facts: 1. swapAll allows 1% slippage 2. There is no Health Factor check after close. Alice and Bob are good friends, the steps are in one single tx: 1. Alice deposits 10000 USDT and borrows 7000$ worth of TR...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•16 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.•8 views

Tipping is not available for the protocol

Lines of code Vulnerability details Impact The reason that in the DelegateRegistry contract there's some payable function is because users can tip the contract and then owner can receive it using sweep later. But in the DelegateToken contract, there's no way to send the tipping to the...

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

"rights" stored in memory is overwriting the memory block storing "from" and 32 bytes memory is given to store 20 byes long "contract_"

Lines of code Vulnerability details Impact Detailed description of the impact of this finding. Expected code should keccak over packed encoding of rights, from, to, contract, tokenId but as 'rights' values are overwriting 'from' values and 32 bytes memory block has been allocated to 'contract'...

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

Impossible for the owner to change rights

Lines of code Vulnerability details Impact An escrowed token's rights can not be altered once it has been placed in escrow. When a user creates a delegate token and principal token, they set the rights. Rights such as "" and flashloan grant the ability to use the flashloan function. If the delega...

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

The validateCreateOrderHash function is vulnerable to an incorrect token type being provided by the caller

Lines of code Vulnerability details Impact Invalid token types could be used with encoded order info, breaking expectations of the contract. An attacker could create an order hash using different parameters than what is actually encoded in the orderInfo. This could potentially allow the attacker ...

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

No way to revoke Approval in DelegateToken.approve leads to un authorized calling of DelegateToken.transferFrom

Lines of code Vulnerability details Impact There is no way to revoke the approval which given via DelegateToken.approveaddress,delegateTokenId. They can able call the DelegateToken.transferFrom even the tokenHolder revoke the permission using the DelegateToken.setApprovalForAll if the spender...

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

An attacker can steal assets due to an incorrect revertInvalidWithdrawalConditions check in DelegateToken.withdraw()

Lines of code Vulnerability details Impact Function withdraw - allows principal rights owner or approved operator to withdraw the underlying token once the delegation rights have either met their expiration or been rescinded. To withdraw assets, a check is made that the assets are being withdrawn...

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

The owner of the PrincipalToken can redeem the asset from escrow before the selected time period expires

Lines of code Vulnerability details Impact After calling the create function, the owner of the DelegateToken gains delegate rights for the duration of the escrow. The documentation for the competition states: "The holder of the PrincipalToken will have the right to redeem the boredom ape from...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•16 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.•14 views

The number of ticks is incorrectly fixed and is not equal to liquidityPerTick, resulting in low fund utilization.

Lines of code Vulnerability details Impact In the readme, it states the goal after activeIndex is reconstructed is: Instead of depositing half of the assets into each of the 2 ticks above and below, this has been parameterized, allowing to change asset distribution in case of high volatility. But...

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

Incorrect Handling of Empty rights Parameter in delegateAll Function

Lines of code Vulnerability details Description The delegateAll function does not correctly handle the case where the rights parameter is empty. In this case, the function will attempt to write an empty string to the Storage.POSITIONSRIGHTS storage location. This behavior could lead to unexpected...

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

"rights" stored in memory is overwriting the memory block storing "from"

Lines of code Vulnerability details Impact Detailed description of the impact of this finding. Expected code should keccak over packed encoding of rights,from,to but as 'rights' values are overwriting 'from' values. So values available for encoding is not as expected. Proof of Concept Provide...

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

test

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 Assessed...

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

Fee on Transfer tokens cause incorrect accounting

Lines of code Vulnerability details Impact Incorrect accounting for fee on transfer tokens Proof of Concept Delegate accepts all ERC20 token types as specified by the contest page. Some ERC20 tokens include a fee on transfer which means means that the amount of tokens sent to the contract will be...

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

Fee on transfer tokens will cause users to lose funds

Lines of code Vulnerability details Impact Some ERC20 tokens allow for charging a fee any time transfer or transferFrom is called. If a contract does not allow for amounts to change after transfers, subsequent transfer operations based on the original amount will revert due to the contract having...

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

A malicious contract could steal assets via a flash loan

Lines of code Vulnerability details Impact A malicious contract could fail to return the assets, essentially stealing the Proof of Concept The key vulnerability is in the flashloan function. It transfers the assets to the receiver contract specified in info.receiver without any checks. Then it...

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

Protocols does not work with fee-on-transfer ERC20 tokens

Lines of code Vulnerability details Impact The protocol does not work with fee-on-transfer ERC20 tokens. When this type of token is escrowed, the amount is sent to the DelegateToken contract. After that the underlying amount delegateInfo.amount is stored in the...

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

Return value of ETH

Lines of code Vulnerability details Impact It is recommended that the return values of ether transfers be checked, however if transfer to the hardcoded address fails, it does not revert. Proof of Concept uint256 sc = uint256uint1600x0000000000000000000000000000000000000000; assembly "memory-safe"...

6.9AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•15 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.•17 views

Unchecked return value of low level call()/delegatecall()

Lines of code Vulnerability details The vulnerability related to an "Unchecked return value of low-level call/delegatecall" is a common and critical issue in Ethereum smart contracts. Let's break down this vulnerability and discuss its implications: 1. Low-Level Calls in Solidity: In Solidity,...

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

GeVault LP calculations do not use scaling and are vulnerable to deposit attacks

Lines of code Vulnerability details Impact Currently, getTVL counts all token balances in GeVault, and attackers can manipulate getTVL to implement deposit attacks. Secondly, since the calculation of LP does not use scaling, because there is a precision error in the division, the cost for the...

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

create function will DoS with ERC1155s.

Lines of code Vulnerability details Impact ERC1155 tokens can never be used. Proof of Concept If we look at the create function in the delegateToken contract we can see the line : TransferHelpers.checkAndPullByTypeerc1155PullAuthorization, delegateInfo; this line calls the...

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

Missing Ownership Check in mint Function

Lines of code Vulnerability details Description: The mint function in the PrincipalToken contract lacks a crucial ownership check before allowing token minting. While it correctly checks if the caller is the delegateToken contract to restrict minting to authorized contracts, it doesn't verify if...

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

An attacker can use the flashloan function with an invalid collateral asset

Lines of code Vulnerability details Impact Function flashloan - allows delegate token owner or approved operator to borrow their underlying tokens for the duration of a single atomic transaction. The function uses Structs.FlashInfo calldata info as an input parameter. Failure to call...

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

getActiveTickIndex implementation error

Lines of code Vulnerability details Impact The implementation of getActiveTickIndex is wrong, and the searched ticks do not meet expectations, causing funds to be incorrectly allocated to edge ticks, and there is basically no staking income. Proof of Concept // if base token is token0, ticks abov...

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

flashloan() allows both owner and approver to call

Lines of code Vulnerability details Impact Allowing the borrower to borrow more than the current limit Proof of Concept As we can see ,flashloan uses StorageHelpers.revertNotOperator to check if the msg.sender has permissions to call. function flashloanStructs.FlashInfo calldata info external...

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

getActiveTickIndex returns wrong index

Lines of code Vulnerability details To find a tick that's above price ie its only underlying is the base token, getActiveTickIndex should not if baseTokenIsToken0 && amt0 == 0 || !baseTokenIsToken0 && amt0 == 0 return tickIndex; it should if baseTokenIsToken0 && amt1 == 0 || !baseTokenIsToken0 &&...

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

Not cleaning scratch space/memory after delegatecalls leads to the caller to work with "dirty" memory

Lines of code Vulnerability details Impact NOTE - the link above is just the most critical example, the issue affects many functions in the libraries in scope Calls to deployed libraries are done via delegatecalls, so the storage AND MEMORY context in the library is the one of the caller. Sometim...

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

The tokenType is concatenated rather than tightly integrated. An attacker could manipulate just the type byte of the hash.

Lines of code Vulnerability details Impact The attacker can create an unintended type of order and asset transfer. Proof of Concept The tokenType is concatenated rather than tightly integrated. An attacker could manipulate just the type byte of the hash. The issue is that the tokenType is...

6.8AI score
SaveExploits0
Code423n4
Code423n4
•added 2023/09/11 12:00 a.m.•16 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.•18 views

Upgraded Q -> 3 from #255 [1694460742612]

Judge has assessed an item in Issue 255 as 3 risk. The relevant finding follows: LOW-2 Missing check for checkBalancesint256 x, int256 y in reserveTokenSpecified could result in DoS of some critical operations --- The text was updated successfully, but these errors were encountered: All reactions...

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

delegate ID could differ from the expected order hash if the order hash was manipulated

Lines of code Vulnerability details Impact A malicious user could create an order hash that does not match the actual order data. When the delegate token is created, the actualDelegateId will be different than the requestedDelegateId calculated from the manipulated createOrderHash. But the check...

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

Unchecked Arithmetic Allows Nonce Replay

Lines of code Vulnerability details Vulnerability details The problem is the unchecked increment operation: ++nonce.value;. When nonce.value is already at its maximum value 2^256 - 1, incrementing it will wrap around to zero due to integer overflow. This means that if an attacker sends a...

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

In ratifyOrder there is no need for array

Lines of code Vulnerability details Impact In ratifyOrder there is no need for array for SpentItem and ReceivedItem calldata consideration Single object can be used, there is use of the array Proof of Concept The single variable can be used instead of offer0.identifier and consideration0 Array is...

7AI score
SaveExploits0
Total number of security vulnerabilities10190