Official MASTR logo MASTR
Menu
Read the publication

Onchain investigations

Avici and Rain: tracing collateral losses across chains

avici was hit today after an attacker exploited a vulnerability in an outdated version of Rain’s Solana card-collateral contract.

Original publication · 28 Aug 2026. Figures, claims and opinions reflect the original publication date.

The original publications are in English. Navigation is available in seven languages.

01

Original on X ↗

1/5 Here we go again.

@avici was hit today after an attacker exploited a vulnerability in an outdated version of Rain’s Solana card-collateral contract.

The failure affected the separate contract holding card balances, while Avici’s self-custodial Solana and EVM wallets remained under user control.

Avici currently reports that 1,685 users were affected, representing $500,859.22 in card balances, and has promised to reimburse every affected user

🚨 My independently reconstructed on-chain total is considerably higher.

The connected attacker cluster moved exactly 1,113,843.491174 USDC through 4 deBridge orders, received 456.009747225625315067 ETH and deposited 455.9 ETH into Tornado Cash through 23 successful transactions.

That is $612,984.27 above Avici’s current reconciliation.

Those figures cover different scopes.

Avici is reporting the card balances of its own affected users, while the on-chain cluster appears to include activity connected to additional Rain-powered programs.

Until Rain publishes a complete program-by-program reconciliation, the difference cannot responsibly be described as concealed Avici losses. It cannot simply be ignored either.

The attack infrastructure was prepared several hours before the visible drain began.

At 13:38:23 UTC, a newly created Ethereum wallet received 0.07946666 ETH. It converted 0.07623058760438 ETH into approximately 190.356264 USDC and used deBridge to deliver exactly 1.788549142 SOL to the main Solana attack wallet at 13:40:41 UTC.

At 16:49:48 UTC, the Solana wallet created its USDC token account and began preparing the operation.

The central collection wallet was:

FVNFzqAny8spWdPmYw6RQ9TkYa29ueFFiqCFD1gQnCEj

The account accumulated 21,405 transactions during the observed period, including 17,560 successful and 3,845 failed transactions. That does not mean 21,405 victims. The history includes preparation, repeated contract calls, withdrawals, swaps, failed attempts and laundering activity.

The observed exploitation sequence was SubmitSignatures, AddCollateralAdmin, another SubmitSignatures call and finally WithdrawCollateralAsset. These transactions used Solana’s Ed25519 signature-verification program.

The sequence strongly indicates that an authorisation or signature-validation boundary allowed the attacker to obtain collateral-administrator privileges and withdraw assets belonging to card-balance accounts. Rain has confirmed the vulnerable contract version but has still not disclosed the precise defective condition in the code.

By approximately 18:58 UTC, the main wallet held around 10,005.03 SOL, worth more than $1 million at the time, in addition to approximately $11,600 in USDC and USDT. The stolen stablecoins were repeatedly converted into SOL before being split across 3 laundering routes.

The first route transferred 10 SOL to:

4Ln2kwihQuNHFQm1wph1ydNJuHF7mnZ8GkGjXUPcTdbP

That wallet converted 9.975837640 SOL and bridged 1,018.568494 USDC into 0.417330901146763947 ETH.

The second and largest route transferred 10,000 SOL to:

MsaXH6cGDahPQDwJjFYod7RW8QLVDZGByywWvwQ9TFu

That wallet converted the SOL, bridged 1,021,152.747180 USDC into 418.114140714661107701 ETH and returned another 8,852.876567 USDC to the main collection wallet.

The remaining value was converted again before the main wallet completed its final sweep. At 19:26:34 UTC, it transferred exactly 886.942478746 SOL to:

7XigoEaHxpoHp819fnajGqsz329Lve9c2SXSq8KaFRVf

Only 7 minutes later, that wallet forwarded 886.942478386 SOL to:

Dn1qRqxgCY6XzNe3kMEbGmEPY24MQCD5W1uA8xeBPNch

Dn1q converted the SOL and completed another 2 bridge orders, moving 90,925.447471 USDC into 37.173526353869972616 ETH and 746.728029 USDC into 0.304749255947470803 ETH.

Across all 4 orders, deBridge’s source escrows received 1,114,289.206854 USDC. After 445.715680 USDC in source-side percentage fees, 1,113,843.491174 USDC was bridged into 456.009747225625315067 ETH.

