When a Protocol Gets Exploited, Does Your Money Disappear? It Depends on Custody
Whether your money survives an exploit depends on custody: who, at the protocol level, can move your funds. If a platform or an admin key can move deposits, an exploit of that key can drain them. In a correctly built non-custodial vault, no company or manager can withdraw your deposit, which narrows what an attacker can reach.
The Billion-Dollar Question Every DeFi Depositor Should Ask
Picture a hypothetical: a vault on a competing protocol gets drained overnight. Governance forums erupt. Users who deposited weeks ago wake up to zero. You had a position in a different vault on the same ecosystem. Is yours gone too?
The answer depends entirely on one question you should have asked before depositing: who actually holds the keys to your funds?
That question determines whether an exploit is a catastrophic loss for you personally, or a serious event on a protocol you happened to use — with your capital still in your vault position, withdrawable only by your own wallet.
Why "DeFi Vault" Is Not a Single Safety Category
Calling something a "DeFi vault" is about as specific as calling something a "bank product." The term spans everything from fully custodial yield accounts where a protocol controls every movement of your funds, to genuinely non-custodial structures where on-chain logic gives no one a way to send your assets to their own wallet. The word "decentralized" in front of "finance" does not automatically mean your funds are safe from a bad actor inside the protocol. Architecture matters more than branding.
What Does 'Non-Custodial' Actually Mean?
Non-custodial means no company or manager holds your assets or can send them to their own wallet. In a non-custodial vault, deposits sit in accounts controlled by the program's code rather than by anyone's private key. A manager may trade the pooled assets, but only you can withdraw your share.
Custody in Plain English: Who Controls the Keys?
Custody is simple at its core: whoever can sign a transaction to move funds from an address has custody of those funds. On Solana, like any proof-of-stake blockchain, moving tokens requires a valid signature from a private key — or, for a program-derived address, which has no private key, the approval of the program that owns it. If you hold that key, the funds are yours. If someone else holds it — or if a smart contract holds it on behalf of an entity that controls the contract — your ownership is conditional.
Self-custody (holding your own private key in a wallet like Phantom or Backpack) means no third party can unilaterally move your assets. They can't freeze them, block a withdrawal, or drain them in a hack without compromising your specific key.
How a True Non-Custodial Vault Works On-Chain
In a non-custodial vault, no company or manager takes custody of your deposit. When you deposit, say, 500 USDC into an FBYT vault, the USDC moves from your wallet into token accounts owned by the vault's program-derived address (PDA), and you receive vault shares proportional to your deposit, recorded in an investor account tied to your wallet. The vault manager can execute trades using those funds through pre-authorized program interactions (swaps routed through Jupiter, on supported assets), but the contract gives no one — the vault manager, the platform developers, or an attacker who compromises the frontend — an instruction to send those funds to an arbitrary external address. The only payout the manager can take is the fee the vault's rules allow, and FBYT has no instruction in the contract to move investor funds.
Withdrawals go back to the depositor's wallet. Not to an intermediary. Not to a platform treasury. The architecture enforces this at the program level, not through policy.
Why 'Non-Custodial' Is Not the Same as 'Trustless'
Here is a distinction that matters and often gets blurred. Non-custodial means the platform cannot directly seize or transfer your funds. Trustless means no trust in any party is required at any point. Most non-custodial vaults are not fully trustless; they require you to trust that the vault's smart-contract code correctly enforces the rules, that the vault manager is not attempting strategies that destroy value through negligence or malice, and that the underlying DeFi protocols the vault interacts with (Jupiter, Drift, Kamino) are not themselves compromised.
Non-custodial is a meaningful and important safety property. It's not a guarantee that nothing can go wrong.
What Is the Custody Spectrum, From Centralised Exchanges to Non-Custodial Vaults?
The custody spectrum runs from centralised exchanges, which hold your keys outright, through custodial DeFi vaults, where an admin key or treasury multisig can still redirect funds, to non-custodial vaults, where program rules let a manager trade but not withdraw. Your exposure to platform failure shrinks at each step.
Tier 1 — Centralised Exchanges (CEXs): Full Custodial Risk
Deposit funds to a CEX and you hand custody over completely. The exchange holds the private keys. You hold a balance entry in their database. If the exchange is insolvent, hacked, or its operators decide to withdraw funds, your recourse is legal, not cryptographic. The exchange and lender collapses of 2022 made this concrete for millions of users; in the FTX case, the SEC alleged customer funds were diverted to an affiliated trading firm.
CEXs can also freeze withdrawals unilaterally. No smart contract prevents it; only their terms of service, which they wrote.
Tier 2 — Custodial DeFi Vaults: Protocol Holds the Keys
This tier is more nuanced and more dangerous than it looks. A protocol can live on-chain, publish its contract addresses, and still maintain effective custody if: the admin key can upgrade the contract (changing its rules), a multisig treasury wallet can redirect funds, or the vault logic pools all deposits into a single protocol-owned account. "On-chain" does not mean "your keys, your coins." An exploited admin key in a custodial DeFi protocol is as damaging as an exploited CEX hot wallet. Sometimes more so, because the exploit happens in seconds.
Tier 3 — Non-Custodial Vaults on Solana: No One Holds the Keys

