Maverick Protocol security record

Arbitrum, Base, BNB Chain, Ethereum, Polygon (POS), Scroll, zkSyncmav.xyzX

As of 14 Oct 2026, Maverick Protocol has 3 audit reports by 2 security firms on Trustblock; the latest is by ABDK Consulting, dated 11 May 2023. Those reports list no open critical findings.

Critical findings
No open critical findings
Across 3 reports.
Open the latest report
Your label, live
Get the label for your site

Record last updated . It holds audits and findings, contracts and incidents up to Oct 2026. Trustblock does not review code.

Audits3

Newest first

AuditSecurity firmDateScopeCritical findingsReport
Maverick Phase 2 auditSecurity firm: ABDK ConsultingDate: Scope: Not recorded. See the reportNo open critical findingsOpen · GitHub
Maverick Protocol auditSecurity firm: ABDK ConsultingDate: Scope: Not recorded. See the reportNo open critical findingsOpen · GitHub
Maverick ProtocolSecurity firm: CertiKDate: Scope: Files named in the reportNo open critical findingsOpen · skynet.certik.com

Findings191

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

SeverityOpenAcknowledgedFixed
Critical000
High029
Medium0715
Low06593
High(POSSIBLY CRITICAL) The ‘encodePacked‘ function simply concatenates arrays, so the same output may be produced for different inputs, resulting in collisions in ‘hash‘ value.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
HighIn case ”propertionD18” is greater that 1e18, this formula effectively decreases it to 1e18.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
HighThe value ”binIds.length” is read from the storage multiple times.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
HighThe value ”rewardData.length” is read from the storage multiple times.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
HighThere is no range check for these arrays.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
HighThese constant names are useless.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
HighThis function allows multiple initialization.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
HighThese calls revert on failed transfer, thus inability to transfer one token makes it impossible to claim fees in the other token.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
HighThis recursion does not scale and may exceed the gas limit, thus making the liquidity removal impossible.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
MediumOnly the first element of this array is actually populated.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
Show 10 more
MediumThe result of this calculation could be greater than one.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
MediumThe returned value is ignored.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
MediumThere is no length check for these arrays.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
MediumThis function allows a transferrer to transferring tokens from arbitrary addresses.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
MediumThis function is very dangerous as it allows the minter to burn tokens from arbitrary accounts without explicit approval.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
MediumUsing compiler-enforced underflow protection to check business-level constraints is a bad practice.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
MediumIn case deltaBOptimal > _deltaB and _existingReserveB <= 0, the value of ”deltaBOptimal” will not be adjusted.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
MediumIt is not ensured that tokenA and tokenB are different.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
MediumOverflow is possible when converting to ”int256”.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
MediumOverflow is possible when performing unsafe type conversions.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
Show 10 more
MediumSuboptimal in PoolInspector.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
MediumThis loop doesn’t scale.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
Medium`Checkpoint.initialize()` Can Be Called MultipleMaverick Protocol · CertiK · 21 Apr 2022Fixed

In library Checkpoint, the function `initialize()` is used to initialize `buffer.maxSize` and to push the first Checkpoint instance to `buffer.list`. Currently this function can be called after the first valid call, which would still push new instances but bypass the updating logics in `append()`.

Open the report
Medium`Pool.initialize()` Can Be Called Multiple TimesMaverick Protocol · CertiK · 21 Apr 2022Fixed

In contract Pool, the function `initialize()` is possible to be called multiple times, if the input `_quote` is zero address.

Open the report
LowBad datatype in Distributor.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowBad datatype in PoolPositionAndRewardFactory.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowBad datatype in RewardPusher.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowBad naming in PoolPositionBase.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowBad naming in RewardVote.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowBad naming in VoterToken.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
Show 10 more
LowProcedural in PoolPositionAndRewardFactory.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowReadability in PoolPositionAndRewardFactory.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowReadability in RewardOpen.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowSuboptimal in Poll.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowSuboptimal in PoolPositionAndRewardFactory.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowSuboptimal in PoolPositionAndRewardFactory.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowSuboptimal in PoolPositionRouter.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowSuboptimal in RewardPusher.solMaverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowThese functions should emit some events.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowThese functions should emit some events.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
Show 10 more
LowThese functions should emit some events.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowThis compiler version requirement is inconsistent with other files.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowThis compiler version requirement is inconsistent with other files.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowThis compiler version requirement is inconsistent with other files.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowThis event is emitted even when ”amount” is zero.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowThis function should emit some event.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowThis variable is redundant.Maverick Phase 2 audit · ABDK Consulting · 11 May 2023Fixed

The report gives no description here.

