Crypto exploits

Argent exploit analysis

An attacker took 50,655.92 USDC from two Argent-style smart wallets on Ethereum on 19 October 2026 by replaying signatures the wallets had accepted in 2020 and 2021 through an execution module that keeps no nonce. DeFiHackLabs cites SlowMist's figure of about $59.8K.

David

Security ·

Reported loss
$60K
Occurred
Logged

Logged as “2026-10-19: An Argent Style Smart Wallet Relays Owner And Guardian Signatures Through An Execution Module That Never Consumes A Nonce Or Records The Signed Message Hash And Whose Signed Deadline Is Unchecked And Overflows So Two Signatures That Authorized Wallet 0Xe545 In 2020 And 2021 Still Pass Today And Can Be Resubmitted By Anyone And A Recovery Deadline Setter Whose Attacker Supplied Period Wraps The Deadline Into The Past Forces An Immediate Same Transaction Owner Change So The Attacker Flash Borrows Weth From Balancer Replays The Old Signatures To Drive The Wallets To Buy Mark In A Thin Markweth Pool While Trading Around Them And Repeats Across The E545 And 5A79 Wallets For 5065592 Usdc on Argent”.

Analysis3 min read

Two old signatures, still good

The wallets in this incident are Argent-style smart wallets. Their relay entry point, execute(address,bytes,uint256,bytes,uint256,uint256), recovered an owner or guardian ECDSA signature over a signed message and then relayed it onward. Two things were missing from that path. The module never consumed a nonce and never recorded the signed message hash as used, so a single 65-byte signature could be accepted over and over. The deadline carried in the signed payload was not enforced, and overflowed, so a signature produced years earlier still passed the time guard. The DeFiHackLabs entry and the proof of concept name the two modules involved, the execution module at 0x4e50aDFc953551286BBD7Fee2b2b846D1D227394 and the recovery module at 0xf490557d67D934440677a4f16793d5EF319B8ef5.

The attacker's copies of those signatures were not obtained by breaking anything. Both had already been used on chain. The recovery relay signature authorised wallet 0xe545B9a69bfF1Bf0ed2E922551DDA4AFc8EE8f66 in a transaction at block 11,266,059 on 16 November 2020. The swap relay signature authorised the same wallet in a transaction at block 11,948,627 on 28 February 2021. Both appear byte for byte in the first attack transaction years later.

Changing the owner in the same transaction

The second flaw puts the wallet back under its 2020 owner. The recovery module exposes a deadline setter, 0x254a2e49, and the period it accepts is attacker-supplied. A value chosen to overflow wraps the wallet's recovery deadline into the past. A years-old guardian signature, relayed through the recovery module's execute to call executeRecovery, then sets a new owner, and because the deadline is already past, finalizeRecovery completes the owner change inside the same transaction. The owner it sets is 0x56F17DD1c69Ee819901006E462B76e7a2ea75EF8, the address the 2020 recovery named, not one the attacker chose. The wallet had changed owner several times since, most recently in June 2022.

Trading against the victims

With the owner changed on the e545 wallet, the attacker flash-borrowed 0.5 WETH from Balancer and ran nineteen iterations. Each one pushed 0.06 WETH into the MARK/WETH Uniswap V2 pool at 0x6f23D2FEdb4fF4F1E9F8C521f66E5F2A1451b6F3, replayed the old owner signature so the wallet bought MARK at the inflated price, sold the MARK back for more WETH, and repeated. The pool was thin, holding about 0.001 WETH of depth at the fork block. Each pass made the wallet spend roughly 1.06 ETH on MARK, and the profit from the nineteen passes came to about 20.17 WETH, which the attacker swapped into USDC.

The same pattern ran nine times against the 5a79 wallet 0x5a79E5772493cF4329682D202aA2D28f85A85440, where no owner change was needed, and each replayed swap cost that wallet 1,000 USDC. This leg borrowed 2 WETH from Balancer and pushed only 0.0005 WETH into the pool on each pass.

The figures

DeFiHackLabs cites SlowMist's figure of about $59.8K and measures 50,655.92 USDC on chain as the attacker's proceeds: 48,778.499253 USDC from the e545 leg, which the first attack transaction pays into the attack contract 0x3c5884377cca79ff221936aea4a5df43293fb310, and 1,877.419234 USDC from the 5a79 leg in the second. The wallets lost more than that. The e545 wallet paid out 20.66 ETH across the nineteen replays, 1.0619 ETH into each swap plus a 0.0256 ETH fee to 0xd33814c56fdacdc7f084a5443d600ee5464452e7, and the 5a79 wallet paid 9,405.36 USDC across nine, 1,000 USDC plus a 45.04 USDC fee each time. The MARK transfer events in the two transactions count 57 and 27, consistent with nineteen and nine replays of three MARK movements each. The transactions landed five blocks apart on 19 October 2026, at blocks 26,225,798 and 26,225,803 (09:42:35 and 09:43:35 UTC), both from 0xc10609ce5c032db92e562e463b1234aab0872b02.

Where this sits in the corpus

Signature replay is a recurring shape in this corpus. TrustedVolumes and AROS carry the label directly, DoinGud replayed an accepted offer because the cleanup that should have invalidated it never ran, Nimiq skipped the signature check in favour of a paymaster the attacker chose, and GiddyVaultV3 had incomplete signature coverage. Argent is the variant where the signature was never forged, never mis-scoped and never obtained by any breach. It was a valid signature, correctly signed, that had never been made single-use.

Sources read (8)

Other exploits

Query every incident yourself — free, no signup

Updated 11 Nov 2026. Figures are as reported by the sources listed above and are not independently verified.