CertiK reviewed WEMIX (WEMIX Swap & DIOS(Dollar in and out Stabilizer)) on 18 Oct 2022: 24 findings, 0 critical; 15 marked fixed, 9 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 | 4 | 0 | 1 |
| Medium | 1 | 0 | 1 |
| Low | 4 | 0 | 13 |
In the contract `DollarInAndOutStaking` the role `_owner` has authority over the functions shown in the diagram below. Any compromise to the `_owner` account may allow the hacker to take advantage of this authority.  In the contract `WUSDCTreasury` the role `_owner` has authority over the functions shown in the diagram below. Any compromise to the `_owner` account may allow the hacker to take advantage of this authority.  In the contract `WemixDollar` the role `_owner` has authority over the functions shown in the diagram below. Any compromise to the `_owner` account may allow the hacker to take advantage of this authority.  In the contract `WeswapFactory` the role `_owner` has authority over the functions shown in the diagram below. Any compromise to the `_owner` account may allow the hacker to take advantage of this authority.  In the contract `ZapBase` the role `_owner` has authority over the functions shown in the diagram below. Any compromise to the `_owner` account may allow the hacker to take advantage of this authority.  In the contract `WemixDollarExchange` the role `_owner` has authority over the functions shown in the diagram below. Any compromise to the `_owner` account may allow the hacker to take advantage of this authority. 
In the contract `DollarInAndOutStaking` the role `breaker` has authority over the functions shown in the diagram below. Any compromise to the `breaker` account may allow the hacker to take advantage of this authority.  In the contract `WemixDollarExchange` the role `breaker` has authority over the functions shown in the diagram below. Any compromise to the `breaker` account may allow the hacker to take advantage of this authority.  In the contract `WeswapPair` the role `breaker` has authority over the functions shown in the diagram below. Any compromise to the `breaker` account may allow the hacker to take advantage of this authority.  In the contract `DollarInAndOutStaking` the role `breakerSetter` has authority over the functions shown in the diagram below. Any compromise to the `breakerSetter` account may allow the hacker to take advantage of this authority.  In the contract `WemixDollarExchange` the role `breakerSetter` has authority over the functions shown in the diagram below. Any compromise to the `breakerSetter` account may allow the hacker to take advantage of this authority and [fixme, describe what hacker can do and the impact].  In the contract `WeswapFactory` the role `breakerSetter` has authority over the functions shown in the diagram below. Any compromise to the `breakerSetter` account may allow the hacker to take advantage of this authority.  Also, in the contract `WeswapPair` the role `factory` has authority over the functions shown in the diagram below, however, this role would be granted to the `WeswapFactory` to make it work, which would lower the risk. 
In the contract `WemixDollar`, the role `WhitelistAddress` has authority over the following functions: - function mint(), the privileged role could mint any amount of `WemixDollar` unlimitedly to anyone. - function burn(), the privileged role could burn any amount of `WemixDollar` from anyone. Any compromise to the `WhitelistAddress` account may allow a hacker to take advantage of this authority.
In the contract `WeswapFactory` the role `feeToSetter` has authority over the functions shown in the diagram below. Any compromise to the `feeToSetter` account may allow the hacker to take advantage of this authority. 
In the project `Wemix`, the team designed a pair of tokens, the `WemixDollar` and `WUSDC`, they could always be swapped to each other by the ratio of 1:1. The codes of `WUSDC` is unknown, yet the `WemixDollar` could be unlimited minting, the reserves of the `WemixDollar-WUSDC` pool are always changing, hence there are huge arbitrage opportunities here that investors may change the higher price token to the lower and swap back by the 1:1 ratio to win profits. Hence these two tokens could be regarded as algorithm stable tokens. Besides, the protocol wrapped the `addliquidity()` and `removeliquidity()` functions and provided the investors more functions to call, which they could add or remove liquidity with one or two of the paired tokens, or any other tokens, while more taxes will be charged as `goodwill` or `affiliation`. Also, the `WWEMIX` token is issued to replace the function of `WETH`.
In the function `_fillQuote()`, the `_swapTarget` address is used to receive ETH and execute some external functions which are unknown, could you please provide with us more information about the `_swapTarget`?
Please provide with us more documentation about the design of these mathematical calculations.
The `WEMIXAddress` as `0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE` is a null wallet address.
When calling `executeTransaction()`, the executing codes are passed by `transaction.data` and unknown to the audit scope. Besides, there are ETHs transferred to the `to` address, we would also like to know the source of the ETHs.
The report names a repository or files. Open the report to see its scope.
Repository and files the report names (34)
1,044 projects reviewed · 1,393 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