Public incident archive · updated weekly
1,265 public crypto incidents, broken down by technique
Together they lost $20.64B. By technique, frontend/domain hijacks and social engineering happen at the moment of payment: screening the payee address and the payment URL first can stop the share already on a list or phishing feed before money leaves; rugpulls show warning signals such as a new contract with no history. Key compromise, contract bugs, oracle manipulation and bridge flaws happen inside wallets and contracts and need other controls, such as key management and code audits. Each class is marked below.
1,265
$20.64B
197
By technique: where pre-payment screening applies
“Partly applies” means pre-payment screening covers part of that class — what is already on a list or phishing feed, or shows warning signals — not every incident in it.
| Technique | Count | Lost | Pre-payment screening |
|---|---|---|---|
| Access Control | 221 | $1.96B | Broken contract permissions are a code-audit matter that pre-payment screening cannot see. |
| Protocol Logic | 168 | $251.5M | Protocol logic flaws call for audits and formal verification. |
| Oracle Manipulation | 158 | $888.0M | Oracle manipulation is a price-feed design problem. |
| Token & Share Accounting | 157 | $1.44B | Accounting and share-math bugs are contract-layer problems for code audits. |
| Key Compromise | 153 | $8.55B | Key compromise is a wallet and key-security matter; screening the counterparty or endpoint does not touch it. |
| Frontend & Infrastructure | 95 | $1.04B | When a frontend or domain is hijacked the payee address is freshly generated and on no list, but the hijacked host is often already in public phishing feeds, so endpoint screening catches part of this class. |
| Input Validation | 69 | $755.4M | Missing input validation is a contract code defect for code audits. |
| Reentrancy | 63 | $458.1M | Reentrancy is a classic contract bug, unrelated to the counterparty; code audits address it. |
| Social Engineering | 60 | $3.11B | Phishing and fake-airdrop hosts show up in public domain feeds, and some payee addresses are already listed. Screening the endpoint and the counterparty before paying catches part of this class. |
| Bridge & Cross-Chain | 50 | $1.53B | Bridge mint/verification flaws happen inside the bridge and are addressed by its own security design and audits. |
| Rugpull | 42 | $284.7M | Rugpull contracts are usually new, with no history and no audit — visible warning signals before paying, used as signals only, never as proof. |
| Governance | 18 | $235.9M | Governance attacks are countered by voting design and timelocks. |
| Market Manipulation | 11 | $135.1M | Market manipulation is a liquidity and market-design problem. |
How pre-payment screening addresses these
When a frontend is hijacked or a domain spoofed, the payee address shown is freshly generated — no address list has ever seen it. The hijacked host, however, is often already in public phishing feeds. This class can only be caught at the endpoint layer.
GET /api/endpoint?url=…
Addresses that received stolen funds, and payee addresses of known scams, are often already on community lists. Screening before settlement stops the known share before the money leaves.
GET /api/risk?addr=…
They answer different questions: address screening catches known-bad payees, endpoint screening catches spoofed payment URLs — use both.
The last 40
Source and notes
- All incidents come from the public dataset DefiLlama Hacks. We carry it as published — amounts and classifications unchanged.
- Class counts are computed from the data on every render and follow the upstream dataset as it updates.
- The upstream dataset has no per-incident press links, so attribution is at the dataset level.
- The “partly applies / needs other controls” column is our own judgement about the class of incident. It is not a conclusion about any specific event and assigns responsibility to no one.
- We add no speculation and name no unconfirmed parties.

