sherlock-2025-07-mellow-m08

[M-08] Malicious Users Can Perpetually Lock feeRecipient Shares via Targeted Lockup Reset

보고서

Summary

targeted lock 사용 시 공격자들이 인출 시도를 프론트러닝하여 fee recipient의 잠금 기간을 지속적으로 갱신함으로써 fee recipient의 출금을 DoS할 수 있다.

Keyword

asset lock, fee, dos, logic flaw

Vulnerability

수수료를 사용한다면 오라클 가격을 업데이트 할 때마다 fee recipient 에게 share가 발행된다. 또한 유저가 출금을 요청할 때에도 fee recipient 에게 share가 발행된다.

Targeted lock을 사용하고 출금이 자주 발생한다면 fee recipient의 lockedUntil이 매번 갱신되어 벌어들인 수수료를 출금할 수 없다. Oracle의 타임아웃이 targeted lock 보다 짧고, 오라클이 성실하게 업데이트된다면 fee recipient의 lock이 풀리기 전에 항상 lockedUntil 이 갱신되므로 수수료를 출금할 수 없다.

또한, 공격자가 fee recipient의 출금 요청을 프론트러닝하여 출금 요청을 하면 새로운 수수료가 발행되고 fee recipient의 lockedUntil이 업데이트되어 fee recipient가 출금을 할 수 없다. 이를 통해 공격자는 프로토콜에서 발생한 수수료 수익을 실현할 수 없도록 방해할 수 있다.

Impact

fee recipient 가 수수료를 출금하고 싶어도 그럴 수 없다.

Mitigation

수수료를 발행할 때는 Targeted lock을 적용하지 않는다.


tags: bughunting, mellow, smart contract, solidity, severity medium, asset lock, fee, dos, logic flaw