Open the report
LowBad datatype in BinMap.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in BinMap.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in Deployer.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
Show 10 more
LowBad datatype in Factory.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in Factory.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in IFactory.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in IFactory.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in IFactory.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in IPool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in Math.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
Show 10 more
LowBad datatype in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowBad datatype in PoolInspector.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowCalculating the scale factors each time is suboptimal.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowDefining a top-level constant in a file named after a library makes it harder to navigate through the code.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowDefining top-level constants in a file named after a contract makes it harder to navigate through the code.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowDefining top-level constants in a file named after a library makes it harder to navigate through the code.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowDefining top-level constants in a file named after a library names it harder to navigate through the code.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
Show 10 more
LowProcedural in BinMap.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowProcedural in PoolInspector.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowReadability in BinMap.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowReadability in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowReadability in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowReadability in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowSuboptimal in Bin.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowSuboptimal in BinMap.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowSuboptimal in BinMap.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowSuboptimal in BinMap.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
Show 10 more
LowSuboptimal in BinMap.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowSuboptimal in BinMap.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowSuboptimal in Cast.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowSuboptimal in Cast.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowSuboptimal in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowSuboptimal in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe argument name is confusing, as it actually contains a bit index in a bitmap, rather than a tick.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe expression ”bins[i]” is calculated twice.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe expression ”tokenAmount.toInt128()” is calculated twice.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe function name is confusing as the function not always creates a new bin but in some cases may return an existing bin.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
Show 10 more
LowThe names of these constants are too generic.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe number forma of this field is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe number format of the returned value is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe number format of the returned values is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe number format of these arguments is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe number format of these arguments is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe number format of these values is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe number format of this argument is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe number format of this variable is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe return type ”uint16” looks odd here, as a result of this function always fits into 8 bits.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
Show 10 more
LowThe semantics of the keys in this mapping is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe semantics of the keys in this mapping is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe semantics of the returned value is unclear.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe semantics of these fields and their valid values are unknown.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThe type of these arguments should be ”IERC20”.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThese lines are redundant, as the maximum allowed tick value is 0x706FC.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThis recursion doesn’t scale and could exceed the block gas limit.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowThis should be calculated only when delta.excess <= 0.Maverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowUnclear behavior in Factory.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
LowUnclear behavior in IPool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
Show 7 more
LowUnclear behavior in Pool.solMaverick Protocol audit · ABDK Consulting · 13 Oct 2022Fixed

The report gives no description here.

Open the report
Low`public` Function Could Be Declared as `external`Maverick Protocol · CertiK · 21 Apr 2022Fixed

The function(s) which are never called internally within the contract could have external visibility for gas optimization. e.g. Checkpoint.sol: `twap()`

Open the report
LowDivision Before MultiplicationMaverick Protocol · CertiK · 21 Apr 2022Fixed

Performing integer division before multiplication truncates the low bits, which could potentially lead to the precision loss. Checkpoint.sol: `twap()` ```solidity uint256 previousU = (start.cumulative - previous.cumulative) / (start.timestamp - previous.timestamp); ``` ```solidity cumulativeDiff += (start.timestamp - startTimestamp) * previousU; ```

Open the report
LowLack of Zero Address ChecksMaverick Protocol · CertiK · 21 Apr 2022Fixed

Addresses should be checked before assignment or external call to make sure they are not zero addresses.

Open the report
LowPotential Error in Function `Checkpoint.append()`Maverick Protocol · CertiK · 21 Apr 2022Fixed

In function `append()`, it seems possible that when `append()` is called, and when the function wants to immediately append a new buffer, the `buffer.end - 2` operation would lead to error. E.g. when `buffer.end` is `1`. ```solidity if (previous.timestamp == timestamp) { current = buffer.list[buffer.end - 1]; previous = buffer.list[buffer.end - 2]; ... ``` Also, the `diff` would be `0` when the condition of `previous.timestamp == timestamp` fulfills.

Open the report
LowTypos in Comments and Variable NamesMaverick Protocol · CertiK · 21 Apr 2022Fixed

`boundries` <> `boundaries`

Open the report
LowUnused Struct Field / Function ParameterMaverick Protocol · CertiK · 21 Apr 2022Fixed

Checkpoint.sol: The `uint16 array` field in struct `Buffer` is never used. ZeroExRouter.sol: The `bytes calldata auxiliaryData` parameter in functions `sellTokenForToken()`, `sellEthForToken()` and `sellTokenForEth()` is never userd.

Open the report

Contracts

No deployed address is recorded for these audits.

The reports name a repository or files. Open a report to see its scope.

The repositories and files the reports name

Show this on your site

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.

Content

Facts

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.

Fixed as
Language

Style

Layout
Theme
Accent
Corners

Format

Size
Date
Embed as
HTML
<head>
<script src="https://widget.trustblock.run/project-widget.min.js" defer></script>
</head>
<body>
<div
data-tb-project-widget
data-tb-project-slug="maverick-protocol"
></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