Signed contract action can be replayed unexpectedly
A successfully consumed authorization remains reusable despite a one-use or otherwise bounded execution contract.
Candidate CWE: CWE-294
Test hypothesis#
Sign a harmless action with a local test key, execute it successfully, then submit identical bytes again in the local EVM. Compare with a fresh nonce and an invalid signature.
Evidence required#
Signed message, expected replay policy, nonce state and distinct accepted effects; use only disposable keys.
Rule out false positives#
Some signed orders intentionally allow partial fills or repeated use up to a limit; prove the documented limit was exceeded.
Playbook and command references#
- Contract signatures and oracles: context, freshness and units — Test signed-action context and price-consumer assumptions with local keys, mock feeds and explicit negative controls.
Find the associated command snippets
Referenced by these target playbooks#
Report checklist#
- Capture the affected version, configuration, identities, and object ownership.
- Preserve a valid baseline and a negative control.
- Reproduce the forbidden data access, action, or state change on controlled fixtures.
- Explain the intended security rule and why the observed behavior violates it.
- State prerequisites, uncertainty, cleanup, and the smallest demonstrated impact.
Conditional ATT&CK mapping#
No direct ATT&CK mapping selected. Record the weakness and demonstrated impact without forcing an adversary-behavior classification. See the mapping guide.