Status DataClose notification
Bug bounty Triaged by HackenProof

Citrea Protocol & Smart Contracts: Program info

Citrea Protocol & Smart Contracts

Company: Citrea

Scope Review:
346977
Submissions:
751
Total rewards:
$11,200
Reputation
50 points required
KYC
Required
PoC
Required
Submission fee
$5

Program is: active now

Live

Citrea is the first rollup that enhances the capabilities of Bitcoin blockspace with zero-knowledge technology. Citrea is the only scalability solution that uses Bitcoin both as a data availability and a settlement layer, via its BitVM-based trust-minimized two-way peg program - Clementine. Citrea is fully EVM compatible, enabling all EVM developers to easily build on Bitcoin. For more information about Citrea, please visit https://citrea.xyz. Citrea provides rewards in USDC on Ethereum, denominated in USD. For more details about the payment process, please view the Rewards by Threat Level section further below.

Scope

In scope
TargetTypeSeverity

Blockchain/DLT - Official RPC

ProtocolCritical

Blockchain/DLT - Node / protocol codebase

ProtocolCritical

Blockchain/DLT - Clementine codebase: bridge operator, verifiers, aggregator, watchtower; BitVM-verified circuit

InfrastructureCritical
Smart ContractCritical

System Contracts Bridge Proxy

Smart ContractCritical

System Contracts Base Fee Vault Proxy

Smart ContractCritical

Focus Area

Impacts in Scope

Below are the impacts accepted by default under this bug bounty program. Nevertheless, Citrea team is open to considering any impactful out-of-scope items on a case-by-case basis, following the Primacy of Impact spirit of this Program.

Blockchain/DLT - Citrea Core Rollup Protocol

  • Critical. Invalid state transition accepted as valid (soundness bug in proving/verifying/transition logic) leading to direct loss of funds or protocol insolvency
  • Critical. Bitcoin-anchoring verification failure: accepting a batch/commitment/proof that should not be accepted (e.g., incorrect parsing/validation of Bitcoin-derived inputs) leading to incorrect canonical state
  • Critical. Direct loss of funds
  • Critical. Permanent freezing of funds (fix requires hardfork)
  • Critical. Breaking the Batch Proof. Any diversion between "native" L2 block execution vs. "circuit" L2 block execution
  • Critical. Split in Light Client Proofs. The Light Client Proof circuit is designed to be deterministic: a Bitcoin block will always yield the same Citrea state upon successful proving. Any behaviour that breaks this assumption can be used to attack Bridge operators.
  • High. Total network shutdown: the network cannot confirm new transactions due to a protocol/client bug (beyond “RPC is down”)
  • High. Reorg-handling bug (Bitcoin-side or Citrea-side) that causes prolonged halt, inconsistent views, or unsafe rollback behavior
  • Medium. Unbounded gas/resource consumption leading to severe degradation or halting of critical components (sequencer/full nodes) without direct theft
  • Medium. A bug in the respective layer 0/1/2 network code that results in unintended smart contract behavior with no concrete funds at direct risk
  • Medium. Block stuffing for profit / griefing that meaningfully harms availability or user experience
  • Low. Issues which require an operator to be dishonest for exploitation.
  • Low. Minor correctness issues that don’t rise to meaningful economic/security impact

Blockchain/DLT - Clementine Bridge Protocol

Citrea has a Clementine bridge, which is a combination of Blockchain/DLT and Smart contracts items, therefore it is in a separate list below:

  • Critical. Direct theft of BTC/cBTC via deposit/withdraw verification bugs (e.g., forging inclusion proofs, bypassing script checks, replay/duplicate withdrawal intents)
  • Critical. Permanent freezing of bridged funds (cannot be fixed by upgrade / cannot be recovered within the documented model)
  • Critical. Direct loss of funds
  • High. Role/pausing logic vulnerabilities that allow an unprivileged attacker to bypass safety controls (note: “attacker has the owner key” stays out-of-scope; “role escalation / auth bypass” stays in-scope)
  • High. Clementine CLI bugs that allow wallet loss, incorrect deposit address generation, or withdrawal losses
  • High. Bugs with Clementine presigning, causing failure of operator’s reimbursements failed
  • Medium. Griefing that causes large-scale disruption of deposits/withdrawals without theft other than by the Aggregator (e.g., forcing funds into failed deposit paths, forcing costly replacement flows)
  • Low. Issues which require an operator to be dishonest for exploitation.
  • Low. Non-impactful correctness issues (UX-only, docs mismatch, etc.)
  • Low. Clementine Tx Sender failures (Usually these txs can be sent manually)

Smart Contracts

  • Critical. Direct theft of any user funds, whether at-rest or in-motion
  • Critical. Permanent freezing of funds
  • Critical. Predictable or manipulable RNG that results in abuse of the principal or NFT
  • Critical. Protocol insolvency
  • High. Permanent/long-term freezing of bridged assets/messages due to logic bugs (fixable by upgrade)
  • High. Temporary freezing of funds
  • High. System Smart contracts are unable to operate
  • Medium. Griefing (e.g. no profit motive for an attacker, but damage to the users or the protocol)
  • Medium. Theft of gas
  • Medium. Unbounded gas consumption
  • Low. Minor issues not impacting asset safety or liveness

Out of Scope & Rules

These impacts are out of scope for this bug bounty program.

