Swim Protocol
Submit a BugProgram Overview
The Swim Protocol enables cross-chain swaps by establishing liquidity pools of two or more tokens across multiple blockchains. Their concept is based on existing designs from stableswap AMMs, but introduces a novel cross-chain component using Solana-based bridge Wormhole.
This approach reduces the current barriers faced by participants when performing cross-chain transactions, ultimately enabling true interoperability between various blockchain networks.
For more information about Swim Protocol, please visit https://swim.io/.
This bug bounty program is focused on their smart contracts, website and app and is focused on preventing:
- Thefts and freezing of principal of any amount
- Thefts and freezing of unclaimed yield of any amount
- Theft of governance funds
Rewards by Threat Level
Rewards are distributed according to the impact of the vulnerability based on the Immunefi Vulnerability Severity Classification System V2. This is a simplified 5-level scale, with separate scales for websites/apps and smart contracts/blockchains, encompassing everything from consequence of exploitation to privilege required to likelihood of a successful exploit.
All web/app bug reports and Critical/High smart contract bug reports must come with a PoC with an end-effect impacting an asset-in-scope in order to be considered for a reward. Explanations and statements are not accepted as PoC and code is required.
The following known issues are considered to be out-of-scope:
- All issues highlighted in the following audit report: https://swim.io/audits/kudelski.pdf
- Ignition hackathon password prompt (hard-coded “password”)
Swim Protocol only requires KYC to be done for bug bounty hunters who are US taxpayers submitting a report and wanting a reward. The information needed is a national ID scan along with a selfie.
The following web/app impacts are considered as low severity:
- Corrupted transfers sent
- Wrong token addresses
Payouts are handled by the Swim Protocol team directly and are denominated in USD. However, payouts are done in USDC.
Smart Contract
- Critical
- Level
- USD $100,000
- Payout
- High
- Level
- USD $25,000
- Payout
- Medium
- Level
- USD $5,000
- Payout
- Low
- Level
- USD $1,000
- Payout
Websites and Applications
- Critical
- Level
- USD $25,000
- Payout
- High
- Level
- USD $10,000
- Payout
- Medium
- Level
- USD $3,000
- Payout
- Low
- Level
- USD $1,000
- Payout
Assets in scope
- Smart Contract - InstructionsType
- Smart Contract - Amp_FactorType
- Smart Contract - CommonType
- Smart Contract - DecimalType
- Smart Contract - EntrypointType
- Smart Contract - ErrorType
- Smart Contract - InstructionType
- Smart Contract - LibType
- Smart Contract - Pool_FeeType
- Smart Contract - ProcessorType
- Smart Contract - StateType
- Smart ContractType
- TargetWebsites and ApplicationsType
All smart contracts of Swim Protocol can be found at https://github.com/swim-io. However, only those in the Assets in Scope table are considered as in-scope of the bug bounty program.
Prioritized Vulnerabilities
Impacts in Scope
Only the following impacts are accepted within this bug bounty program. All other impacts are not considered as in-scope, even if they affect something in the assets in scope table.
Smart Contracts/Blockchain
- Loss of user funds staked (principal) by freezing or theft
- Loss of governance funds
- Theft of unclaimed yield
- Freezing of unclaimed yield for at least 24 hours
- Smart contract gas drainage
- Smart contract fails to deliver promised returns
Web/App
- Redirected funds by address modification
- Site goes down
- Users spoofing other users
- Corrupted transactions sent
- Wrong token addresses
Out of Scope & Rules
The following vulnerabilities are excluded from the rewards for this bug bounty program:
- Attacks that the reporter has already exploited themselves, leading to damage
- Attacks requiring access to leaked keys/credentials
- Attacks requiring access to privileged addresses (governance, strategist)
Smart Contracts and Blockchain
- Incorrect data supplied by third party oracles
- Not to exclude oracle manipulation/flash loan attacks
- Basic economic governance attacks (e.g. 51% attack)
- Attacks resulting from vulnerabilities in Wormhole
- Lack of liquidity
- Best practice critiques
- Sybil attacks
- Centralization risks
Websites and Apps
- Theoretical vulnerabilities without any proof or demonstration
- Content spoofing / Text injection issues
- Self-XSS
- Captcha bypass using OCR
- CSRF with no security impact (logout CSRF, change language, etc.)
- Missing HTTP Security Headers (such as X-FRAME-OPTIONS) or cookie security flags (such as “httponly”)
- Server-side information disclosure such as IPs, server names, and most stack traces
- Vulnerabilities used to enumerate or confirm the existence of users or tenants
- Vulnerabilities requiring unlikely user actions
- URL Redirects (unless combined with another vulnerability to produce a more severe vulnerability)
- Lack of SSL/TLS best practices
- DDoS vulnerabilities
- Attacks requiring privileged access from within the organization
- Feature requests
- Best practices
The following activities are prohibited by this bug bounty program:
- Any testing with mainnet or public testnet contracts; all testing should be done on private testnets
- 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
- Automated testing of services that generates significant amounts of traffic
- Public disclosure of an unpatched vulnerability in an embargoed bounty