PoC Required
KYC required
Select the category you'd like to explore
Assets in Scope
Impacts in Scope
Direct theft of any user funds, whether at-rest or in-motion, other than unclaimed yield
Protocol insolvency
Permanent freezing of funds (that cannot be fixed by upgrade)
Direct and publicly triggerable loss of funds
Permanent stopping the priority queue
Permanent freezing of funds (that can be fixed by upgrade)
Underconstraints in the circuit that make invalid ZKsync OS executions provable
Circuit, node, or program mismatches that make valid ZKsync OS executions unprovable and require verification key regeneration
Theft of gas
Undocumented deviation from EVM behavior
Unbounded gas consumption
Griefing (e.g. no profit motive for an attacker, but damage to the users or the protocol)
Out of scope
The following ZKsync OS directories are out of scope because they are used for the Ethereum STF / Ethereum runner path, not the production ZKsync OS STF:
basic_bootloader/src/bootloader/transaction_flow/ethereum/basic_bootloader/src/bootloader/block_flow/ethereum/basic_system/src/system_implementation/ethereum_storage_model/
Only behavior reachable in the production ZKsync OS STF, built with the production feature set, is in scope. Reports that only affect the Ethereum STF, Ethereum runner, test-only configurations, or non-production feature sets are out of scope unless the report also demonstrates the same impact in the production ZKsync OS STF.
Smart Contract assets:
- Any finding whose exploitation requires Gateway to be enabled and operating as a settlement layer is out of scope, since Gateway is not currently enabled and all chains settle directly to L1. This applies only to the Gateway precondition — the same code, when reachable by an L1-settling chain, stays in scope.
- Broken link hijacking is out of scope.
- Attacks requiring changing the verifier key.
Proving system:
- Prover implementations and their supporting code are out of scope: zksync-airbender
prover/,gpu_prover/,witness_eval_generator/,gpu_witness_eval_generator/,trace_holder/,worker/,fft/, and the zksync-crypto-gpu crates (shivini,proof-compression,zksync-gpu-prover). A prover bug produces a proof that fails verification. - Witness generation, benchmarking, fixtures, examples and test tooling, including
cs/src/cs/witness_placer/and test files inside otherwise in-scope crates. - CLI orchestration and setup-generation utilities (zksync-airbender
tools/cli/, zkos-wrapperwrapper/src/{interface,wrapper,gpu}/andmain.rs). These compute the verification key rather than determine it. - Native SIMD implementations of the base field (
field/src/*avx*,field/src/*arm*) that are not part of the RISC-V recursion binary. - The Ethereum STF / Ethereum runner paths already listed above.
Blockchain/DLT 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
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 (including, but not limited to: governance and strategist contracts) without additional modifications to the privileges attributed
- 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


