Pre-auditThree days of senior audit time for $1,500, credited in full toward your Zealynx audit.3 audit days, credited toward your auditSee how →
Checklists/EVM/Wallet & Account Abstraction Security

Wallet & Account Abstraction Security Checklist

20 security checks for Safe integrations, account abstraction, wallet modules, and smart account systems. Covering EIP-712 typehash mismatches, Safe version incompatibility, guard bypasses, signature replay, and recovery mechanism exploits. Derived from real audit findings including Brahma, Biconomy, and major Safe integrations.

Threat Analysis

Key statistics from analyzing wallet and account abstraction audit findings:

• 800+ findings analyzed from real smart contract audits across Safe integrations and AA wallets

• 20 vulnerability patterns identified and categorized across 4 security domains

• 13 Critical/High items require immediate attention in any wallet/AA audit

📄
Want this as a PDF? DM me on Telegram →
⚡

Automate with Krait CLI

12/20 checks

60% of these checks can be automated against your codebase. 8 checks require manual review.

/krait:scan --deepInstall Krait →
Showing 20 of 20 vulnerabilities
#1

EIP-712 Typehash Mismatch

CriticalKrait
▼

Typehash string does not match the actual struct definition, causing signatures to validate against wrong data

#2

Signature Replay Across Chains or Contracts

CriticalKrait
▼

EIP-712 domain separator missing chainId or verifyingContract, enabling cross-chain/cross-contract replay

#3

Nonce Management Gaps

HighKrait
▼

Nonces are not per-operation-type, enabling cross-type replay or nonce collision

#4

Signature Malleability Acceptance

High
▼

Contract accepts both high-s and low-s ECDSA signatures, enabling signature replay with different s values

#5

Missing Signature Deadline/Expiry

Medium
▼

Signed messages have no expiry, allowing indefinite replay of old authorizations

#6

Safe Version Interface Incompatibility

CriticalKrait
▼

Code targets one Safe version but deploys with another — guard interfaces, module callbacks, and return data differ

#7

Missing Validation on Module Enable/Disable

CriticalKrait
▼

Modules can be enabled without proper Safe owner authorization, allowing unauthorized transaction execution

#8

Module Transaction Gas Refund Drain

HighKrait
▼

Gas refund parameters not included in policy validation, allowing executor to drain Safe ETH

#9

Uninitialized Proxy Implementation

HighKrait
▼

Safe module or guard proxy implementation can be initialized by anyone, enabling takeover

#10

Validator Registration Without Ownership Proof

HighKrait
▼

Validator or sub-account can be registered for a Safe without proving ownership of that Safe

#11

Guard Bypass via Module Execution

CriticalKrait
▼

Guard protects execTransaction but modules execute via execTransactionFromModule without guard checks

#12

Delegate Call Restriction Bypass

HighKrait
▼

Policy restricts call operations but does not restrict delegatecall, enabling arbitrary code execution in Safe context

#13

Fallback Handler Manipulation

HighKrait
▼

Fallback handler can be changed by a module, enabling interception of all calls to the Safe

#14

Insufficient Transaction Validation in Guard

High
▼

Guard checks transaction parameters but not the actual call data, allowing malicious payloads

#15

Single Owner Safe Without Recovery

Medium
▼

Safe with single owner and no recovery module — lost key means permanently locked funds

#16

Recovery Mechanism Takeover by Colluding Guardians

HighKrait
▼

Social recovery guardians can collude to take over the Safe without the owner's knowledge

#17

Session Key Over-Permissioning

High
▼

Session keys granted overly broad permissions — no amount, target, or time restrictions

#18

UserOperation Validation Insufficient

High
▼

ERC-4337 account validates UserOperation signature but not the operation parameters

#19

Paymaster Drain via Gas Manipulation

High
▼

ERC-4337 paymaster can be drained by submitting operations with inflated gas parameters

#20

Upgrade Path Missing or Unprotected

Medium
▼

Smart account has no upgrade path, or upgrade can be triggered without full owner authorization

Need a Professional Wallet or AA Audit?

Smart wallets and account abstraction systems are the most security-critical code in Web3 — they directly custody user funds. Get your wallet, Safe module, or AA system audited by a team that understands EIP-712, Safe compatibility, and ERC-4337.