Idle is a decentralized protocol dedicated to bringing automatic asset allocation and aggregation to the interest-bearing tokens economy. This protocol bundles stable crypto-assets (stablecoins) into tokenized baskets that are programmed to automatically rebalance based on different management logics.
The Idle Protocol employs a strategy-token system. Every allocation strategy has its own set of tokens that represent a pool of yield-generating assets spread across different DeFi protocols. These tokens represent the investor’s proportional ownership of the whole pool and the interest accrued over time. This issuing method is similar to traditional mutual funds shares structure, and it allows Idle to be non-custodial.
Currently, Idle uses two different allocation strategies:
Best-Yield: this strategy combines multiple money markets to automatically provide the highest interest rates, beating the best traditional offerings across interest-bearing tokens and DeFi protocols.
Risk-Adjusted: this strategy automatically changes the asset allocation in order to find the optimal mix between risk scores and yield.
Consequently, users can hold IdleTokens related to a specific strategy and a specific stablecoin.
Idle aims to unlock the power of decentralized finance for everyone by a single vehicle that automatically rebalances between underlying providers to always maintain the highest rates or the optimal risk/return allocation.
The bug bounty program is focused around the Idle protocol V4 smart contracts and the prevention of loss of user funds. It was created due to an approved poll within the Idle community and is further covered by the Armor Alliance Bug Bounty Challenge.
Rewards by Threat Level
Rewards are distributed according to the impact of the vulnerability based on the Immunefi Vulnerability Severity Classification System. 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.
The final reward for critical bounty payouts is capped at 10% of the funds at risk based on the vulnerability reported.
Theft of yield or interest is considered as Medium but may be considered High depending on the amount of funds at risk.
Best practices critiques are not accepted under this program. This None/Very Low level is for bugs that may be considered “Low” but have an even lower impact level.
The likelihood of exploitability is also taken into consideration in the determination of the final payout amount based on the severity of the bug reported according to the table below:
Payouts are handled by Idle Finance governance directly and are denominated in USD. Payouts under $10,000 are done in USDC. When payouts are over $10,000, the first $10,000 is paid in USDC and then the rest are paid in IDLE up to the total of $250 000. For payments above USD 250 000, the remainder is paid in $ARMOR by the ArmorFi team under the Armor Alliance Bug Bounty Challenge with a vesting period of up to 24 months.
Smart Contracts and Blockchain
- up to USD $500,000
- up to USD $50,000
- up to USD $10,000
- up to USD $5,000
- USD $1,000
Assets in Scope
Governance and Utilities contracts are not covered under this bug bounty program.
- Smart contract
We are especially interested in receiving and rewarding vulnerabilities of the following types:
- Logic errors
- including user authentication errors
- Solidity/EVM details not considered
- including integer over-/under-flow
- including unhandled exceptions
- Trusting trust/dependency vulnerabilities
- including composability vulnerabilities
- Oracle failure/manipulation
- Novel governance attacks
- Economic/financial attacks
- including flash loan attacks
- Congestion and scalability
- including running out of gas
- including block stuffing
- including susceptibility to frontrunning
- Consensus failures
- Cryptography problems
- Signature malleability
- Susceptibility to replay attacks
- Weak randomness
- Weak encryption
- Susceptibility to block timestamp manipulation
- Missing access controls / unprotected internal or debugging interfaces
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)
- Incorrect data supplied by third party oracles
- Not to exclude oracle manipulation/flash loan attacks
- Basic economic governance attacks (e.g. 51% attack)
- Lack of liquidity
- Best practice critiques
- Sybil attacks
The following activities are prohibited by 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