In a properly structured non-custodial vault on Solana, the program's upgrade authority is either renounced or governed by a time-locked multisig with transparent signers; the vault contract routes trades through approved DEX programs only; and withdrawals are permissioned at the wallet level — the depositor can always exit, and exit only to their own address. The vault manager has trade authorization within defined parameters, nothing else.
Diagram: Where the Custody Boundary Sits in Each Model
────────────────────────────────────────────────────────────────────
CUSTODY SPECTRUM (where funds sit and who can move them)
────────────────────────────────────────────────────────────────────
TIER 1 — CEX
[Your Wallet] → deposit → [Exchange Database]
↑
Exchange holds keys
(you have no on-chain rights)
TIER 2 — Custodial DeFi Vault
[Your Wallet] → deposit → [Protocol Smart Contract]
↑
Admin key / multisig can redirect
(on-chain, but not truly self-custody)
TIER 3 — Non-Custodial Vault (FBYT model)
[Your Wallet] → deposit → [Vault Smart Contract]
↑ |
Withdrawal | trade execution only
always routes ↓
back here [Jupiter / DEX Programs]
(not withdrawable by vault)
CUSTODY BOUNDARY: sits between you and the vault contract.
The contract CAN trade. It CANNOT send funds to external addresses.
────────────────────────────────────────────────────────────────────
Does a Protocol Exploit Mean Losing Your Deposit?
Not necessarily. In a correctly built non-custodial vault, the contract only allows funds to move to approved programs or back to depositors, so an attacker cannot simply send the pool to their own address. Exploits can still hit open positions, fee logic, the frontend, or the contract's own code if it is flawed.
How the Custody Boundary Limits an Attacker's Reach
An attacker exploiting a non-custodial vault protocol has to navigate a structural constraint: the contract's rules only permit movements to approved destinations. The vault can interact with Jupiter swap routes, open a position on a whitelisted perps protocol, or send funds back to the depositing wallet. It cannot send funds to attacker.sol. The attack surface the custody boundary is designed to close is precisely the class of exploit where a compromised admin key or a reentrancy vulnerability drains funds to an attacker-controlled address.
This is not a theoretical distinction. It's the mechanism that separates vault architectures in terms of what an exploit can actually accomplish.
What an Exploit Can and Cannot Touch in a Non-Custodial Model
Can touch: frontend interfaces (if a malicious script changes the displayed vault address, or substitutes a different deposit address), the vault's open trading positions (if the exploit manipulates an oracle the vault relies on), or the vault's fee accounting logic if there's a bug there.
Cannot touch (in a correctly built non-custodial vault): the deposited principal held in vault shares, withdrawals to depositor wallets, or funds above what the vault currently has deployed in active trades.
The critical qualifier in both cases is "correctly built." A non-custodial claim is only as strong as the contract code that enforces it.
Real-World Scenario: Tracing a Hypothetical Attack Through the Architecture
Imagine an attacker finds a vulnerability in FBYT's frontend — they serve a spoofed version of the deposit UI that routes new deposits to their own address. Existing depositors who already hold vault shares are unaffected: their capital is in the vault contract, not in transit. The attacker captures new deposits being routed through the malicious frontend, but cannot touch the existing pool.
Now imagine a deeper exploit: a bug in the vault contract's trade execution logic that allows calling an arbitrary external program instead of only whitelisted DEXs. This is serious. The attacker might be able to drain active trade positions. However, if the contract correctly requires that all final settlements return to depositor wallets, even this class of exploit has a ceiling on what it can reach.
No architecture is impenetrable. The non-custodial model significantly narrows the blast radius.
What Can Still Go Wrong? An Honest Look at Remaining Risks
Plenty can still go wrong in a non-custodial vault: bugs in the vault's own code, a manager whose strategy loses money, oracle manipulation or lag, and thin liquidity on exit. Non-custodial architecture stops a manager or platform from taking your principal; it does not stop bad trades or broken code.
Smart-Contract Risk: Bugs in the Vault Logic Itself
Consider a hypothetical case: 300,000 USDC sat in an audited yield vault for four months. On a Tuesday, a researcher published a proof-of-concept showing that a specific sequence of deposit and withdraw calls within one block could drain the rebasing calculation and siphon the price differential to an attacker's wallet. The audit had been completed three months earlier. The bug was in a utility function that the audit firm's scope didn't include. Every depositor lost funds.
"Audited" means a firm reviewed the code at a point in time, against a defined scope. It does not mean the code is bug-free, or that subsequent updates didn't introduce new vulnerabilities. Always check: when was the audit, who did it, what was the scope, and has the contract been upgraded since? On Solana, you can check the program's upgrade authority on Solscan — while an upgrade authority is set, the program can be modified.
Manager Risk: Bad Actors Running the Vault Strategy
Non-custodial architecture prevents a manager from stealing your principal directly. What it cannot prevent is a manager running a strategy that loses money — through poor judgment, hidden conflicts of interest, excessive leverage, or straightforward incompetence. A vault manager with trade authorization can open leveraged short positions, pile into illiquid tokens, or churn trades in a way that accumulates fees while grinding down the pool's NAV.
Don't skip vault manager research. On FBYT, every trade is recorded on-chain, so the track record is auditable and immutable. Check frequency of trades, position sizing, drawdown history, and behavior during market stress, not just peak return numbers.
Oracle and Liquidity Risk: Market Conditions Beyond Any Vault's Control
Oracles (the on-chain price feeds that tell a vault's contract what assets are worth) can be manipulated or lag behind rapidly moving markets. If a vault relies on an oracle for liquidation triggers or position sizing, a flash crash or a flash loan attack on a thin liquidity pool can cascade into unexpected losses. This risk exists independent of the custody model; it's a function of the underlying DeFi protocols a vault interacts with.
Liquidity risk compounds this: a vault holding a position in a low-liquidity token may face severe slippage on exit, regardless of how quickly the on-chain settlement processes.
Why Transparency and Immutable On-Chain Records Help You Monitor These Risks
You cannot eliminate these risks by choosing a non-custodial vault. But you can observe them. On Solana, every fill, every position open and close, every fee collection is a transaction on a public ledger. A vault running on FBYT exposes its entire history — you can see if a manager started taking outsized position sizes last week, whether drawdown is accelerating, or whether fee withdrawals seem outsized relative to strategy returns. Opacity is a risk multiplier; on-chain transparency at least gives you the information to act.
How to Check a Vault's Custody Model Before You Deposit
Check custody before depositing by answering five questions: who holds the upgrade authority, where the contract can send funds, how recent and complete the audit is, whether an admin has emergency powers, and whether past withdrawals went straight to depositor wallets. A block explorer answers most of these in a few minutes.
Five Questions to Ask About Any DeFi Vault
Before depositing into any vault, get answers to these:
Who holds the upgrade authority on the vault contract? If a single wallet or an anon multisig can upgrade the program, the non-custodial claim is conditional. Look for renounced authority or a transparent, time-locked governance process.
Can the vault contract send funds to arbitrary addresses, or only to whitelisted programs and the depositor's wallet? The contract's program logic should make it structurally impossible to route funds to an attacker-controlled address.
When was the last audit, who conducted it, and does the audit scope cover the current version of the deployed code? An audit from 14 months ago on a contract that has since been upgraded is not meaningful coverage.
Is there an admin key with emergency powers? Some vaults include "pause" or "emergency withdraw" functions controlled by an admin. This is a legitimate safety feature — but it also means the admin has elevated access. Understand who that is.
Can you verify on-chain that withdrawals route to your wallet? Trace a sample withdrawal transaction on Solscan. The recipient should be the depositing wallet. If funds go to an intermediary address first, ask why.
How to Read On-Chain Data to Verify the Custody Structure

Open Solscan (solscan.io) or the Solana Explorer and look up the vault's program address. Under "Account" you can see the upgrade authority. If it shows a wallet address, that wallet can change the contract's code. If it shows no authority (it has been revoked), the program is immutable.
For a specific deposit transaction, trace the token movements: your USDC should move from your wallet to a token account owned by the vault program's PDA (not to a developer wallet). For a withdrawal, trace in reverse: vault account to your wallet, no intermediate hops. Three clicks on Solscan confirms what any vault claims in its documentation.
Red Flags That Suggest a Vault Is More Custodial Than It Claims
Watch for these:
- Upgrade authority is held by a single anon wallet with no public governance or timelock
- Withdrawals require manual approval from the protocol team ("we process withdrawals every 24 hours")
- No audit available, or the audit link goes to a PDF from an unknown firm with no verifiable on-chain engagement
- The vault's smart contract is not open-source or verified on a public explorer
- Marketing describes the protocol as "non-custodial" but the docs include language about the team's ability to "pause user withdrawals in emergency scenarios" with no defined governance constraint on that power
Any single one of these isn't necessarily disqualifying, but each one shifts the model closer to custodial than the headline claims.
Non-Custodial Vault Safety on Solana: What Makes the Architecture Different
On Solana, low fees make frequent on-chain checks and rebalancing affordable, and program-derived addresses let a vault hold tokens without any private key. FBYT uses that design: the vault's PDA owns the deposited tokens, the manager can trade but not withdraw, and every trade is a public transaction.
Why Solana's Speed and Fee Structure Matter for Vault Security
Solana produces blocks quickly, and its base fee is 5,000 lamports (0.000005 SOL) per signature, plus an optional priority fee. For vault security, this matters in a less obvious way: it allows vault contracts to implement fine-grained, frequent position checks and rebalancing without making those operations economically prohibitive. On Ethereum mainnet, a vault performing the same number of on-chain state updates could pay far more in gas, forcing vaults to batch operations and introduce longer windows during which state is stale. On Solana, there's no economic reason to delay settlement.
Speed also reduces the window in which an attacker can exploit a price discrepancy or oracle lag. The faster a system can verify and settle, the shorter the attack window.
How FBYT Implements the Non-Custodial Model: No Access, No Lock-Ups, Full Transparency
FBYT's vault architecture is built so that the platform has no instruction in the contract to move user funds. Vault managers receive trade authorization within defined parameters — they can execute swaps through Jupiter on supported assets and manage strategy exposure. They cannot withdraw funds to external addresses, modify the fee structure mid-vault, or prevent a depositor from exiting.
There are no lock-up periods. A depositor can withdraw at any time, and the withdrawal goes directly to their wallet. Every trade, every fill, every fee collection is a public transaction on the Solana blockchain, auditable by anyone with a wallet address and a Solscan tab open.
The Bottom Line: Non-Custodial Vaults Shift the Risk Profile — Not to Zero, But Significantly
Non-custodial vaults remove the risk that a platform or manager walks off with your deposit, and they limit what many exploits can reach. They do not protect you from bad strategy, oracle manipulation, or bugs in the code itself. Use the table below to see which risks custody changes and which it doesn't.
A Quick-Reference Summary of What Non-Custodial Protects Against
| Risk Type | Custodial Model | Non-Custodial Model |
|---|---|---|
| Exchange insolvency / platform bankruptcy | Full exposure | Not applicable (funds not held by platform) |
| Admin key exploit draining funds to attacker | Full exposure | Structurally mitigated by contract design |
| Frontend attack (spoofed deposit address) | Full exposure | Affects new deposits in transit; existing shares unaffected |
| Manager sending funds to their own wallet | Possible | Blocked by the contract (manager can trade, not withdraw; only the agreed fee is paid out) |
| Smart-contract bug in vault logic | Partial exposure | Exposure limited to vault's active positions |
| Poor trading strategy destroying value | Full exposure | Full exposure (custody doesn't prevent bad trades) |
| Oracle manipulation | Full exposure | Full exposure (market-level risk) |
Non-custodial vault safety is real and meaningful. It removes an entire category of risk — the category behind some of the most spectacular losses of 2022 and 2023. But it does not eliminate all risk. That distinction is the whole point.
See FBYT's Security Model and Start Managing Your Own Custody
If the mechanics above are what you want in a vault platform, FBYT is built to deliver exactly that: no platform instruction to move user funds, withdrawals to your wallet only, every trade on-chain and permanently auditable.
The checklist from earlier in this article applies to FBYT too. Pull up the program address on Solscan. Check the upgrade authority. Trace a withdrawal transaction. The architecture should hold up to scrutiny, and if it doesn't, that's exactly the kind of thing you should find before you deposit.
Crypto assets are highly volatile and on-chain strategies carry real risks, including total loss of deposited capital. Past vault performance gives no indication of future results. FBYT is a non-custodial platform and does not provide financial advice. Smart-contract audits reduce but do not eliminate technical risk — always review the vault's contract, audit history, manager track record, and strategy terms before allocating any funds. Only deposit what you can afford to lose entirely.




