For years, Web3 security guidelines advised users to inspect preview prompts prior to cryptographic signing. While still essential, findings published on July 30, 2026, demonstrate that threat actors are now manipulating the dry-run output itself rather than attempting to conceal malicious logic.
Instead of displaying blatant asset drainage, custom smart contracts generate a reassuring forecast while processing an entirely different script upon reaching the ledger.
Researchers define this emerging exploitation method as transaction simulation phishing.
Rather than bypassing client-side safeguards, this vector weaponizes user confidence in automated evaluation tools. The investigation examines self-custody software conducting pre-execution modeling, including platforms like MetaMask, Coinbase Wallet, and Trust Wallet. The authors clarify that this vulnerability does not stem from a software bug, but from an architectural mismatch between speculative modeling and final settlement.

Modern Web3 interfaces rarely prompt users to authorize raw hexadecimal data. Instead, client software tries to predict state modifications prior to network broadcast.
Before soliciting a signature, the interface evaluates an interaction against the current network snapshot, highlighting key operational details:
The core objective is straightforward: if a pre-flight check detects an unauthorized transfer to an unknown entity, the signee can cancel the request before capital moves.
While this mechanism successfully mitigated traditional wallet-draining tactics over recent years, it incentivized adversaries to alter the forecast display itself rather than relying solely on social engineering.
Also Read: Financial Tools and Services That Flag Suspicious Wallets
Consider booking a hotel room online. At 10:00 AM, a booking platform quotes a deluxe suite at $180. You proceed to checkout. Between confirmation and payment settlement, the backend pricing updates. Upon processing, you receive a standard room for the same fee.
The original data was accurate when computed, yet environmental parameters shifted prior to finalization.
The researchers note that this exact phenomenon occurs on public ledgers. Client software models an interaction against immediate conditions, but actual processing takes place seconds later. During that window, storage slots, block timestamps, gas parameters, or external variables can change, directing execution down an entirely different logical path than the predicted one.
In computer science, this vulnerability classification is known as a time-of-check to time-of-use (TOCTOU) flaw.

Consider an interaction with a decentralized yield aggregator:
Alice’s inputs remained unchanged; the underlying network environment did not. According to the research, specialized phishing code intentionally forces this disconnect between estimated and realized outcomes.
Traditional scams rely on tricking individuals into ignoring obvious red flags. This vector operates differently:
This dynamic creates a potent psychological trap. Rather than coaxing users into overriding safety tools, it encourages total reliance on automated checks until a modified transaction settles under altered parameters.
The study outlines multiple mechanisms capable of inducing this divergence, including storage-dependent logic, timestamp sensitivity, and gas-limit variations. While each variant leverages different EVM variables, all share a single objective: displaying a benign forecast while executing a harmful payload.
The authors emphasize that the initial preview is not inherently incorrect: it accurately reflects network conditions at the exact microsecond of assessment. Because the ledger remains dynamic while the user reviews terms, malicious contracts exploit that temporal window to alter final results.
| Dry-Run Phase | On-Chain Settlement |
|---|---|
| Output appears safe. | Divergent logic branch triggers. |
| Minor reward forecasted. | Assets route to external treasury. |
| Balance shows net increase. | Funds drain from signing address. |
| Triggers false confidence. | Ledger conditions shift pre-block inclusion. |
| No security flags raised. | Realized outcome contradicts prediction. |
At first glance, manipulating client-side output seems improbable since the local application controls the modeling engine. However, the software can only evaluate against the present network state; it cannot guarantee that variables remain static until block inclusion.
Threat actors exploit this temporal gap by crafting contract logic that dynamically alters execution paths based on fluctuating parameters, such as:
During initial evaluation, Branch A executes. Seconds later, when the signed transaction processes on-chain, Branch B activates. Consequently, the user-facing forecast and actual settlement diverge.
Also Read: Crypto Wallet Approval Scams: How Hackers Drain Funds Without Passwords

Alice connects to an unverified protocol to collect an airdrop. Her interface models the interaction and displays:
Satisfied with the output, Alice approves the request. While the entry sits in the mempool, the operator updates an internal storage flag. When settlement occurs, the reward logic is bypassed, and Alice’s initial deposit transfers to an exploit address. The forecast was not fabricated; it accurately reflected an earlier, temporary state.
Another technique detailed in the study leverages UI design habits.
Bob deposits 5 ETH into a vault. His application displays an estimated balance change of +0.001 ETH. Interpreting this as a positive return, Bob authorizes the signature.
Many interfaces prioritize net balance changes over total outbound transfers. During actual processing, the contract retains 4.999 ETH and refunds 0.001 ETH back to Bob. Because a partial refund occurred, the net calculation reported a positive balance shift, masking the substantial gross outflow taking place simultaneously.
The researchers urge developers to display gross outgoing transfers alongside net changes so minor refunds cannot obscure major asset drains.
The study categorizes simulation-phishing code into three core structural families:
Execution relies on values stored within the target address. The adversary updates these internal parameters immediately after preview generation, forcing subsequent processing down an alternate path.
Conditional logic checks the timestamp of the block that mines the interaction. Because the simulated block and final block inevitably carry different timestamps, this minute delta triggers malicious clauses.
Contract behavior alters based on available gas reserves. Because local test environments and live nodes do not always mirror precise gas conditions, the contract utilizes these discrepancies to fork execution logic.
According to empirical findings, storage-control variants were the most profitable, accounting for over 85% of identified financial losses.
| Vector Category | Trigger Altered Post-Check | Potential Impact |
|---|---|---|
| Storage-Control | Internal state variables | Alternate code paths execute post-signature. |
| Timestamp-Control | Block header timestamp | Settlement logic diverges based on time deltas. |
| Gas-Control | Operational gas limits | Local modeling evaluates differently than live nodes. |
| Hybrid Mechanics | Multi-variable parameters | Harmless forecast yields malicious settlement. |