All Categories

  • Impacts requiring attacks that the reporter has already exploited themselves, leading to damage
  • Impacts caused by attacks requiring access to leaked keys/credentials
  • Impacts caused by attacks requiring access to privileged addresses (governance, strategist) except in such cases where the contracts are intended to have no privileged access to functions that make the attack possible
  • Impacts relying on attacks involving the depegging of an external stablecoin where the attacker does not directly cause the depegging due to a bug in code
  • Mentions of secrets, access tokens, API keys, private keys, etc. in Github will be considered out of scope without proof that they are in-use in production
  • Best practice recommendations
  • Feature requests
  • Impacts on test files and configuration files unless stated otherwise in the bug bounty program
  • Impacts requiring phishing or other social engineering attacks against project's employees and/or customers

Blockchain/DLT & Smart Contract Specific

  • Incorrect data supplied by third party oracles
  • Not to exclude oracle manipulation/flash loan attacks
  • Impacts requiring basic economic and governance attacks (e.g. 51% attack)
  • Lack of liquidity impacts
  • Impacts from Sybil attacks
  • Impacts involving centralization risks
  • Reports that are already covered under the LayerZero Bug Bounty Program will be forwarded to LayerZero (and paid under LayerZero’s program if accepted)

Program Rules

Rewards are distributed according to the impact of the vulnerability based on the HackenProof Vulnerability Classification.

Reward Calculation for Critical Level Reports

For critical Blockchain/DLT bugs and Smart Contract Bugs, the reward amount is 10% of the funds directly affected, capped at the maximum critical reward 250,000 USD. However, a minimum reward of 25,000 USD is to be rewarded in order to incentivize security researchers against withholding on a bug report.

For critical Blockchain/DLT bugs with a non-funds-at risk impact, the reward will be paid out as follows:

  • Network not being able to confirm new transactions (total network shutdown)
  • Permanent freezing of funds (fix requires hardfork) - 50,000 USD

For critical web/apps bugs, reports will be rewarded with 25,000 USD, only if the report demonstrates wallet-drain or equivalent financial loss vector.

All other impacts that would be classified as Critical would be rewarded a flat amount of 10,000 USD. The rest of the severity levels are paid out according to the Impact in Scope table.

Repeatable Attack Limitations

  • If the smart contract where the vulnerability exists can be upgraded or paused, only the initial attack will be considered for a reward. This is because the project can mitigate the risk of further exploitation by upgrading or pausing the component where the vulnerability exists. The reward amount will depend on the severity of the impact and the funds at risk.
  • For critical repeatable attacks on smart contracts that cannot be upgraded or paused, the project will consider the cumulative impact of the repeatable attacks for a reward. This is because the project cannot prevent the attacker from repeatedly exploiting the vulnerability until all funds are drained and/or other irreversible damage is done. Therefore, this warrants a reward equivalent to 10% of funds at risk, capped at the maximum critical reward.

Reward Calculation for High Level Reports

High vulnerabilities concerning theft/permanent freezing of unclaimed yield/royalties are rewarded within a range of Reward - Smart contract - Min High to Reward - Smart contract - Max High depending on the funds at risk, capped at the maximum high reward.

In the event of temporary freezing, the reward doubles from the full frozen value for every additional 24h that the funds are temporarily frozen, up until a max cap of the high reward. This is because as the duration of the freezing lengthens, the potential for greater damage and subsequent reputational harm intensifies. Thus, by increasing the reward proportionally with the frozen duration, the project ensures stronger incentives for bug disclosure of this nature.

Reward Payment Terms

Payouts are handled by the Citrea team directly and are denominated in USD. However, payments are done in USDC on Ethereum.

Blockchain/DLT

  • Critical: 25,000 - 250,000 USD
  • High: 10,000-25,000 USD
  • Medium: 1,000-3,000 USD
  • Low: 100-1000 USD

Smart Contract

  • Critical: 25,000 - 250,000 USD
  • High: 10,000-25,000 USD
  • Medium: 1,000-3,000 USD
  • Low: 100-1,000 USD

Eligibility and Coordinated Disclosure

We are happy to thank everyone who submits valid reports which help us improve the security. However, only those that meet the following eligibility requirements may receive a monetary reward:

  • You must be the first reporter of a vulnerability.
  • The vulnerability must be a qualifying vulnerability
  • Any vulnerability found must be reported no later than 24 hours after discovery and exclusively through hackenproof.com
  • You must send a clear textual description of the report along with steps to reproduce the issue, include attachments such as screenshots or proof of concept code as necessary.
  • You must not be a former or current employee of us or one of its contractor.
  • ONLY USE the EMAIL under which you registered your HackenProof account (in case of violation, no bounty can be awarded)
  • Provide detailed but to-the point reproduction steps
  • AI-generated reports without runable PoC are not accepted under this program.

Disclosure Guidelines

  • Do not discuss this program or any vulnerabilities (even resolved ones) outside of the program without express consent from the organization
  • No vulnerability disclosure, including partial is allowed for the moment.
  • Please do NOT publish/discuss bugs

Documentation

  • Citrea’s codebase can be found at https://github.com/chainwayxyz and https://github.com/chainwayxyz/token-bridge/token-bridge
  • Documentation and further resources can be found on https://docs.citrea.xyz

Previous Audits

  • Citrea’s completed audit reports can be found at https://docs.citrea.xyz/security/audits-inquiries. Any unfixed vulnerabilities mentioned in these reports are not eligible for a reward