buyLoan()
does not check if pool.loanToken == loan.loanToken
. Attacker can set a fake pool and a fake pool.loanToken
and then call the buyLoan()
to steal the loan.It will cause user lossing funds.
https://github.com/Cyfrin/2023-07-beedle/blob/main/src/Lender.sol#L465
It will cause user lossing funds.And attacker does not need pay more funds.
manual
check if pool.loanToken == loan.loanToken
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.