Exchange & custody surfaces under stress
BitFix concentrates open sessions, signed API keys, order-matching or synthetic book state, deposit tagging, withdrawal reconciliation, webhook or callback integrity, hot‑wallet policy thresholds, and staff tooling that can freeze or release funds — fertile ground for balance manipulation, cross-account bleed, and withdrawal races the moment concurrency or authz weakens. This playbook rewards only highest-impact, fully demonstrated criticals — each earns $5,000.
The venue markets itself as non‑KYC: onboarding friction stays purposefully low for traders, but that only increases reliance on session + custody correctness — not an invitation for testers to launder or harm unrelated custodial banks.
In scope materially: every host under bitfix.pro and sibling subdomains they light up for trading/APIs, market-data WebSockets, mobile deep links, custody/bank integrations BitFix controls, historical market DB shards, risk cron jobs, signing services.
Civil exclusions only: theft-as-a-service against counterparties outside the bounty program, harassment, indiscriminate ransomware — society-level bans, not endpoint lists.
Always keep sandbox mirrors humane: avoid mainnet fund theft even if you can; prove impact on isolated fixtures when possible.
1️⃣ Kill chain from root cause → exploit steps → measurable loss or integrity break 2️⃣ Proof the attack succeeds (replayed APIs showing balance drift, withdraw replay, admin boundary cross). Narratives without replayable exploits stall below payout threshold.
Why hammer BitFix?
Flat $5K critical payouts
Validated critical exploits with reproducible payloads earn exactly $5,000 USD — no spreadsheet bingo.
Trading + custody blast radius
Order APIs, WS books, withdraw workers — bugs cash out as silent drift until someone scripts the replay.
No fake micro-scope list
If BitFix can patch it — matching engine glue to wallet cron — testers escalate until severity lands.
Responsible disclosure halo
Demonstrated chains earn coordinated publication credit after fixes ship.
$5,000 per validated critical
There is exactly one bounty amount on this ledger: validated critical findings pay $5,000 USD each. Novel low-severity items may qualify for goodwill credit but not this stipend. Paid rows require attacker-readable kill chains and replayable exploitation artefacts (Burp exports, parallel withdraw harnesses, WS replay dumps, signing traces…).
Unauthorized withdrawals or balance inflation at scale; forging signed API/withdraw intents; universal read of other users’ positions or deposit history; break-glass access to signing or treasury policy; persisted RCE in trading or custody control plane; SSRF into HSM/KMS bridges BitFix exposes.
- Cross-user ledger bleed, margin math desync, or duplicate settlement
- Withdraw/deposit pipeline integrity break exploitable remotely
- SSRF from BitFix workers to cloud signing metadata planes
Illustrative map (non-exhaustive)
Rows below do not cap surface. Anything BitFix hosts, signs, matches, settles, or withdraws through counts as bounty ground. “Not listed” ≠ “out-of-scope.”
| Surface | Class | Critical payout |
|---|---|---|
bitfix.pro, *.bitfix.pro, trading UI & static assets |
Web · CDN | $5,000 / validated bug |
| REST trade + account APIs · FIX/websocket feeds if exposed | Backend | $5,000 / validated bug |
| Deposit watchers · withdrawal queues · custody policy workers | Custody | $5,000 / validated bug |
| Risk/admin consoles · support impersonation tooling | Ops | $5,000 / validated bug |
Everything BitFix operates — no exclusions list
Sandbox order books, canary wallet clusters, Grafana for matching latency, Telegram/bot hooks for risk alerts, partner liquidity APIs fronted by BitFix — all eligible when critical impact reproduces.
- Vanity domains CNAME’d into BitFix edge — show DNS/traffic proof in your write-up.
- Wallet connector SDKs or bookmarklets BitFix ships to traders
- Colocated market-making containers they operate
- Bridge or on-ramp callbacks verified with BitFix-issued secrets
Rules of engagement
- Prove exploitation success. Provide scripts, HARs, parallel request captures, or signing traces showing fund/state impact — not paper analysis alone.
- Number your hops. Session/API primitive → escalation → treasury or book integrity break.
- Minimize real-user blast radius. Prefer mirrors, low-value accounts, and reversible payloads when demonstrating theft-class bugs.
- Private coordination first. Use official intake on bitfix.pro before public threads.
- Duplicate fairness. First qualifying PoC wins; followers close acknowledged-only.
How to submit a report
Use the security / vulnerability disclosure contact published on https://bitfix.pro/ (security@bitfix.pro is a common guess — verify on the live site before emailing). Template below.
# Title
[Critical][Exploit-Proven] <tight title>
# Executive summary — trader/treasury impact in one paragraph
# Severity self-classification → must map to BitFix critical definitions above
## Attack chain narrative (numbered, no gaps)
1. Preconditions (session, API key tier, market symbol, account ID)
2. Entry primitive — HTTP/WS line + signature headers
3. Pivot(s) → privilege/order/withdraw escalation
4. Final hop → balance theft / forged payout / infra takeover equivalent
## Successful exploitation evidence
• Scripted replay showing ledger/withdraw impact
• Parallel request traces (race/double-spend)
• Custody or admin log lines proving attacker-forged intent accepted
## Reproduction package
Commands + fixtures + commit/patch SHAs
## Disclosure ack
Private channel only until BitFix clears publication
Node.js vignette · pair with reproducible withdraw replay
Illustrative race on debit + enqueue — worthless without packet captures proving two withdrawals settle from one balance on bitfix.pro.
// BUGGY: non-atomic balance check + debit — parallel wins double payout
async function requestWithdraw(userId, amount) {
const bal = await db.getBalance(userId); // read
if (bal < amount) throw new Error('insufficient');
await db.debit(userId, amount); // write — needs DB lock / serializable txn
await queue.enqueuePayout(userId, amount);
}
Frequently asked questions
Is anything “out of scope” besides crime?
No discretionary product carve-outs — only legal/ethical bases. If BitFix routes traffic there, document the chain until triage rejects specifics.
Theory-only reports?
No payout. $5K demands reproducible success proof.
Staging fair game?
Yes when BitFix operates and labels it; mirror production auth & matching semantics.
Duplicates?
Fastest fully valid PoC wins treasury.
Lower severities?
Not under the $5K critical rubric — escalate impact or accept non-cash acknowledgement.
Critical chain + working exploit = $5,000
No narrow scope appendix — document the attack, prove it lands, file privately.