Part of CertiK’s retainer series
CertiK reviewed WEMIX (Wemix Retainer 137 HSPFE) on 31 Oct 2024: 8 findings, 0 critical; 4 marked fixed, 4 open.
Report hosted on skynet.certik.com.
Trustblock does not review code.
Statuses are the security firm’s own, from its report.
| Severity | Open | Acknowledged | Fixed |
|---|---|---|---|
| Critical | 0 | 0 | 0 |
| High | 1 | 0 | 0 |
| Medium | 1 | 0 | 0 |
| Low | 2 | 0 | 4 |
In the `getLastIndex()` function, the value of `index` is not assigned when `hspCount == 0` is `false`, and as a result would return `0` when the correct return value is greater than 0.
In the `deploy()` function of `SPFactory`, there's no enforcement that the `goddra` and `hydra` token addresses are different. If they are the same, and insufficient `goddra` token is provided by the project team as the `rt` (reward) token, then it is possible that then user A's staked token might be paid out as reward to user B when user B claims reward, and user A would be unable to unstake its tokens due to insufficient token balance.
There should always be events emitted in the sensitive functions that are controlled by centralization roles.
The current contract doesn't follow the naming convention specified by [Solidity DOC](https://docs.soliditylang.org/en/v0.8.20/style-guide.html#underscore-prefix-for-non-external-functions-and-variables): The state variable `variable` is used as `private` or `internal` and is not exposed publicly. It should have `an underscore prefix` like `_varaible`. Leading underscores allow you to immediately recognize the intent of such functions, but more importantly, if you change a function from non-external to external (including public) and rename it accordingly, this forces you to review every call site while renaming. This can be an important manual check against unintended external functions and a common source of security vulnerabilities (avoid find-replace-all tooling for this change).
The report names a repository or files. Open the report to see its scope.
Repository and files the report names (4)
1,044 projects reviewed · 1,375 reports · latest May 2025
See CertiK’s auditsSomething wrong on this page? A missing report, a wrong date, a finding that was fixed since. Tell us and we check it against its source.
Tell us