Zaros contract fails to implement the EIP712
in several cases.
According to the EIP712 Standard:
The dynamic values bytes
and string
are encoded as a keccak256
hash of their contents.
However, in the function CustomReferralConfiguration()
, the hashing process is handled as follows:
As observed, both CUSTOM_REFERRAL_CONFIGURATION_DOMAIN
and customReferralCode
are string
values. The hashing (slot) directly encodes these values instead of using the keccak256
hash of their contents as mandated by the standard.
A similar issue is present in the function Referral
:
Here too, REFERRAL_DOMAIN
is a string
that is encoded as is.
Failure to comply with EIP712
can lead to integration issues and potentially cause a denial of service.
Manual Review
Here is the correct implementation:
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.