Loopscale Exploited Again: 1 kySOL Borrowed 4,597 SOL

12 Nov 2026 News

Someone deposited a single kySOL into Loopscale and borrowed 4,597 SOL against it. Loopscale puts that loan at about $412,000, against collateral worth roughly $120.

This is the second time the Solana lending protocol has lost money to bad collateral pricing. The first was in April 2025, 16 days after launch.

Loopscale says no depositor lost money this time either. That’s probably true. But the question I care about is who paid, and nobody has said.

What happened in November

Loopscale paused the protocol on Nov 5. It said an attacker had been hitting its SOL and USDC Genesis Vaults for about a week, with more than 30,000 malicious requests a day. It also flagged four wallet addresses and said it was working with federal law enforcement.

A day later it described two attack paths, involving its program logic and private transaction-building APIs.

Vault What Loopscale says happened Amount
SOL Genesis Vault Asset-pricing parameters valued the collateral as a different asset, allowing an undercollateralized loan ~$412K
USDC Genesis Vault A transaction bundle sold a loan with an extreme interest rate into the vault, inflating its NAV for a large redemption ~$521K

Loopscale says it halted the second one within 30 seconds. Reports disagree on whether any USDC left the vault, so I’d treat the $521K as an attempt until the post-mortem says otherwise.

How 1 kySOL became 10 zBTC

Loopscale’s own description stops at a “misconfigured combination of asset-pricing parameters.” The more specific story comes from an onchain trace reported by NullTX:

  1. On Nov 1, the attacker bought 1 kySOL for about 1.31 SOL.
  2. About 2.5 minutes later, they deposited it as collateral, with a zBTC price entry attached.
  3. kySOL uses 9 decimals and zBTC uses 8. One kySOL is 1,000,000,000 base units, which reads as 10 zBTC at 8 decimals.
  4. Priced as 10 bitcoin, the deposit looked like more than enough collateral for the loan.

It’s a neat explanation, and the numbers fit. Loopscale hasn’t confirmed it though.

The NAV trick is simpler to picture. A lending vault’s share price depends on what it thinks its loans are worth. If the vault counted that loan by its promised interest, an absurd rate makes the vault look richer than it is. Anyone redeeming shares at that moment gets paid out of everyone else’s deposits.

Who made the vault whole?

On Nov 3, the 4,597 SOL loan was liquidated. About 4,598 SOL came back to the lending strategy from a separate wallet, which received the kySOL in return.

So someone paid 4,598 SOL for 1 kySOL. That’s not a trade anyone makes for profit. The public record doesn’t show who funded it, and Loopscale’s statements only say the vaults were “made whole.”

If it was Loopscale’s treasury or the team, depositors are fine and the protocol ate the loss. That’s the good outcome. But it also means the safety net is whatever the team can afford next time, and that’s not something you can check onchain.

Deposits and withdrawals reopened across all vaults on Nov 7, after a pause of about two and a half days. Withdrawals are still subject to available liquidity, which is normal for lending vaults (I explained why in Why You Can’t Always Withdraw Your Full Aave Balance). A full post-mortem has been promised “soon,” with no date.

The April 2025 hack rhymes with this one

In April 2025, an attacker borrowed about 5.7M USDC and 1,211 SOL, roughly $5.8M or 12% of TVL at the time. Loopscale’s post-mortem says the attacker deployed a fake program that imitated a RateX market and reported an inflated price for RateX PT tokens. (PT tokens are principal tokens, the fixed-yield half of a split yield position; see the Exponent explainer if that’s new to you.)

Loopscale checked RateX program IDs for some borrow paths but not all. The attacker used the unchecked one.

The funds came back within 3 days after Loopscale offered a 10% whitehat bounty. Loopscale’s post-mortem says everything was recovered; some reports say the attacker kept a bounty. Either way, depositors didn’t lose money.

Different bugs, same family. Both times, the protocol trusted an input about what the collateral was worth, and the input was wrong:

  • 2025: a fake price source that nobody verified
  • 2026: a real asset matched to the wrong price, per the onchain trace

After 2025, Loopscale promised external review for all code and multisig approval for market, vault and oracle parameter updates. Multisig stops a rogue update. It doesn’t stop a wrong one that the signers approve. I don’t know yet whether that’s what happened here, and the post-mortem should answer it.

What I’d check before depositing

Loopscale’s record so far is two exploits and zero depositor losses. Both times, that result came from recoveries and backstops after the code failed.

If you have money in a Genesis Vault, or are thinking about it:

  • Read the post-mortem when it lands. Look for the root cause in Loopscale’s words and who funded the 4,598 SOL.
  • Check the vault’s free liquidity before sizing up. Withdrawals reopened, but only up to what isn’t lent out.
  • Count this risk against the yield. A lending vault’s job is to value collateral correctly, and Loopscale has got that wrong twice in 19 months.

I wouldn’t deposit until the post-mortem shows a pricing check that rejects collateral whose mint doesn’t match its price feed.