codehawks-2023-08-sparkn-l09

[L-09] Missing Events

보고서

Summary

중요한 함수 중 이벤트를 찍지 않는 함수가 있다.

Keyword

lack of event, event

Vulnerability

_commissionTransfer 함수는 수수료를 전송하는 중요한 함수이다. 하지만 이벤트를 생성하지 않아 얼마의 수수료를 전송했는지 이벤트로 조회할 수 없다.

    function _commissionTransfer(IERC20 token) internal {
        token.safeTransfer(STADIUM_ADDRESS, token.balanceOf(address(this)));
    }

ProxyFactory 컨트랙트의 모든 배포/분배 함수가 Distributed 이벤트를 이용한다. 각 함수를 호출하는 상황이 서로 다르므로, 서로 다른 이벤트를 발생해 구분할 수 있도록 하는게 좋다.

Impact

오프체인 툴링, 모니터링 툴, 프론트엔드 등에 정보를 제공하지 못한다.

Mitigation

이벤트를 추가한다.


tags: bughunting, sparkn, smart contract, solidity, lack of event, severity low