Closed code423n4 closed 1 year ago
Impact analysis is not enough to explain how the increase in auction prices will affect the actors.
hansfriese marked the issue as unsatisfactory: Insufficient quality
Agreed with the judge, this doesn't deviate from the design and it doesn't hurt the lender, the auction buyer and not benefiting any rational borrower.
wukong-particle marked the issue as sponsor disputed
Lines of code
https://github.com/code-423n4/2023-05-particle/blob/1caf678bc20c24c96fc8f6b0046383ff0e9d2a6f/contracts/protocol/ParticleExchange.sol#L518
Vulnerability details
Impact
The price curve of a loan auction is supposed to depend only on
block.timestamp
, meaning that the price increases as time goes on. However, theaddCredit()
function allows anyone to change or increase the value oflien.credit
. Iflien.credit
is increased, the price of the auction will also increase. An attacker may abuse this to manipulate the price curve of the auction, such as by increasing the price of the NFT that the contract will pay.Proof of Concept
The value of
currentAuctionPrice
should only depend onblock.timestamp
. However, it useslien.credit
, which can be easily changed by theaddCredit()
function.Tools Used
Manual Review
Recommended Mitigation Steps
Consider disabling
addCredit()
for loans with a live auction.Assessed type
Other