The first 2 bridge orders delivered 418.531471615807871648 ETH directly into the final Ethereum laundering wallet. The final 2 orders delivered 37.478275609817443419 ETH into an intermediary wallet:

0xd70d0f832a9163af4aca0b6f7b282bb0b15be75e

That intermediary forwarded 37.478185484067431919 ETH after gas to the final destination:

0x2cE21E4921d3Eb116526c3651Dac0257657338D5

The final wallet received a total of 456.009657099875303567 ETH.

Between 19:20:11 and 19:49:23 UTC, it made 23 successful Tornado Cash deposits:

4 deposits of 100 ETH, totalling 400 ETH.

5 deposits of 10 ETH, totalling 50 ETH.

5 deposits of 1 ETH, totalling 5 ETH.

9 deposits of 0.1 ETH, totalling 0.9 ETH.

Total deposited into Tornado Cash: 455.9 ETH.

The public trace currently ends at those mixer pools. Approximately 0.0362 ETH remained in the final wallet after the deposits and transaction fees. A commitment to reimburse users does not mean the stolen funds have been recovered.

The affected Rain collateral programs were:

26DkA98jjctzPkBEteUsN935CR4dsKx3XvjrtE7MeL4a

CWgkFB7ngUc9cGD1LryyhP7h6xYWtwrAjhSKKCoR1gkz

Both programs shared the same upgrade authority:

EfQ2zvc1xQfscTxCPb1om4s1CetncrfVFSt5zwiUR99J

The last withdrawal captured by the tracker occurred at 19:18:30 UTC. CWgk was patched at 19:18:37, only 7 seconds later. The second program was upgraded at 19:41:08, followed by additional upgrades to both programs shortly after 20:22 UTC.

That timing is consistent with emergency remediation. I found no evidence showing that the shared upgrade authority itself was compromised.

The main Solana collection wallet is now closed. The 7Xigo forwarding wallet is also closed. The main USDC and USDT token accounts are empty. Nearly the entire Ethereum output was pushed through Tornado Cash within minutes.

I have prepared every material wallet, token account, transaction, bridge order, program upgrade and mixer deposit I could verify for Avici, Rain, the other affected programs and the FBI. The complete evidence trail, including every explorer link written out in full, is below.

Who is next?

Attachment to the original X post
Attachment to the original X post Open full-size image ↗
Attachment to the original X post
Attachment to the original X post Open full-size image ↗
Attachment to the original X post
Attachment to the original X post Open full-size image ↗
Attachment to the original X post
Attachment to the original X post Open full-size image ↗

02

Original on X ↗

ON-CHAIN EVIDENCE 2/5: ATTACK SETUP AND CONTRACT SEQUENCE

Main Solana collection wallet:

FVNFzqAny8spWdPmYw6RQ9TkYa29ueFFiqCFD1gQnCEj

https://t.co/P69oF29Mjx

Ethereum wallet that funded the Solana operation:

0xa1a15f1b0d4878873f2933573e4385ab1e4df25c

https://t.co/54o9ZwH8RC

Initial deBridge order:

0x449c188609e2056b081b3124aa28b0516ae12b3516cbb5c1c6452f60bdf8aec6

https://t.co/FXrWpSrpSY

Ethereum bridge transaction:

https://t.co/npYih4ckq1

Solana funding transaction, exactly 1.788549142 SOL:

https://t.co/uFKHz7BIVA

First preparation transaction at 16:49:48 UTC:

https://t.co/3iodlFvor4

Representative affected collateral account:

CHEzcULr75DT3Ug5kaympgiETSSJVHg5CCtHXVZj9Nft

https://t.co/Cu8X6sAOBF

SubmitSignatures:

https://t.co/V8GTbYqkkl

AddCollateralAdmin:

https://t.co/OR6GJWYbDx

Second SubmitSignatures call:

https://t.co/JEG3Cedsxm

WithdrawCollateralAsset, transferring 54.75 USDT:

https://t.co/WWFGyj9RFR

03

Original on X ↗

ON-CHAIN EVIDENCE 3/5: COMPLETE SOLANA CASH-OUT ROUTE

PATH 1

The main wallet transferred 10 SOL to:

4Ln2kwihQuNHFQm1wph1ydNJuHF7mnZ8GkGjXUPcTdbP

https://t.co/ZTqAvtEyND

Transfer transaction:

