AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Moderate 60 Bitcoin

fix(core/ethereum): disallow EIP-7702 authorization with `chain_id = 0`

Public commit record

What the developer wrote

Authored by Roman Zeyde

90/100 · Strong
fix(core/ethereum): disallow EIP-7702 authorization with `chain_id = 0`

https://satoshilabs.slack.com/archives/C08A0CQK8KH/p1785846955923599

[no changelog]
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope✓ Provides an explanatory body✓ Links an issue, advisory, or supporting reference✓ Names security-relevant behavior explicitly
The short version

What changed, and why it matters

This commit removes a feature in Trezor's Ethereum signing code that allowed users to sign EIP-7702 authorization messages with chain_id set to 0, which previously made the signature valid on all EVM networks. The change now rejects chain_id 0 with an explicit error. This is a defensive security hardening step: a universally valid authorization signature could let an attacker or malicious application reuse a single signed authorization across unexpected chains, potentially changing what account controls a user's address on another network. The commit itself does not describe a specific attack or credit an external reporter.

Recommended action

Treat as a security hardening fix. Users relying on EIP-7702 with chain_id 0 must update workflows to request a specific chain ID. Review whether any external documentation or third-party integrations (e.g., Ambire, MetaMask) referenced the 'all networks' behavior and update them. Consider whether a CVE or advisory is warranted if this behavior was ever reachable from untrusted host software.

Security signals we found

01

Cross-chain replay risk reduction for EIP-7702 authorizations

02

Removal of 'chain_id 0 means all chains' special case

03

Input validation hardening in Ethereum signing path

04

Test fixtures converted from success to error cases for chain_id 0

Risk score

Why this scored 60/100

Our methodology →
Potential impact 18/30
Exploitability 12/25
Stealth signal 8/15
Affected reach 10/15
Confidence 8/10
Evidence quality 4/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.