Skip to Content
DevelopersSecurity

Security

This page lists the audits, the known vulnerabilities, and the steps to verify your deployment.

Report vulnerabilities to security@zodiac.eco. Do not open a public issue.

Verify your mastercopy

Every Zodiac instance is a proxy that points to a mastercopy. The mastercopy version decides whether known vulnerabilities affect you.

  • Check now: open your instance in the Zodiac App  or read the implementation address from the proxy bytecode on the explorer.
  • In code: the @gnosis-guild/zodiac package exports the canonical addresses and the faulty list. sanityCheckZodiacModuleAddress throws for unknown and for faulty mastercopies.
ContractDeploy onlyDo not use
Roles Modifier2.1.1 — 0xF2964CE6161ce0e75964Fe7927cE114cb0B283D52.1.0 — 0x9646fDAD06d3e24444381f44362a3B0eB343D337
Delay Modifier1.1.1 — 0x824175b945838d127c1ca83cbce11d8e44f6df011.1.0 — 0x01F8cabB808D7dE0dF4202D4B60C8310d2f1339b

The June 2026 incident: ERC-1271 authorization bypass

On 1 June 2026, an attacker exploited an authorization bug in Roles v2.1.0 and Delay v1.1.0. Read the full post-mortem  before you rely on this summary.

The bug. The module-authentication code accepted an ERC-1271 contract signature without a check that the verification call itself had succeeded.

Who was affected. Only setups where a Safe that uses the CompatibilityFallbackHandler was a role member (Roles v2.1.0) or an enabled module (Delay v1.1.0). Setups with only externally owned accounts as members were not affected. Most of the value at risk was secured; Gnosis Pay accounts were the primary exploited deployment.

The fix. Patched mastercopies Roles 2.1.1 and Delay 1.1.1, released on 19 June 2026 after an audit by Gnosis. The faulty versions stay listed in the FAULTY registry of @gnosis-guild/zodiac.

What you must do.

  1. Verify your mastercopy versions (see above).
  2. Run the self-service check at app.zodiac.eco/public/fallback-handler .
  3. If you run a faulty version: replace the instance with a new deployment of the patched mastercopy, and disable the old instance on the Safe.

Audits

ReportScopeDate
G0 GroupZodiac core contractsSeptember 2021
G0 GroupDelay ModifierSeptember 2021
G0 GroupRoles v1January 2022
G0 GroupZodiac Modifier updateFebruary 2023
G0 GroupRoles v2April 2023
OmnisciaRoles v2May 2023
OmnisciaRoles v2.1November 2023
G0 GroupRoles v2.1November 2023
CertoraUniswap V4 custom conditions (by DAMM Capital)August 2025
GnosisThe 2.1.1 / 1.1.1 patchesJune 2026

The reports are in the audits/ and packages/evm/docs/ folders of the repositories.

The trust model in one paragraph

A module is a path into the Safe without signatures. The Safe owners choose which modules exist, which modifier limits each module, and which mastercopy each proxy runs. Roles conditions check calldata, not outcomes: they cannot see prices, balances, or slippage. Design permissions so that a fully compromised member key can only cause losses that you accept, and put a Delay Modifier in front of everything that can cause more. An AI agent is such a member key with a higher probability of misuse — treat its role as if the key were already public. See Permission an AI agent.

Last updated on