Lucene search
+L

1014 matches found

Code423n4
Code423n4
β€’added 2022/12/21 12:0 a.m.β€’11 views

Liquidations force users into bigger debts

Lines of code Vulnerability details Impact User's uncovered debt increases when auction starts on their collateral token. The increased debt may be too big for a user and they might not be able to repay it, which forces them to wait for the auctioned token to be sold and accrue more debt due to t...

6.7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/12/20 12:0 a.m.β€’15 views

Borrowers may earn auction proceeds without filling the debt shortfall

Lines of code Vulnerability details Impact The proceeds from the collateral auctions will not be used to fill the debt shortfall, but be transferred directly to the borrower. Proof of Concept Assume N is an allowed NFT, B is a borrower, the vault V is vaultInfoBN: 1. B add two NFTsN-1 and N-2 as...

6.9AI score
SaveExploits0
HackRead
HackRead
β€’added 2022/12/13 12:4 p.m.β€’13 views

Animoca Brands’ Subsidiary TinyTap To Auction Second Set of Publisher NFTs

By Deeba Ahmed The auctioning will commence on 15 December on OpenSea at 19:00 EST. Publisher NFTs grant co-publishing rights to a TinyTap course. This is a post from HackRead.com Read the original post: Animoca Brands Subsidiary TinyTap To Auction Second Set of Publisher NFTs...

3.2AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/12/09 12:0 a.m.β€’13 views

Dutch auction getPrice() formula can lead to price reaching 0 and eventually reverting and locking the function.

Lines of code Vulnerability details Impact In the function getPrice the current price is calculated by taking the start price and subtracting the product of dropPersecond and time elapsed. start price - dropPreSecond timeElapsed. The issue with this is that given the right inputs for dropPerSecon...

6.8AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/12/09 12:0 a.m.β€’12 views

LPDA refund logic is broken, meaning buyers always get lowest price sale

Lines of code Vulnerability details Impact The protocol intends the LPDA to refunds buyers with the difference between the price they paid and the last sale price Once the sale has ended, the users must call refund to get their Ether refunds based on their purchase price and lowest sale price 99:...

6.7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/12/09 12:0 a.m.β€’9 views

wrong configuration can lock eth in LPDA contract forever

Lines of code Vulnerability details When creating an LPDA auction there are some sanity checks of the values used for the auction. But there is no check that the auction will not cause the price calculation to underflow after a while. This calculation of the price can underflow in getPrice in...

6.7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/12/09 12:0 a.m.β€’15 views

Funds reserved for refunding users can be steal in LPDA sale

Lines of code Vulnerability details Impact LPDA sale works like a Dutch Auction, where early buyers will get refund after the sale ended. In addition, in buy function, when last NFT is saled, it is automatically ending the LPDA sale and send payments to sale receiver, fee to fee receiver. And the...

7.1AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/12/09 12:0 a.m.β€’11 views

saleReceiver and feeReceiver can steal refunds after sale has ended

Lines of code Vulnerability details First, lets go over how a buy happens. A buyer can buy NFTs at a higher price and then once the auction ends they can use refund to return the over payments. The effect is that they bought the NFTs at the lowest price Lowest Price Dutch Auction. Now, let's move...

6.6AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/12/09 12:0 a.m.β€’15 views

The buy() function on Last Price Dutch Auction Sale doesn't check if auction ended, may lead to user loss asset

Lines of code Vulnerability details Impact The buy function on Last Price Dutch Auction Sale doesn't check if auction is ended, may lead to user loss asset if user call with amount 0 with msg.value 0 Proof of Concept Ideally if the max id finalId is reached, then the auction will end, so no user...

6.7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/12/09 12:0 a.m.β€’14 views

User can pass auction recovery health check easily with flashloan

Lines of code Vulnerability details Description ParaSpace features an auction mechanism to liquidate user's NFT holdings and receive fair value. User has the option, before liquidation actually happens but after auction started, to top up their account to above recovery factor 1.5 instead of 1 an...