https://t.co/0C0WFoE3l3

This route bridged 1,018.568494 USDC into 0.417330901146763947 ETH.

PATH 2

The main wallet transferred 10,000 SOL to:

MsaXH6cGDahPQDwJjFYod7RW8QLVDZGByywWvwQ9TFu

https://t.co/4rItms7OpD

Transfer transaction:

https://t.co/QS09nnVgJx

This route bridged 1,021,152.747180 USDC into 418.114140714661107701 ETH. It also returned 8,852.876567 USDC to the main wallet.

PATH 3

The main wallet transferred 886.942478746 SOL to:

7XigoEaHxpoHp819fnajGqsz329Lve9c2SXSq8KaFRVf

https://t.co/vKKltmsEyT

Transfer transaction:

https://t.co/qHeLdVhbri

7Xigo forwarded 886.942478386 SOL to:

Dn1qRqxgCY6XzNe3kMEbGmEPY24MQCD5W1uA8xeBPNch

https://t.co/2tX9ZlJoJ7

Forwarding transaction:

https://t.co/tUjy9gLV84

Dn1q completed 2 bridge orders totalling 91,672.175500 USDC and receiving 37.478275609817443419 ETH.

The main wallet and 7Xigo account are now closed.

Main USDC token account, current balance 0:

https://t.co/RN7eNWg5Ik

Main USDT token account, current balance 0:

https://t.co/Dxa2hcywwa

04

Original on X ↗

@avici ON-CHAIN EVIDENCE 4/5: ALL 4 DEBRIDGE ORDERS

ORDER 1

1,018.568494 USDC into 0.417330901146763947 ETH.

https://t.co/eiBIgf4NK7

Solana source transaction:

https://t.co/w5ScjvAmrh

Ethereum fulfilment:

https://t.co/qN9jx3ASQl

ORDER 2

1,021,152.747180 USDC into…

05

Original on X ↗

ON-CHAIN EVIDENCE 5/5: ETHEREUM, TORNADO CASH AND EMERGENCY PATCHES

Ethereum relay wallet:

0xd70d0f832a9163af4aca0b6f7b282bb0b15be75e

https://t.co/9ODuSULZvh

It received 37.478275609817443419 ETH and forwarded 37.478185484067431919 ETH to the final sink:

https://t.co/8HUUVLtvFO

Final Ethereum laundering wallet:

0x2cE21E4921d3Eb116526c3651Dac0257657338D5

https://t.co/b2daXWREYI

Tornado Cash router:

0xd90e2f925DA726b50C4Ed8D0Fb90Ad053324F31b

https://t.co/UMHtnYHpD0

First 100 ETH deposit:

https://t.co/WlyG7qoYBn

Final 0.1 ETH deposit:

https://t.co/ueO6xgGKlx

100 ETH pool:

https://t.co/qwZcLqprO3

10 ETH pool:

https://t.co/YrBirN7VzC

1 ETH pool:

https://t.co/UtDwOgUxd8

0.1 ETH pool:

https://t.co/qPwN8CJfFm

RAIN COLLATERAL PROGRAMS

https://t.co/zSQ1OYy4EQ

https://t.co/QBAUZtyicN

Shared upgrade authority:

https://t.co/JuCCP17DBo

CWgk patch at 19:18:37 UTC, 7 seconds after the last observed withdrawal:

https://t.co/mN9CatfNTT

26Dk patch at 19:41:08 UTC:

https://t.co/Y1cjanFJ75

Second 26Dk upgrade:

https://t.co/MGVEYzwLe4

Second CWgk upgrade:

https://t.co/aAIFAm2q7v

Official Avici update:

https://t.co/XKHSHI6Ktg

Official Rain update:

https://t.co/cF37OzbGBe

Tria’s acknowledgement:

https://t.co/5PFMvmF021

Initial investigation:

https://t.co/K5WzgV4WYd

Documented fake Avici phishing site:

https://t.co/zAeXBys8Fs

AVICI market data:

https://t.co/KUYwdPumTA

Security researchers are treated as an inconvenience until a criminal monetises the same class of failure against real users.

Then everyone pretends the loss was unforeseeable.

Who is next?

Sources & original posts

Original evidence (47)
MASTR

Support independent research

The investigations, original evidence and guides here are free to read. Voluntary donations help fund the research and keep MASTR’s tools available.

Open wallet