As of 3 Nov 2026, Baby Neiro has 1 audit report on Trustblock, by CertiK, dated 20 Dec 2024. That report lists no open critical findings. It also holds 1 deployed contract on 1 chain.
Record last updated . It holds audits and findings, contracts and incidents up to Nov 2026. Trustblock does not review code.
Newest first
| Audit | Security firm | Date | Scope | Critical findings | Report |
|---|---|---|---|---|---|
| Baby Neiro | Security firm: CertiK | Date: | Scope: 1 address on BNB Chain | No open critical findings | Open · skynet.certik.com |
Statuses are the security firm’s own, from each report.
| Severity | Open | Acknowledged | Fixed |
|---|---|---|---|
| Critical | 0 | 0 | 0 |
| High | 2 | 0 | 0 |
| Medium | 0 | 5 | 0 |
| Low | 0 | 8 | 4 |
Try-Catch is used when calling `addLiquidityETH()`, with a revert caught and returning instead of reverting the transaction. However, prior to this call, an amount of tokens are swapped for native tokens. This action will not be reverted and this amount of native token will remain in the contract. While this amount can be rescued, it is not ensured to be allocated to liquidity. In addition, the accounting variables `tokensForTax` are not adjusted, so that they do not handle the amount of tokens that were converted and not succesfully added to liquidity.
Open the reportSome restrictions can be bypassed by swapping tokens to the router and then getting tokens from the router. When the tokens are transferred to the router, the attacker uses the feature of the router function ***`removeLiquidityETHSupportingFeeOnTransferTokens`***, which will send all the specified tokens in the router to a specified address. Because the router is not supposed to receive tokens for any user other than remove liquidity.
Open the reportThe check `require(_holderLastTransferBlock[tx.origin] + 30 < block.number, "Transfer Delay");` is used to try to delay transfers. However, as `tx.origin` is used, a user can avoid this delay by giving approval to different accounts, which can then transfer tokens on their behalf via `transferFrom()`. As the other accounts execute a transaction to call `transferFrom()`, they will be the `tx.origin`, and thus not be subjected to the delay of others.
Open the reportThe linked statement transfers the native token leftovers in `BabyNeiro` contract. Because the `address.call()` function returns false if the aforementioned transaction is failed, the local variable `success` should be checked or using `address.transfer()` which reverts when transaction is failed.
Open the reportThe smart contract does not check or store the return value of an external call in a local or state variable, which may introduce vulnerabilities due to the unhandled outcome. ```solidity=856 try dexRouter.addLiquidityETH{value: newBalance}( address(this), secondMath, 0, 0, DEAD, block.timestamp ){} catch {return;} ```
Open the reportThe transaction may be charged fees, so the max holding of the receiver should be the sum of the held tokens and the amount received from the transfer. The fees should not necessarily be included in the max holding. ```solidity=768 require(amount + balanceOfTo <= _txLimits.walletLimit, "Max Wallet"); ``` - Max holding is checked. ```solidity=746 amount -= handleTax(from, to, amount); ``` - Receiving amount is adjusted. ```solidity=302 _balances[to] += amount; ``` - Balance is increased by the adjusted amount.
Open the reportPrivileged functions should include emittance of corresponding events.
Open the reportA sandwich attack can occur when an attacker notices a transaction involving token swaps or liquidity additions that lacks slippage restrictions or minimum output amount settings. The attacker can exploit this by frontrunning the transaction to purchase one of the assets, thereby manipulating the exchange rate, and then backrunning the transaction to sell the asset for a profit. The referenced functions are invoked without setting slippage restrictions or minimum output amounts, making transactions that trigger these functions particularly vulnerable to sandwich attacks, especially when large input amounts are involved.
Open the reportIf `newNumInTokens` is too high in functions `updateWalletLimit()` or `updateTransactionLimit()` then the multiplication of the value by `10**decimals()` will cause an overflow when casting the value to type `uint128`.
Open the reportTransaction limits are only checked if one of the addresses involved in the transfer are not exempt from fees. Some addresses may be set to be exempt from fees but still have a transaction limit. For example, the `dexRouter` is set to be exempt from fees, but is not exempt from transaction limits.
Open the reportValue `doNothing` is initialized at 0 and can be updated by anyone to add a value of 2 to its previous state each time it is called. It appears variable `doNothing` is not used within the contract. It appears variable `antiMevEnabled` is not used within the contract.
Open the reportThe smart contract contains one or more values that are not used, which can lead to unnecessary complexity and reduced maintainability. ```solidity=866 totalTokensToSwap -= tokensForTaxMem.tokensForLiquidity; ``` - The variable `totalTokensToSwap` is never used after this update.
Open the reportIf the call to `addLiquidityETH` fails during the try-catch logic, then the function `convertTaxes()` will return without further update. This will cause an inconsistency because `contractBalance` and `totalTokensToSwap` will not be updated even though about half of the `liquidityTokens` has been removed through the prior call to `swapTokensForETH(firstmath)`.
Open the report| Address | Chain | Source code |
|---|---|---|
| 0x6cdd…c4540x6cdd08de79231a1957f205a3fe5cf9dbf4b0c454 | Chain: BNB Chain | Source code: Verified source |
Is this your project? Show this record on your own website. The label states what the record holds, links to this page and updates by itself. It is free and needs no sign-in.
Automatic: the three strongest facts of this project’s own record (its last audit and two more), highlighted. They update with the record. Picking a fact turns Automatic off.
<head><script src="https://widget.trustblock.run/project-widget.min.js" defer></script></head><body><divdata-tb-project-widgetdata-tb-project-slug="baby-neiro"></div></body>
Paste the code where the label should appear. It uses no API credit and updates by itself.
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