codehawks-2023-08-sparkn-l04
[L-04] Signature missing nonce & expiration deadline
Summary
nonce나 서명의 만료 기간 정보가 없으므로 서명을 재사용할 수 있다.
Keyword
replay attack, signature
Vulnerability
deployProxyAndDistributeBySignature 함수는 서명을 이용하여 리워드를 분배하는 함수이다. 이 때, 서명에 nonce나 만료 기간 데이터가 포함되지 않는다.
이 경우 서명을 재사용할 수 있다.
Impact
nonce나 서명의 만료 기간 정보가 없으므로 서명을 재사용할 수 있다.
Mitigation
서명하는 데이터에 nonce와 만료 기간 정보를 추가한다.
Memo
당장 이 취약점으로 직접적으로 공격을 할 수는 없지만, 현재 코드베이스는 초기 버전이라고 하였으므로 추후 고위험의 문제가 되는 것을 막기 위해 미리 수정할 필요가 있다고 설명을 덧붙였다.
tags: bughunting, sparkn, smart contract, solidity, replay attack, signature, severity low