Crypto Exchange Withdrawal Security: From Request to Signing
Quick answer. Allowlist verified addresses, delay new ones, cap size and velocity, flag anomalies and require a second approver. Then an isolated signer re-checks the policy, nothing changed is broadcast, and the chain is reconciled with the ledger continuously.
Video transcript
Every exchange hack ends with a valid signature on a transaction the exchange never meant to send. Withdrawal controls are everything before it.
A withdrawal moves from request to risk checks, approval, an isolated signer, and reconciliation. Each stage should fail closed.
Allowlist addresses the client owns. Cap size and velocity per wallet, not just per user, delay new addresses, and score each request.
Static checks are not enough. In 2019, Binance said a seven thousand bitcoin withdrawal with stolen API keys passed its checks.
Maker-checker means whoever creates a payout cannot approve it. In Guardian's Synthetix review, one key held the request, approval and payout roles.
The signer should re-check the policy itself. Binance says its October 2026 attacker used an internal wallet signing service to initiate transactions outside the normal withdrawal process.
Bind the destination to the approval, and never broadcast a signed transaction that differs from the approved one.
Reconcile the chain with the ledger. Hong Kong expects real time, Korea's major exchanges every five minutes, and Japan every business day.
Test it like an attacker: call the signer directly, change the destination after approval, split a large payout, and edit the policy with one admin.
Guardian's offchain team, led by HackTricks co-founder Carlos Polop, pentests relayers, risk engines and threshold signers. Read the full guide, or book a system review at guardian.security.
Every exchange hack ends the same way: a valid signature on a transaction the exchange never meant to send.
Withdrawal controls are everything between a request and that signature. Regulators in Hong Kong, Japan, Singapore, Korea and New York spell many of them out.
This guide follows the pipeline in order, with the text and incidents behind each control. For the wider picture, see our guide to crypto exchange security.
This article explains the technical and security side of the custody rules and guidance it cites. It is not legal advice; confirm how they apply to you with counsel.
The Pipeline End to End
- Request: a user session, an API key or an internal transfer.
- Address check: allowlisted, owned by the client, screened.
- Risk checks: limits, delays and anomaly scoring.
- Approval: a policy engine, plus a second person where required.
- Signing: an isolated signer re-checks the policy.
- Broadcast: the signed transaction is compared with the approved one.
- Reconciliation: onchain balances are matched to the ledger.
Each stage should fail closed, and trust nothing from the stage before it.
Hong Kong's VATP Guidelines ask platforms to set out these choices: hot or cold storage, real time or cut-off times, size and velocity limits, and automatic or manual approval (para. 10.10(d)).
New York's BitLicense rule states the principle underneath. Customer assets may move only at the customer's direction (23 NYCRR 200.9(c)).
Checks Before Approval
Allowlists and address checks
Hong Kong expects withdrawals only to addresses that belong to the client and are whitelisted (para. 10.7).
Ownership can be proven by message signing or a micropayment test (para. 10.10(c)).
For cold wallets, the SFC's 2025 custody circular adds that whitelist changes should be subject to "stringent controls and oversight" (para. 9).
Screen destinations too. NYDFS guidance says licensees must have procedures to assess counterparty exposure on outbound transfers. It stresses blockchain analytics for spotting sanctioned addresses.
Size and velocity limits
Set limits per user, per asset, per hot wallet and for the platform as a whole. A per-user cap does nothing against a drain of the wallet itself.
Japan's FSA asks exchanges that pay out automatically to cap what can leave at one time or in a short period.
In Guardian's review of Synthetix's withdrawal flow, requests had no rate limit, so a spammer could block legitimate payouts (H-08).
Delays and holds
A delay gives the real owner time to notice. After its January 2022 incident, Crypto.com added a 24-hour delay between adding a withdrawal address and the first withdrawal, TechCrunch reported.
Hong Kong's SFC strongly encourages client confirmation of material changes, such as a new device, before further transactions.
Holds need a fair basis. If a platform suspends withdrawals, the SFC expects it to tell the SFC and all clients without delay (para. 10.10(e)).
Anomaly scoring
Score each request against the client's own history. The SFC's July 2026 circular lists red flags, such as unusual transactions soon after a password reset, a contact change or a new device.
It also asks platforms to flag one device bound to many accounts, and logins from many places in a short time.
Static checks are not enough. In 2019, Binance said a 7,000 BTC withdrawal made with stolen API keys and 2FA codes passed its existing security checks.
Approvals and Policy Engines
Maker-checker means whoever creates a payout cannot also approve it. Regulators put it several ways:
- Singapore (MAS): no individual able to solely authorize and effect a withdrawal.
- Japan (FSA): several people in each transfer, and multiple keys stored apart.
- Hong Kong (SFC): controls so staff cannot send assets anywhere but the client's address.
- Korea (FSC): tiered, multi-person sign-off by amount for manual high-risk payouts.
A policy engine turns those rules into code that runs on every transaction. Fireblocks, for example, describes policies that set "who can initiate transactions, from which sources, to which destinations, and under what conditions."
Two rules for the engine itself. Changing a policy should need the same quorum as a large payout. And no path to the signer should skip it.
Separation has to hold in the keys, not just the org chart. In the Synthetix review, one key held the request, approval-vote and payout roles, though the contract was designed for a quorum of independent watchers (H-14).
Signing Isolation
The signer is the last control. It should re-check the policy itself, not trust whatever called it.
Binance says its October 2026 attacker used an internal wallet signing service "to initiate transactions outside the normal withdrawal process." Our Binance hack explainer has the timeline.
Hong Kong's 2025 custody circular sets the bar for cold wallets:
- Dedicated approval devices, isolated from general-purpose workstations (para. 10).
- Layered, independent integrity checks from creation to broadcast (para. 8).
- Every detail of a manually checked transaction in human-readable form (para. 11).
Bind the destination to the approval. The SFC says destinations "cannot be modified before the transactions are signed and broadcasted" (para. 10.10(f)).
In the Synthetix review, signed requests left out the amount and destination, so a tampered request still verified (H-15).
Narrow what the signer will sign. After Binance, TRM Labs advised rejecting EIP-7702 authorizations unless expected, and separating signing paths by chain and wallet tier.
Reconciliation After Broadcast
Check once more before broadcast. One firm in the SFC's circular compares each signed transaction with the unsigned original, and does not broadcast on any mismatch.
Then reconcile the chain against the ledger. Cadence varies:
| Regulator | Cadence | Text |
|---|---|---|
| Hong Kong SFC | Real time, with alerts to the SOC | Circular 25EC44 (2025) |
| Korea FSC | Every five minutes, with automatic halt criteria | Exchange self-regulation (2026) |
| Japan FSA | Every business day | Supervision guidelines |
| NYDFS | Ready to show on request | Custody guidance (2025) |
Watch outflows as well as balances. Binance says it began investigating after an internal alert about large-volume transfers.
A halt must stop only what it should. In the Synthetix review, a withdrawal pause stalled the event listener, so deposits stopped being credited (H-04).
Testing the Pipeline
Test it as an attacker would, from every entry point:
- Call the signing service directly, skipping the withdrawal API.
- Change the destination after approval.
- Add a new address and withdraw at once.
- Split one large payout into many small ones.
- Send parallel withdrawals against one balance.
- Approve your own payout from a second account.
- Edit the signing policy with one admin.
- Pause one asset, then check deposits still credit.
- Create a ledger mismatch and time the alarm.
For third-party wallet solutions, Hong Kong expects periodic independent cybersecurity assessments of the deployed system.
Japan's FSA plans threat-led pentests of several exchanges' actual operating environments within 2026.
Our crypto exchange pentesting guide covers the rest of the exchange.
How Guardian Helps
Guardian's offchain team is led by Carlos Polop, Head of Offchain Services and co-founder of HackTricks.
Its offchain automation pentest reads the source of relayers, risk engines and threshold signers, including "what a subset below threshold can force."
The infrastructure pentest traces cloud access "until something signs."
Not sure where to start? Book a system review: an hour with a Guardian engineer on what you run and who holds the keys.
Frequently Asked Questions
What is a withdrawal allowlist?
A list of destination addresses approved in advance; withdrawals can only go to them. Hong Kong's SFC expects whitelisted addresses that belong to the client, verified for example by message signing or a micropayment test.
Why do exchanges delay withdrawals to new addresses?
To give the real owner time to spot a takeover. After its January 2022 incident, Crypto.com added a 24-hour delay between adding a withdrawal address and the first withdrawal to it.
Can a policy engine stop a hot wallet drain?
Only if every signing path runs through it. Binance says its 2026 attacker started transactions outside the normal withdrawal process. Enforce limits and allowlists at the signer, and test whether it can be called directly.
How often should an exchange reconcile wallets with its ledger?
Continuously. Hong Kong's SFC expects real-time reconciliation, and Korea's FSC says major exchanges will check every five minutes, with systems upgraded by May 2026. Japan's FSA guidelines expect reconciliation every business day.
Sources
- SFC: Guidelines for Virtual Asset Trading Platform Operators, Chapter 10 (June 2023)
- SFC: Circular to licensed virtual asset trading platform operators on custody of virtual assets, 25EC44 (August 15, 2025)
- SFC: Circular on robust authentication methods and monitoring and surveillance measures, 26EC35 (July 9, 2026)
- Japan FSA: Guideline for Supervision of Crypto-Asset Exchange Service Providers, provisional English translation (as of June 2021)
- Japan FSA: Policy Approaches to Strengthen Cybersecurity for Cryptoasset Exchange Services (April 3, 2026)
- MAS: PS-G03, Guidelines on Consumer Protection Measures by DPT Service Providers (last revised September 19, 2024)
- Cornell LII: 23 NYCRR 200.9, Custody and protection of customer assets
- NYDFS: Guidance on Use of Blockchain Analytics (April 28, 2022)
- NYDFS: Updated Guidance on Custodial Structures for Customer Protection in the Event of Insolvency (September 30, 2025)
- Korea FSC: Real-Time Balance Reconciliation and Enhanced Internal Control Required for Virtual Asset Exchanges (April 6, 2026)
- Binance: 29 October 2026 Binance Security Incident, Initial Findings and Response Update (November 3, 2026)
- Binance: Binance Security Breach Update (May 7, 2019)
- TechCrunch: 2FA compromise led to $34M Crypto.com hack (January 20, 2022)
- TRM Labs: North Korea Steals USD 6.36 Billion From Binance in the Largest Hack in History (October 29, 2026)
- Fireblocks Developer Portal: Set Policies
- Guardian: Synthetix Withdrawal Flow (December 15, 2025)
- Guardian: System review call
Test every path to your signer
Guardian's offchain team attacks withdrawal pipelines from the request to the signature, and tells you which control failed.