OAK — OnChain Attack Knowledge

Worked example · 2022-09

Wintermute DeFi vault drain — Ethereum — 2022-09-20

Loss
approximately $160M from Wintermute's on-chain DeFi operations vault. Wintermute is a major institutional market-maker; the loss was confined to its DeFi-side operational vault and did not affect its CeFi or OTC books per the firm's public statement.
OAK Techniques observed
OAK-T11.004 (Insufficient-Entropy Key Generation) — canonical large-institutional anchor; the off-line address-generation tool (Profanity) had a 32-bit-seed CPRNG flaw that reduced effective key entropy below the curve floor and made GPU-feasible private-key recovery possible after the 2022-09-15 1inch public disclosure. The case does not map to T11.001 (no signing-vendor compromise) or T11.002 (wallet software was not itself compromised). The historical OAK-T11-broadly-construed framing is preserved in the Discussion below for v0.1-pre-backfill provenance. OAK-T7.001 (Mixer-Routed Hop — proceeds were partially routed through mixing).
Attribution
pseudonymous, attacker not publicly named. Lazarus Group attribution was speculated by some commentators at the time on the basis of laundering-route similarities; it was not confirmed by any authoritative source and OAK records this case as pseudonymous / unattributed.
Key teaching point
the underlying Profanity vulnerability had been publicly disclosed by 1inch five days before the incident, with explicit guidance to rotate keys. Wintermute had begun a partial response but had not rotated the admin authority on its DeFi vault. This is the canonical known-vulnerability-not-rotated failure mode.

Summary

On September 20, 2022, an attacker drained approximately $160M from Wintermute's Ethereum DeFi operations vault. The entry vector was a known-public cryptographic vulnerability in Profanity, an open-source Ethereum vanity-address generator that Wintermute had used to generate gas-saving "leading-zeros" admin addresses. Profanity seeded its CPRNG with a 32-bit unsigned integer, reducing the effective seed space to roughly 2^32 (~4.3 billion) values. 1inch had published a public disclosure of this weakness on 2022-09-15 demonstrating that the private key for any Profanity-generated vanity address could be recovered with modest GPU effort, and explicitly advised affected users to "transfer all of your assets to a different wallet ASAP."

Wintermute's response was partial. According to public post-mortem analyses, the firm moved ETH out of the directly-exposed Profanity-generated hot wallet, but did not revoke the admin authority that the same vanity-address held over the DeFi operations vault. Five days later, an attacker recovered the private key, called the vault's admin functions from the compromised address, and extracted approximately $160M across multiple stablecoins, ETH, and other tokens.

For OAK's purposes, this incident is the canonical case study for two recurring failure modes: insufficient-entropy key generation as a custody-surface vulnerability class, and known-vulnerability-not-rotated as an operational pattern. The first is a v0.x candidate for a standalone Technique; the second is a cross-cutting observation that future T11 pages should document explicitly.

Timeline (UTC)

When Event OAK ref
2022-09-15 1inch publishes public disclosure of the Profanity entropy vulnerability with proof-of-concept private-key recovery; advises immediate key rotation (public disclosure)
2022-09-15 to 2022-09-20 ~$3.3M extracted from other Profanity-generated wallets across the ecosystem before the headline event; coverage in industry press throughout this window T11 broadly construed (cohort-level)
2022-09-15 to 2022-09-20 Wintermute partially responds: moves ETH out of the directly-exposed Profanity hot wallet, but does not revoke the admin authority that vanity-address holds over the DeFi vault (incomplete remediation)
2022-09-20 Attacker recovers the private key of Wintermute's Profanity-generated admin address; calls vault admin functions; ~$160M extracted T11 broadly construed (extraction event)
2022-09-20 Wintermute CEO Evgeny Gaevoy publicly confirms the breach; states CeFi and OTC books unaffected; offers a 10% bounty for return of funds (public response)
Subsequent days Portion of proceeds routed through mixing infrastructure; remainder retained at attacker-controlled addresses T7 (laundering)

What defenders observed

  • Pre-event (custody-surface configuration): Wintermute had used Profanity to generate gas-saving leading-zeros vanity addresses, a common operational practice in 2022 because Ethereum charged less gas for calldata containing leading zero bytes. The vanity-address held admin authority over a substantial DeFi operational vault — a single-key, single-address authority concentration that is an independent T11 surface even setting Profanity aside.
  • Public disclosure window (2022-09-15 to 2022-09-20): the Profanity vulnerability was on the public record with explicit rotation guidance for five days before the incident. Approximately $3.3M had already been extracted from other Profanity-affected wallets in this window — a clear cohort-level signal that exploitation was active and ongoing.
  • At-event: the extraction was a privileged-function call from a legitimate-looking admin address — on-chain, this looks identical to a normal Wintermute operation until the destination is examined. Defenders monitoring Wintermute could not distinguish the attack from a routine vault operation in the call-pattern alone; the destination-address allowlist would have been the load-bearing detection surface.
  • Post-event: Wintermute publicly confirmed the breach within hours, attributed the entry vector to Profanity, and made a public bounty offer. The firm's solvency and CeFi-side operations were stated to be unaffected. The pseudonymous attacker did not respond to the bounty; partial laundering followed standard mixer-routed patterns of the period.

