CertiK reviewed a KID called BEAST on 26 Jan 2023: 5 findings, 0 critical; 1 marked fixed, 3 acknowledged, 1 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 | 0 | 0 | 0 |
| Medium | 1 | 0 | 0 |
| Low | 0 | 3 | 1 |
The function `mintNFT()` is designed to mint NFTs of the project `AKCB`, using 2 parameters `_typeB` & `_typeG`.\ These two variables stand for the sex of the NFT (`_typeG` will be *female* and `_typeB` will be *male*). \ By the design of the function `mintNFT()` the user can choose the sex of the NFT that will be minted. However, due to a weak randomness issue in the function `mintNFT()`, a user can precompute a perfect timing to mint the sex of the desired NFT. In this case, females are rarer than males (in terms of quantity), a user can abuse this to only get female tokens. The vulnerability occurs because the project relies on the `block.timestamp`, `block.difficulty` for creating randomness. ```solidity=1376 //pseudo randomness selection between Male/Female _typeG = uint256(keccak256(abi.encodePacked(block.difficulty, block.timestamp, totalSupply()))) % 2; ``` Because the `block.timestamp` and the `block.difficulty` are publicly known a malicious actor can precompute the result before minting. The concern is if the team decides only to use randomness to generate sex, it could lead to potential manipulation.
| Address | Chain | Source code |
|---|---|---|
| 0x7737…64a40x77372a4cc66063575b05b44481f059be356964a4 | Chain: Ethereum | Source code: Verified source |
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