Likely access control hook on Ethereum

Uniswap v4 Hook Contract 0x040c7b3580f412e7714a511f533eea0feeeeca00 on Ethereum · Access control

Volume (24h)
$0
Value locked (TVL)
$0
All-time volume
$0
Pools using this hook
1
Swaps (24h)
0 (0 traders)
Total swaps
0

What it does

A hook that runs custom bookkeeping before liquidity is added or removed from its pool, with no swap-time behaviour decoded.

How it works step by step

  • Enables beforeAddLiquidity and beforeRemoveLiquidity callbacks only
  • Writes to a single mapping at storage slot 0 during both liquidity callbacks
  • Reads the same mapping via view selector 0x2a9b665f
  • Exposes the standard v4 hook view functions getHookPermissions and poolManager
  • Does not implement swap, fee override or donate logic based on the decoded selectors
Swap behaviour
No swap callbacks.
Liquidity behaviour
beforeAddLiquidity and beforeRemoveLiquidity are implemented and write to a single mapping(uint256 => uint256) at storage slot 0, apparently keyed by a value derived from the liquidity call; the exact bookkeeping logic cannot be determined without source.
Fee behaviour
Uses the pool's static fee.
Owner & admin controls
No admin controls found.

Enabled Uniswap v4 callbacks

beforeAddLiquidity, beforeRemoveLiquidity

beforeAddLiquidity runs before liquidity is added and records state in slot 0; beforeRemoveLiquidity runs before liquidity is removed and also updates slot 0; no other callbacks are enabled.

Security & trust assessment

Risk level: low, estimated (decoded bytecode, low confidence).

Who controls it: No owner or privileged role was identified in the decoded functions, so no privileged key was found that could alter user outcomes.

Risk to user funds: The decoded callbacks only touch internal storage and do not show token transfers or return deltas, so the hook does not appear able to hold or move pool funds; a revert inside the liquidity callbacks could still block add or remove operations, which cannot be ruled out without source.

Security findings

  • [info] Narrow permission set: Only two liquidity callbacks are enabled, and the hook has no swap callbacks, so it does not directly intercept swaps or move pool tokens.
  • [info] Standard hook scaffolding, no admin surface found: The hook implements a HookNotImplemented error and a getHookPermissions view, consistent with standard v4 hook scaffolding; no upgrade or ownership functions were decoded.
  • [low] Unverified liquidity gating logic: The mapping written in beforeAddLiquidity and beforeRemoveLiquidity is not obviously gating add or remove operations from the decoded selectors, but the exact revert conditions could not be verified without source.

Contract details

Verified source
No
Bytecode size
2,141 bytes
Upgradeable proxy
No

Pools using Likely access control hook