Plexus Pool - Audit 2

CertiK1 address on Ethereum

CertiK reviewed Mineplex.io (Plexus Pool - Audit 2) on 27 Sep 2022: 5 findings, 0 critical; 3 marked fixed, 2 open.

No open critical findings
Open the reportOpen Mineplex.io’s security record

Report hosted on skynet.certik.com.

Trustblock does not review code.

Findings5

Statuses are the security firm’s own, from its report.

SeverityOpenAcknowledgedFixed
Critical000
High100
Medium000
Low103
HighCentralization Risks in TokenSwap.solOpen

In the contract `TokenSwap` the role `MINTER_ROLE` has authority over the functions shown in the diagram below. Any compromise to the `MINTER_ROLE` account may allow the hacker to take advantage of this authority and arbitrarily mint tokens to any account. ![](https://accelerator-tasks-prod.acc.corp.certik.com/175fbe9a65c34143bfb643284b5fa619/diagrams/centralization_TokenSwap-TokenSwap-MINTER_ROLE.svg) In the contract `TokenSwap` the role `SETTING_CONTRACT` has authority over the functions shown in the diagram below. Any compromise to the `SETTING_CONTRACT` account may allow the hacker to take advantage of this authority and arbitrarily set the allowed blockchains and commission prices. ![](https://accelerator-tasks-prod.acc.corp.certik.com/175fbe9a65c34143bfb643284b5fa619/diagrams/centralization_TokenSwap-TokenSwap-SETTING_CONTRACT.svg) In addition, the role `DEFAULT_ADMIN_ROLE` has the authority to assign `MINTER_ROLE` and `SETTING_CONTRACT` accounts. Any compromise to the `DEFAULT_ADMIN_ROLE` account may allow the hacker to take advantage of this authority and arbitrarily assign privileged accounts.

LowMissing Zero Address ValidationOpen

Addresses should be checked before assignment or external call to make sure they are not zero addresses. - In function `swap()` and `_swap()`, input argument `externalRecipient` is not zero-checked before being used in the `SwapToken` event. ```solidity=1061 function swap( string memory externalRecipient, string memory toBlockchain, uint256 amount ) public payable virtual { require(msg.value >= commissionPrice[toBlockchain], "TokenSwap: low gas price."); payable(recipientCommission).transfer(msg.value); _swap(msg.sender, address(this), externalRecipient, toBlockchain, amount); } ```

Contracts in scope1

AddressChainSource code
0x0f67a226c385500c68ffa8bb7fbe0db15fe65e24Chain: EthereumSource code: Verified source

Part of Mineplex.io’s security record

Mineplex.io
Audits1 audit by 1 firmLast audit Sep 2022, by CertiK.
Critical findingsNo open critical findingsIn 1 report.
Open Mineplex.io’s security record

Security firm

CertiK

1,044 projects reviewed · 1,393 reports · latest May 2025

See CertiK’s audits

Something 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