Swell-logo

Swell

Swell is a permissionless, non-custodial, and liquid (re)staking protocol designed for stakers, node operators, and the broader Ethereum ecosystem.

ETH
Defi
Asset Management
Liquid Staking
Staking
Solidity
Maximum Bounty
$250,000
Live Since
27 April 2023
Last Updated
18 November 2024
  • PoC required

Select the category you'd like to explore

Assets in Scope

Target
Type
Smart Contract - Zap (Swell L2)
Added on
23 September 2024
Target
Type
Smart Contract - Staking (Swell L2)
Added on
23 September 2024
Target
Type
Smart Contract - Aera Strategy (swBTC)
Added on
23 September 2024
Target
Type
Smart Contract - Tokenized Strategy (swBTC)
Added on
23 September 2024
Target
Type
Smart Contract - Withdraw Limit Module (swBTC)
Added on
23 September 2024
Target
Type
Smart Contract - Delayed Withdraw (swBTC)
Added on
23 September 2024
Target
Type
Smart Contract - Delayed Withdraw Auth (swBTC)
Added on
23 September 2024
Target
Type
Smart Contract - Vault (swBTC token)
Added on
23 September 2024
Target
Type
Smart Contract - Registry (swBTC)
Added on
23 September 2024
Target
Type
Smart Contract - Registry Factory (swBTC)
Added on
23 September 2024
Target
Type
Smart Contract - Release Registry (swBTC)
Added on
23 September 2024
Target
Type
Smart Contract - Keeper (swBTC)
Added on
23 September 2024

Impacts in Scope

Severity
Critical
Title

Theft of users funds intended to be staked

Severity
Critical
Title

Theft of funds in the Swell owned withdrawal addresses

Severity
Critical
Title

Theft of funds in the Swell owned deposit contract

Severity
Critical
Title

Theft of funds in transit from deposit contract to Beacon Chain contract

Severity
Critical
Title

Manipulation of Swell’s ETH to swETH/rswETH conversion rate leading to the attacker obtaining a disproportionate amount of swETH/rswETH for staking ETH (> 10% difference compared to the last valid rate)

Severity
Critical
Title

Attacker can cause the deposit of 32 ETH to the Beacon Chain to fail, losing funds

Severity
Critical
Title

Execute arbitrary system commands

Severity
Critical
Title

Retrieve sensitive data/files from a running server, such as: /etc/shadow, database passwords, blockchain keys, (this does not include non-sensitive environment variables, open source code, or usernames)

Severity
Critical
Title

Taking down the application/website

Severity
Critical
Title

Taking down the NFT URI

Severity
Critical
Title

Taking state-modifying authenticated actions (with or without blockchain state interaction) on behalf of other users without any interaction by that user, such as: Changing registration information, Commenting, Voting, Making trades, Withdrawals, etc.

Severity
Critical
Title

Changing the NFT metadata

Out of scope

Program's Out of Scope information
  • Best practice critiques

  • In general - any functionality related to LSTs. Includes the following (but not limited to):

    • rswETH - depositViaDepositManager
    • Deposit Manager - depositLST
      
    • Deposit Manager - transferTokenForDepositIntoStrategy
      
    • Deposit Manager - setExchangeRateProvider
      
    • EigenLayerManager - depositIntoEigenLayerStrategy
      
    • EigenLayerManager - setEigenLayerStrategy
      
    • EigenLayerManager - completeQueuedWithdrawal
      
    • StakerProxy - depositIntoStrategy
      
    • StakerProxy - withdrawERC20FromPod
      
    • StakerProxy - completeQueuedWithdrawal
      
    • StakerProxy - sendTokenBalanceToDepositManager
      
    • RepricingOracle - Any implementation involving LSTs
      
Default Out of Scope and rules

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

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
Severity
Min. - Max.
Critical
$250k
High
$2.5k -$5k
Medium
$1.5k -$2.5k
Low
$1k
Total Assets in Scope
30
Total Impacts in Scope
36