VERDICT —OUT OF SCOPE
Root cause is private-key / signer compromise — the on-chain contract behaved exactly as written. No pre-deployment source audit or bytecode review reaches the key-custody perimeter; this is operational-security territory (HSM/MPC hygiene, key rotation, hot-wallet isolation). Bytecode would show nothing wrong.
▰ METHOD
PRIVATE KEY
PRIVATE-KEY
Root cause
Root-cause analysis not yet published. The incident description below contains all currently available signal — review the attack transaction directly for definitive forensics.
Forensic narrative
Loopring has appeared a serious front-end error, the private key material is set within a range of 32-bit integer, you can find all user private key pairs by brute force method, due to the user's EdDSA key pair is actually limited to a space of 32-bit integer, the hacker can find out the EdDSA key pair of all users by brute force method. Affected by this, Loopring Exchange shut down for half a day for maintenance and upgrade. Attack method (per SlowMist): System design defect. Reported loss: -.
Primary source
https://medium.loopring.io/loopring-exchange-frontend-password-bug-postmortem-cf55ce7e0150 ↗Sourced from
slowmist
Technical record
- chain
- —
- protocol
- Loopring
- bug_class
- private-key
- date_occurred
- 2020-05-07
- loss_usd
- —
- source_id
- sm:loopring::2020-05-07
Related — same bug class· private-key