These exploits are actively occurring on live networks. Deploying a custom detection engine named SimGuard, the researchers identified 4,224 phishing contracts across Ethereum, BNB Smart Chain, Avalanche, and Polygon.
Their telemetry linked these deployments to over 5,700 victim addresses and approximately $3.48 million in cumulative losses.
Notably, 91.5% of total monetary damage occurred on Ethereum mainnet. The data also revealed that a small cluster of coordinated threat groups was responsible for most exploits, proving that this method is a repeatable attack framework rather than an isolated concept.
The research does not suggest discarding transaction modeling. On the contrary, the authors emphasize that dry-runs remain among the most effective defense mechanisms in modern Web3 security.
The core vulnerability lies in the static assumption that ledger state remains unchanged between preview generation and block confirmation. To address this gap, researchers propose several architectural enhancements:
Prominently displaying gross outgoing amounts is vital, as partial refunds currently allow malicious operations to appear profitable on surface-level UI summaries.
Also Read: Can Websites Track Your Crypto Wealth Without You Connecting Your Wallet?
The primary takeaway is a shift in security mindset.
The widespread heuristic — "If the preview looks safe, the transaction is secure" — is no longer foolproof. Pre-flight checks remain essential analytical tools, but they cannot serve as immutable guarantees against post-signature state manipulation.
Much like verifying email header domains despite authentic brand formatting, transaction forecasts require supplementary verification when interacting with high-risk environments:
Allocating a few extra minutes to audit contract provenance and source code can prevent severe capital loss.

Historically, Web3 scams focused on tricking users into ignoring explicit risk indicators. The current generation of exploits flips this paradigm: malicious code is designed to force security tooling into generating reassuring predictions.
Rather than attacking the user directly, threat actors exploit the core assumptions governing wallet interface design. Because every simulation relies on a historical snapshot of ledger state, bridging the temporal gap between modeling and settlement remains a critical challenge for Web3 infrastructure.
| Legacy Phishing | Simulation Phishing |
|---|---|
| Obscures malicious actions. | Engineers benign forecast outputs. |
| Relies on bypassing interface warnings. | Exploits user reliance on security tooling. |
| Features suspicious approval requests. | Presents seemingly profitable predictions. |
| Operates via pre-signature deception. | Exploits post-signature state variance. |
| Uses static drainers and fake sites. | Deploys dynamic, state-aware protocol code. |
Transaction simulation remains a cornerstone of self-custody wallet security. The latest findings do not invalidate its utility, but rather highlight how threat actors adapt to exploit state-transition timing gaps.
Client applications do not intentionally present inaccurate data; they accurately compute state predictions at the moment of request. If network parameters shift prior to mining, final execution can branch into malicious paths.
With 4,224 malicious contracts identified across four EVM chains and over $3.48 million lost across 5,700+ addresses, this vector represents a proven risk model. While the paper is currently an arXiv preprint, its empirical dataset underscores a pressing threat surface in decentralized application design.
For end users, the practical directive is clear: treat transaction previews as informative indicators rather than absolute guarantees. Combine automated tool outputs with independent protocol verification, source-code validation, and healthy skepticism toward unexpected signing prompts.
Does this mean MetaMask's transaction simulation is broken?
No. The research does not highlight a bug unique to MetaMask. It describes a structural limitation inherent to state-dependent simulation mechanics across all client applications.
Should I stop trusting transaction previews?
No. Pre-flight checks remain a crucial security layer capable of blocking traditional draining scripts. However, forecasts should not be viewed as absolute guarantees of final settlement behavior.
Which wallets are affected by this vector?
The paper examines transaction simulation as a broader architectural feature utilized by major applications, including MetaMask, Coinbase Wallet, and Trust Wallet, rather than an isolated software bug.
Can this exploit happen on every transaction?
No. It requires custom-built smart contracts specifically designed to evaluate and exploit state variance between simulation and settlement. Standard peer-to-peer transfers and audited protocol calls are not inherently exposed to this vector.
What is the safest operational practice today?
Examine dry-run details thoroughly, avoid signing requests on unverified platforms, validate contract addresses via block explorers, and remember that simulated outputs reflect historical network snapshots rather than guaranteed future states.
Get professional help with your case.