6.7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/11/08 12:0 a.m.β€’16 views

Bid can be cancelled after being finalized

Lines of code Vulnerability details Impact The SizeSealed contract's cancelBid function can be called after auction has been finalized, thereby allowing the bidder to withdraw their quoteToken after bid is finalized This is possible by bypassing the if a.data.lowestQuote != typeuint128.max ||...

7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/11/08 12:0 a.m.β€’12 views

Auction can be DoS-ed with too many bids

Lines of code Vulnerability details Proof of Concept The bid functionality pushes every new bid to the a.bids array. On finalize this array is looped over. Now, if there are too many bids in it, the for loop gas consumption will go over the block gas limit, which is 30M gas units currently. The...

6.9AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/11/08 12:0 a.m.β€’12 views

Malicious seller can steal from bidders.

Lines of code Vulnerability details Impact A seller can cancel the auction after finalize and thus can steal money from the bidders and get their original baseToken back. POC When an auction is started the value of a.data.lowestQuote is set as typeuint128.max here . In the atState function this...

6.7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/11/08 12:0 a.m.β€’13 views

Malicious seller can finalize his/her auction without changing data.lowestQuote , then auction's state will not be updated to States.finalized and this seller can repeat finalize or cancel auction to steal tokens from contract

Lines of code Vulnerability details Vulnerable details In contract, an auction's state will beStates.Finalized if data.lowestQuote of this auction is different from typeuint128.max. L33-34 data.lowestQuote is assigned to equal clearingQuote when seller finalize auction. L238 This value will be...

7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/11/08 12:0 a.m.β€’15 views

Denial of service when baseAmount is equal to zero

Lines of code Vulnerability details Vulnerability details Description There is a finalize function in the SizeSealed smart contract. The function traverses the array of the bids sorted by price descending. On each iteration, it calculates the quotePerBase. When this variable is calculated, the...

6.8AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/11/08 12:0 a.m.β€’13 views

Attacker can drain the SizeSealed.sol contract.

Lines of code Vulnerability details Impact An attacker can drain the SizeSealed.sol contract buy creating fake auction and manipulating some contract logic. POC Assuming that the SizeSealed.sol initially contains 10000 DAI tokens, I’ll demonstrate how an attacker can steal these tokens. The bug i...

6.6AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/11/08 12:0 a.m.β€’8 views

Providing the same address for the "base" and the "quote" tokens creates a risk of fund loss for the seller.

Lines of code Vulnerability details Impact The "createAuction" function requires the seller to input the address of a base and a quote token. However, there is no statement that checks whether or not these two provided addresses are the same. As a result, the seller could accidentally fill in an...

6.7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/11/08 12:0 a.m.β€’13 views

Attacker can steal any funds in the contract by state confusion (no preconditions)

Lines of code Vulnerability details HIGH: Attacker can steal any funds in the contract by state confusion no preconditions LOC: Description Auctions in SIZE can be in one of several states, as checked in the atState modifier: modifier atStateAuction storage a, States state if block.timestamp...

6.7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/11/08 12:0 a.m.β€’10 views

Quotetoken can be address(0) or any EOA and still allow auctions and bids to be created

Lines of code Vulnerability details Impact createAuction in SizeSealed.sol performs no validation of the auction parameters AuctionParameters sent to it and will allow a Seller to create an auction with an ERC20 quoteToken of address0 putting at risk the baseToken that has real value. In addition...

6.7AI score
SaveExploits0
Code423n4
Code423n4
β€’added 2022/11/08 12:0 a.m.β€’16 views

SizeSealed.withdraw will revert on mulDivDown if a.data.lowest is the value zero, which can prevent withdraws for an auction

Lines of code Vulnerability details Proof of Concept The call to mulDivDown on L377 will revert if the third argument denominador is the value zero. See Solmate implementation. It's possible for a.data.lowestBase to receive the value zero, which will prevent the transfers from L381 and L384. Impa...

6.8AI score
SaveExploits0
Rows per page
Query Builder