1247 matches found
Web3 ā Crypto wallet Login & NFT token gating < 2.7.0 - Authentication Bypass
The plugin does not properly perform authentication in the 'hiddenformdata' function, allowing an unauthenticated user to log in as any existing user on the site, such as an administrator, if they have access to the username...
DEBIAN-CVE-2023-3390
A use-after-free vulnerability was found in the Linux kernel's netfilter subsystem in net/netfilter/nftablesapi.c. Mishandled error handling with NFTMSGNEWRULE makes it possible to use a dangling pointer in the same transaction causing a use-after-free vulnerability. This flaw allows a local...
Using transferFrom on ERC721 tokens transfer
Lines of code Vulnerability details Impact The transferFrom method is used instead of safeTransferFrom which is not recommended. It can result in loss of NFT if the address is not able to handle the received NFT. OpenZeppelinās documentation discourages the use of transferFrom, use safeTransferFr...
Lack of reentrancy protection in L1ERC721Bridge.sol
Lines of code Vulnerability details Summary Calling IERC721.transferFrom in the L1ERC721Bridge.initiateBridgeERC721 after writing the deposit makes a reentrancy attack possible if there is a callback before transfer in the localToken contract we will name such a contract ERC721Callback...
Loss of airdropped Token or NFT in NFT Bridge
Lines of code Vulnerability details Impact Loss of airdropped Token or NFT in NFT Bridge and Token Bridge Proof of Concept Contract L1ERC721Bridge is for bridging NFTs from L1 to L2 and it holds all the bridged NFTs. Most of the NFT projects would airdrop new NFTs for previous owners or drop ERC2...
Upgraded Q -> 2 from #28 [1686212158430]
Judge has assessed an item in Issue 28 as 2 risk. The relevant finding follows: L-9 Griefer can DoS lender NFT withdrawals --- The text was updated successfully, but these errors were encountered: All reactions...
_execBuyNftFromMarket() Need to determine if NFT can't already be in the contract
Lines of code Vulnerability details Impact Use other Lien's NFTs for repayment Proof of Concept execBuyNftFromMarket Whether the NFT is in the current contract after buy, to represent the successful buy of NFT function execBuyNftFromMarket address collection, uint256 tokenId, uint256 amount,...
Lender can prevent borrower from returning NFT
Lines of code Vulnerability details Impact The lender can prevent the borrower of his NFT from returning it, forcing him to pay interest for longer. Proof of Concept The borrower returns the NFT owed by calling repayWithNftlien, lienId, tokenId. This will then validateLienlien, lienId which check...
DoS of auctionBuyNft()
Lines of code Vulnerability details Impact An auction can be forced to conclude, which is typically to the benefit of the lender. Proof of Concept auctionBuyNftlien, lienId, tokenId, amount validates the lien in question by validateLienlien, lienId which checks that the lien is hashed to the same...
newLien.lender can steal NFT that should belong to oldLien.lender after refinancing
Lines of code Vulnerability details Impact After calling the following ParticleExchange.refinanceLoan function, collection are the same and tokenId become newLien.tokenId for both the old and new liens. function refinanceLoan Lien calldata oldLien, uint256 oldLienId, Lien calldata newLien, uint25...
Attacker can use buyNftFromMarket() to buy an NFT from an arbitrary collection
Lines of code Vulnerability details Impact The function buyNftFromMarket allows a borrower to buy an NFT from the same collection to repay a loan. At the end of the function flow, it checks that the contract actually holds the NFT tokenId and assumes that it is the acquired NFT. However, this is...
Marketplace may call onERC721Received() and create a lien during buyNftFromMarket(), creating divergence
Lines of code Vulnerability details Impact The contract supports a "push-based" NFT supply, where the price and rate are embedded in the data bytes. This way, the lender doesn't need to additionally approve the NFT but can just transfer it directly to the contract. However, since the contract als...
withdrawNftWithInterest() possible take away other Lien's NFT
Lines of code Vulnerability details Impact Possible take away other Lien's NFT Proof of Concept withdrawNftWithInterest Used to retrieve NFT The only current restriction is that if you can transfer out of NFT, it means an inactive loan function withdrawNftWithInterestLien calldata lien, uint256...
Wrong assumption that NFT is not in contract when loan is active
Lines of code Vulnerability details Impact The lender might lose or be robbed of his supplied NFT. Proof of Concept A lender can withdraw the NFT in his lien if it is not currently on loan by calling withdrawNftWithInterest. This is checked by relying on IRC721.safeTransferFrom to revert if the N...
Function _execBuyNftFromMarket() Fails to Check the Actual ETH Balance in the Contract After Executing the Trade
Lines of code Vulnerability details Impact In the function execBuyNftFromMarket, if the user chooses to use WETH, the function deposits ETH and approves the amount of WETH to the marketplace. After executing the trade at the marketplace, the function checks that the balance decrease is correct in...
NFT withdrawal grief
Lines of code Vulnerability details Impact A lienee whose NFT is not currently on loan may be prevented from withdrawing it. Proof of Concept A lienee who wishes to withdraw his NFT calls withdrawNftWithInterest which tries to IERC721.safeTransferFrom the NFT, which therefore reverts if the NFT i...
DoS of liquidation
Lines of code Vulnerability details Impact The lender can be prevented from liquidating the borrower, at negligible cost to the borrower. Proof of Concept When the borrower is insolvent the lender can liquidate him by withdrawEthWithInterestlien, lienId. The parameters are verified by the modifie...
Supplying NFT, which is borrowed from Particle Exchange, to Particle Exchange can cause original lien's borrower to lose such NFT and previously sent msg.value even though its position for original lien is not yet insolvent
Lines of code Vulnerability details Impact After a borrower calls the following ParticleExchange.swapWithEth function, the borrower receives the corresponding NFT. function swapWithEthLien calldata lien, uint256 lienId external payable override validateLienlien, lienId ... /// @dev cannot instant...
Risk of accidental DoS while receiving NFTs from marketplaces
Lines of code Vulnerability details Risk of accidental DoS while receiving NFTs from marketplaces The implementation of onERC721Received can lead to an accidental denial of service. Impact The Particle protocol supports creating liens by pushing the NFT instead of the usual pull approach. This is...
Wrong assumption in function withdrawNftWithInterest() could allow lender to withdraw NFT from active loan
Lines of code Vulnerability details Impact In the withdrawNftWithInterest function, the lender can withdraw an NFT back if the NFT is currently in the contract without an active loan. However, the function makes an incorrect assumption that if the NFT can be withdrawn, then the loan is not active...