Audius Governance Hack

Treasury token value $6.0M
Ethereum
Repeated Initialization

What happened

On July 23, 2022, an attacker took control of Audius's Ethereum governance and transferred 18,564,497 AUDIO from its community treasury. A proxy storage collision allowed supposedly one-time initialization functions to run again. The roughly $6 million figure values the treasury tokens, not the attacker's proceeds after selling them.

Technical root cause

A custom proxy and the implementation's Initializable state used the same storage slot. The collision made the initialization guard ineffective and allowed repeated calls to initialize().

How it happened

  1. Audius's custom proxy stored its administrator address in slot 0, overlapping the implementation's Initializable flags and defeating the initialization guard.
  2. The attacker called initialize() again on governance, staking, and delegation contracts, creating unauthorized voting power.
  3. Malicious proposal 85 passed and transferred the community treasury's AUDIO to the attacker.

Audius blocked the vulnerable paths and patched the contracts. Its postmortem records restoration of staking and delegation on July 26 after additional review.

Protocol details

Classification Proxy Storage Collision / Governance Takeover
Protocol Type Exploit/Other
Affected asset / contract AUDIO
Implementation language Solidity
Protocol links Website @audius

Build your security review skills

Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.