An attacker drained $2.19 million from the Aztec Connect Router contract on Ethereum on June 14, according to security firm CertiK. The exploit targeted a legacy version of Aztec Connect that had been deprecated for years but still held millions of dollars in user assets.

In a thread on X, CertiK said the attack may have been caused by incomplete verification of proof data submitted to the contract. The security firm said that part of the proof data appeared to have been verified, while the parameters used to process token transfers were not fully checked, potentially allowing unauthorized withdrawals. The attacker extracted multiple assets, including ETH, DAI, and wstETH.

Loading tweet...

The incident affected Aztec Connect, a privacy-focused rollup and bridge that allowed users to interact with Ethereum-based DeFi protocols through zero-knowledge proofs. The product was sunset after Aztec shifted its focus toward building a decentralized privacy-focused Layer 2 network.

Aztec announced plans to retire Aztec Connect in 2023 and continued processing transactions and withdrawals until March 31, 2024. Users were given time to withdraw their assets before the service was shut down. After the sunset process was completed, administrative privileges were removed and the remaining contracts became immutable, meaning they could no longer be upgraded or modified. Although Aztec Connect was no longer actively operating, millions of dollars in assets remained locked in the legacy infrastructure.

BlockSec Says Aztec Connect Exploit Stemmed From Mismatch Between Rollup Verification and Settlement Logic

Blockchain security firm BlockSec said its investigation found that the Aztec Connect exploit was caused by a mismatch between how transactions were verified inside the rollup and how they were processed on Ethereum.

According to BlockSec, the protocol's zero-knowledge proof system verified a larger set of transactions than the settlement logic later processed. This allowed the attacker to structure transactions in a way that made deposits appear valid inside the rollup while avoiding some of the checks normally required when funds entered the system.

The attacker placed a legitimate deposit transaction outside the portion of the transaction list that received full settlement processing. As a result, the rollup credited the attacker with balances that were not backed by actual deposited assets.

The security firm said the attacker used this technique to create unbacked balances across seven different assets before withdrawing them through normal settlement mechanisms. The exploit ultimately resulted in the theft of $2.19 million from the legacy Aztec Connect infrastructure.

Loading tweet...

BlockSec also highlighted the timing of the incident. Aztec Connect's sunset plan stated that transaction processing and withdrawals would continue only until March 31, 2024, when the sequencer was expected to stop operating. However, BlockSec noted that an update to the affected rollup processor contract was deployed in April 2024 and said the available materials suggest the change was not reviewed through an external audit before deployment.

Aztec Labs Says It Has No Control Over Deprecated Aztec Connect Contracts

Aztec Labs said it is investigating the incident and confirmed that more than $2.1 million was transferred from the immutable Aztec Connect smart contracts.
In a post on X, the company said Aztec Connect was deprecated three years ago and that it no longer holds administrative control over the system. According to Aztec Labs, the contracts cannot be paused, upgraded, or modified because the project no longer possesses admin keys.
The company said it will provide additional updates as its investigation continues.

Loading tweet...