GMX-logo

GMX

GMX is a decentralized spot and perpetual exchange that supports low swap fees and zero price impact trades.

Arbitrum
Avalanche
Defi
AMM
DEX
JavaScript
Solidity
Typescript
Maximum Bounty
$5,000,000
Live Since
20 October 2021
Last Updated
08 April 2024
  • Triaged by Immunefi

  • PoC required

Select the category you'd like to explore

Assets in Scope

Target
Type
Added on
Smart Contract - AdlHandler
11 October 2023
Target
Type
Added on
Smart Contract - AdlUtils
11 October 2023
Target
Type
Added on
Smart Contract - BaseOrderUtils
11 October 2023
Target
Type
Added on
Smart Contract - CallbackUtils
11 October 2023
Target
Type
Added on
Smart Contract - Config
11 October 2023
Target
Type
Added on
Smart Contract - DataStore
11 October 2023
Target
Type
Added on
Smart Contract - DecreaseOrderUtils
11 October 2023
Target
Type
Added on
Smart Contract - DecreasePositionCollateralUtils
11 October 2023
Target
Type
Added on
Smart Contract - DecreasePositionSwapUtils
11 October 2023
Target
Type
Added on
Smart Contract - DecreasePositionUtils
11 October 2023
Target
Type
Added on
Smart Contract - DepositEventUtils
11 October 2023
Target
Type
Added on
Smart Contract - DepositHandler
11 October 2023

Impacts in Scope

Critical
Loss of user funds by freezing, theft, or manipulation of the price of GLP
Critical
Theft of governance funds
Critical
Permanent freezing of user funds (with value > $250,000)
Critical
Insolvency
Critical
Redirected funds by address modification
Critical
Shell access on server
Critical
Ability to execute system commands
Critical
Extract Sensitive data/files from the server such as /etc/passwd
Critical
Taking Down the application/website
Critical
Bypassing Authentication
Critical
Signing transactions for other users
Critical
Redirection of user deposits and withdrawals

Out of scope

Program's Out of Scope information

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)
  • Lack of liquidity
  • Best practice critiques
  • Sybil attacks
  • Centralization risks
  • If the GLP pool has a high utilization not all GLP tokens will be immediately redeemable, the borrowing fee should increase in this case and is considered regular operation

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
  • Attacks that require the user to click on phishing or malicious links for subdomains can be reported but will be given a Medium or High classification at most
  • 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
  • Vulnerabilities primarily caused by browser/plugin defects
  • Any vulnerability exploit requiring CSP bypass resulting from a browser bug
  • Vulnerabilities that require compromise of the user’s machine / browser
  • Community-developed applications such as those on the ecosystem page
  • Clickjacking Vulnerabilities

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