Audit Comp | eBTC-logo

Audit Comp | eBTC

eBTC is a collateralized crypto asset soft pegged to the price of Bitcoin and built on the Ethereum network. It is based on the Liquity protocol and backed exclusively by Staked Ether (stETH). The protocol is designed with an immutable core with minimized counterparty reliance and governance.

ETH
Defi
Lending
Synthetic Assets
Solidity
JavaScript

Status

Finished
Rewards Pool
$200,000
Vault TVL
To be determined
Started
19 February 2024
Ended
04 March 2024
Rewards Token
USDC
nSLOC
5,000
  • Triaged by Immunefi

  • PoC required

  • Vault program

Select the category you'd like to explore

Assets in Scope

Target
Primacy Of Impact
Type
Smart Contract
Added on
20 February 2024
Target
Type
Smart Contract - ActivePool.sol - 224 nSLOC
Added on
19 February 2024
Target
Type
Smart Contract - BorrowerOperations.sol - 754 nSLOC
Added on
19 February 2024
Target
Type
Smart Contract - CdpManager.sol - 588 nSLOC
Added on
19 February 2024
Target
Type
Smart Contract - LiquidationLibrary.sol - 710 nSLOC
Added on
19 February 2024
Target
Type
Smart Contract - CollSurplusPool.sol - 95 nSLOC
Added on
19 February 2024
Target
Type
Smart Contract - EBTCToken.sol - 223 nSLOC
Added on
19 February 2024
Target
Type
Smart Contract - Governor.sol - 127 nSLOC
Added on
19 February 2024
Target
Type
Smart Contract - PriceFeed.sol - 496 nSLOC
Added on
19 February 2024
Target
Type
Smart Contract - SortedCdps.sol - 399 nSLOC
Added on
19 February 2024
Target
Type
Smart Contract - EbtcFeed.sol - 105 nSLOC
Added on
19 February 2024
Target
Type
Smart Contract - ChainlinkAdapter.sol - 93 nSLOC
Added on
19 February 2024

Impacts in Scope

Proof of Concept (PoC) Requirements

A PoC, demonstrating the bug's impact, is required for this program and has to comply with the Immunefi PoC Guidelines and Rules.

Impacts caused by exploiting external dependencies

Critical & High severity impacts caused by exploiting external dependencies (such as Chainlink oracles and OpenZepplin libraries) are considered valid and in-scope, however they will be downgraded to Medium severity from the assessed impact.

Medium & Low severity impacts caused by exploiting external dependencies (such as Chainlink oracles and OpenZepplin libraries) are considered invalid and out-of-scope from the assessed impact.

Feasibility Limitations

For a Critical or High severity impact related to Loss of Yield, Precision Loss or insolvency the issue needs to demonstrate a loss higher than $500 with a 2 stETH Cdp (which would be the minimal threshold for insolvency for eBTC).

Magnitude matters when evaluating the validity of Critical & High severity impacts. Notably when discussing theft of funds, protocol insolvency, and theft of unclaimed yield. With this protocol, assume:

  • System TVL is between $1m and $1b at $2500 ETH. Meaning 400 stETH to 400,000 stETH total collateral
  • Absolute value of loss must be greater than 10% to qualify as protocol insolvency because any damage below 10% will not cause protocol insolvency in the worst case scenario due to the minimum Collateral Ratio being 110%.
  • 100,000 maximum Cdps
  • No more than 36,500 rebases and 10,000 bad debt redistribution events

POCs that demonstrate impacts with conditions outside of this range will be considered valid but downgraded to Medium severity due to practical infeasibility.

Miscellaneous Policies

Eligibility Criteria

Security researchers who wish to participate must adhere to the rules of engagement set forth in this program and cannot be:

  • On OFACs SDN list
  • Official contributors that are currently involved (past contributors may participate)

Responsible Publication

Whitehats may publish their bug reports after they have been fixed & paid, or closed as invalid, with the following exceptions:

  • Bug reports in mediation may not be published until mediation has concluded and the bug report is resolved.

Immunefi may publish bug reports submitted to this audit competition and a leaderboard of the participants and their earnings.

Feasibility Limitations

The project may be receiving reports that are valid (the bug and attack vector are real) and cite assets and impacts that are in scope, but there may be obstacles or barriers to executing the attack in the real world. In other words, there is a question about how feasible the attack really is. Conversely, there may also be mitigation measures that projects can take to prevent the impact of the bug, which are not feasible or would require unconventional action and hence, should not be used as reasons for downgrading a bug's severity.

Therefore, Immunefi has developed a set of feasibility limitation standards which by default states what security researchers, as well as projects, can or cannot cite when reviewing a bug report.

Severity
Critical
Title

Manipulation of governance voting result deviating from voted outcome and resulting in a direct change from intended effect of original results

Severity
Critical
Title

Direct theft of 2 stETH worth of any user funds, whether at-rest or in-motion, other than unclaimed yield

Severity
Critical
Title

Permanent freezing of funds

Severity
Critical
Title

Protocol insolvency

Severity
High
Title

Theft of unclaimed yield

Severity
High
Title

Permanent freezing of unclaimed yield

Severity
High
Title

Temporary freezing of funds for at least 15 minutes

Severity
Medium
Title

Smart contract unable to operate due to lack of token funds

Severity
Medium
Title

Block stuffing

Severity
Medium
Title

Griefing (e.g. no profit motive for an attacker, but damage to the users or the protocol)

Severity
Medium
Title

Theft of gas

Severity
Medium
Title

Unbounded gas consumption

Out of scope

Program's Out of Scope information

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

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

Prohibited Activities:

  • Any testing on mainnet or public testnet deployed code; all testing should be done on local-forks of either public testnet or mainnet
  • Any testing with pricing oracles or third-party smart contracts
  • Attempting phishing or other social engineering attacks against our employees and/or customers
  • Any testing with third-party systems and applications (e.g. browser extensions) as well as websites (e.g. SSO providers, advertising networks)
  • Any denial of service attacks that are executed against project assets
  • Automated testing of services that generates significant amounts of traffic
  • Public disclosure of an unpatched vulnerability in an embargoed bounty