What this example tells contributors writing future Technique pages

  • Known-vulnerability-not-rotated is a recurring custody-side failure mode. The Wintermute case is the cleanest documented instance, but the same shape recurs across multiple T11-class incidents: a public disclosure with explicit rotation guidance, a partial remediation that addresses the most visible symptom, and a residual authority that the attacker reaches via the un-rotated key. Future T11 pages should treat "vulnerability disclosed but key not rotated" as a named operational pattern in their Detection sections, not as an incidental detail of one incident.
  • Insufficient-entropy key generation is a custody-surface class, not a one-off. Profanity is the highest-profile example, but the broader pattern — address-generation tooling that reduces effective key entropy below the cryptographic floor — recurs in custom CLI tools, brain-wallet-style derivations, and time-seeded RNGs in older operational scripts. OAK contributors writing T11 sub-Techniques should treat this as a class, not bind it to Profanity specifically.
  • Partial-response patterns deserve their own observation. Wintermute did respond to the 1inch disclosure — it just responded incompletely. Contributors should not treat T11 incidents as binary "responded / did not respond"; the more useful framing is which authorities were rotated and which were missed. The destination-of-authority audit (every contract or vault for which a given key holds admin / signer / authority privilege) is the load-bearing operational artefact.
  • Pseudonymous attribution is the honest default. Contributors will see Lazarus speculation in the press for many T11 incidents of the 2022-2023 period; in most cases — including Wintermute — the attribution was not confirmed by any authoritative source. OAK records these as pseudonymous / unattributed rather than promoting industry speculation to inferred-strong.
  • Structural parallel to Mango Markets. Both Wintermute (T11-class) and Mango Markets (T9.001) are cases where the underlying vulnerability or mis-configuration was on the public record before exploitation — Profanity for Wintermute, the thin-input MNGO oracle for Mango Markets. The cross-Technique observation is that publicly-known-but-unmitigated vulnerabilities are exploited rapidly once the cohort effect kicks in. Contributors writing other Technique pages where this pattern applies should cross-reference to flag it.

Public references

Discussion

The Wintermute case sits awkwardly in OAK v0.1's T11 taxonomy. T11.001 covers signing-vendor compromise (e.g., the Bybit / Safe{Wallet} case); T11.002 covers wallet-software compromise (e.g., the Atomic Wallet case). Neither captures the Wintermute shape, which is a key-generation tool that produced cryptographically weak keys, exploited at the custody layer once the weakness became public knowledge. The closest existing fit is T11 broadly construed, which is what this worked example is documented under.

For v0.x, this case is the lead motivator for a new sub-Technique:

  • OAK-T11.004 — Insufficient-Entropy Key Generation (proposed v0.x).
    • Scope: any custody-surface compromise where the entry vector is a key produced by a key-generation procedure with effective entropy below the cryptographic floor for the curve and key size in question. Profanity is the canonical example; the class also covers brain-wallet derivations, time-seeded RNGs in operational scripts, and tooling that treats a 32-bit seed as if it were 256-bit.
    • Detection signals: (a) cohort-level — known-vulnerable tooling fingerprints in operational provenance audits; (b) post-disclosure window monitoring for cohort exploitation; (c) authority-graph audits that enumerate every privilege held by a given key, not just the visible balance.
    • Mitigations: rotate-on-disclosure operational discipline; key-generation procedure audits as part of custody-surface reviews; authority-graph enumeration before partial remediation actions.

The structural parallel to Mango Markets noted above is also worth flagging at the framework level: OAK does not yet have a cross-cutting axis for publicly-known-vulnerability-not-mitigated as a recurring operator-side failure mode. This is not a Tactic — it is a temporal property of how a vulnerability was handled — but it shows up across T9, T10, and T11 cases in a recognisable way. Whether OAK eventually surfaces this as a Maturity: sub-classification, a Group-level operator characteristic, or simply a recurring observation in worked examples is a v1.0-era taxonomy question.

Including Wintermute in v0.1 — even with its T11 mapping deliberately under-specified — is essential because the case is one of the highest-profile institutional-DeFi losses on the public record and because the underlying failure mode (rotate-on-disclosure discipline) recurs across many smaller incidents that are otherwise too obscure to warrant standalone worked examples. The Wintermute write-up is the anchor that future T11.004 contributors will reach for first.

Techniques demonstrated (3)