Closed code423n4 closed 1 year ago
You can invalidate by signing a new one and making the nonce expire, also there's a deadline check
I think QA
GalloDaSballo marked the issue as duplicate of #261
GalloDaSballo changed the severity to QA (Quality Assurance)
L
GalloDaSballo marked the issue as grade-c
Lines of code
https://github.com/code-423n4/2023-01-drips/blob/main/src/Caller.sol#L90 https://github.com/code-423n4/2023-01-drips/blob/main/src/Caller.sol#L164-L183
Vulnerability details
Impact
Caller contract doesn't have ability to invalidate signed message.
Proof of Concept
Caller contract allows anyone to call allowed contract on behalf of account that allowed it. There is
callSigned
function, that user can use in order if he has signed message bysender
. https://github.com/code-423n4/2023-01-drips/blob/main/src/Caller.sol#L164-L183This function is using nonce of sender in order to avoid replays. But there is no ability for sender to invalidate his signature, by increasing nounce for example. As result sender can't invalidate his signature in convenient way.
Tools Used
VsCode
Recommended Mitigation Steps
Add ability to increase nonce for sender.