Incidents

Bonzo Lend exploit: oracle accepted a zero signature

Illustration: Oracle signature verification

Published Oct 13, 2026

Project
Bonzo Lend
Chain
Hedera
Date
Jul 11, 2026
Loss
$9.05M
Class
Oracle signature verification
Basis
Project post-mortem or audit firm analysis

On July 11, 2026 an attacker pushed a price update for the SAUCE/WHBAR pair to the Supra oracle used by Bonzo Lend. The update carried a signature of [0, 0] and referenced committee ID 2, which had never been populated.

The verifier, requireHashVerified_V2, looked up the committee's public key. For an empty slot the lookup returned a zero key instead of failing. The pairing precompile, given zero inputs, returned true, so the forged price was accepted as signed.

SAUCE was now valued roughly 10^12 times above market. With 250 SAUCE as collateral the attacker borrowed 6,634,528 USDC and 34,518,389 WHBAR, about $9.05M. A second wallet that called itself a white hat took about $1.0M more. Bonzo paused the market at 01:41 UTC, fifty minutes after the price update.

The bug was not in Bonzo's own contracts. It was in the oracle provider's verifier, and Bonzo inherited it by trusting that verifier completely.

How to protect your protocol

Sources

How this was prepared: compiled from the sources above with the help of automated tools, then reviewed by the Foothold security team before publication.

Give Atlant a task Could the same thing happen in your code? Get it checked →