Back to Blog

Web3フィッシング詐欺における「ROP」の使われ方:詳細分析

MetaSleuth
April 25, 2024

新しいフィッシング手法が人気を集めていることがわかりました。セキュリティベンダーが「フィッシングコントラクト」とラベル付けするようなものを展開する代わりに、詐欺師は正規のコントラクトを悪用して攻撃を実行しています。

このブログでは、詐欺師がどのようにそれを行い、フィッシングに遭わないための対策について説明します。

概要

通常、詐欺師は被害者からトークンを盗むためにフィッシングコントラクトを展開します。具体的には、フィッシングコントラクトには不審なpayable関数とマルチコール関数が含まれています。フィッシングウェブサイトを訪問したユーザーは、これらのコントラクトにETHを送金したり、トークンを承認したりします。しかし、セキュリティベンダーやウォレットはこれらのフィッシングコントラクトを検出し、フラグを立てることができるため、それらへのトランザクションは禁止されます。

しかし、私たちは詐欺師が評判の良いWeb3プロジェクトによって展開された正規のコントラクトをフィッシング目的で悪用していることを発見しました。そして、これらの正規のコントラクトはフィッシングとしてラベル付けされ、ブロックされることはありません。これは、新しいコントラクトを展開せずに、既存の正規のコントラクトをフィッシングに再利用するため、Web3フィッシングウェブサイトで「ROP」と名付けました。これは、従来のソフトウェアセキュリティ分野におけるROP攻撃(またはコード再利用攻撃)に似ています。

具体的には、Return-oriented programming (ROP) は、攻撃者が既存のライブラリのコードスニペットを利用できるようにするコンピュータセキュリティエクスプロイト技術です。Web3フィッシングにおいて、「ROP」は、正規のプロジェクトによって展開されたコントラクトを不正な目的で活用することを指します。この現象は、Twitterアカウント@MevRefundが投稿で最初に報告しました。

従来のWeb3フィッシングコントラクトの仕組み

Web3フィッシングの初期段階では、詐欺師はEOA(Externally Owned Account)を設定し、ユーザーをこのアカウントにETHを送金したり、他のトークンを承認させたりするように誘い込みます。しかし、この動作は現在、ウォレットによって容易に検出され、ユーザーによって発見されます。その結果、詐欺師はフィッシングコントラクトの展開に転じました。ETHフィッシングの場合、詐欺師は通常、「Claim」や「Security Update」のような疑わしい名前のpayable関数を使用します。これらの魅力的な関数名は、ユーザーにフィッシングトランザクションに署名させ、ETHを送金させます。

ERC20およびERC721トークンフィッシングの場合、詐欺師はユーザーをフィッシングコントラクトにトークンを承認するように誘い込みます。その後、フィッシングコントラクトのMulticall関数が呼び出され、ユーザーのトークンが送金されます。特に、Multicall関数は、単一の呼び出しで複数の特定の内部トランザクションを実行するように設計されています。NFTゼロオーダー購入、ERC20承認フィッシング、またはERC20パーミットフィッシングなど、さまざまなフィッシングスキームは、さまざまなフィッシングトランザクションを使用します。これにより、トランザクションパラメータを設定し、対応するフィッシングスキームに基づいた特定のフィッシングトランザクションを起動するためにMulticallを活用できます。

現在、多くの人気のあるWeb3ウォレットには、フィッシングアカウントのブラックリストが構築されています。それらはユーザーに積極的に通知し、これらの不正なアカウントへのトランザクションを防ぎます。

Web3フィッシングにおける「ROP」

フィッシングアカウントのブラックリストメカニズムを回避するために、詐欺師はブラックリストに追加できないアカウントに目を向けます。具体的には、評判の良いプロジェクトによって展開されたMulticallコントラクトを悪用し、複雑なトランザクションを実行するためにその機能を利用します。これらの正規のコントラクトはフィッシングアカウントとしてラベル付けできないため、詐欺師はユーザーにこれらのコントラクトにトークンを承認するように促します。これらの正規のコントラクトは誰でも呼び出すことができるため(アクセス制御なし)、詐欺師はそれらを即座に悪用してユーザーのトークンを転送できます。以下の図は、プロセス全体を示しています。

Figure 1: 「ROP」のプロセス全体
Figure 1: 「ROP」のプロセス全体

例えば、有名なフィッシング犯罪シンジケートであるAngel Drainerは、Uniswap V3: Multicall 2を悪用して89件のフィッシングトランザクションを実行しました。正規のマルチコールコントラクトは、資産を保持しないことを意図していたことに注意してください。したがって、その設計上、誰によってでも呼び出されても問題ありません。しかし、詐欺師はこのコントラクトを悪用して、フィッシングコントラクトを展開することなくフィッシング攻撃を実行しました。

提案

ユーザーは注意を払い、特に承認トランザクションの前に、あらゆるアクションの詳細を注意深く確認することを推奨します。常に承認を確認し、疑わしいものはすべて取り消してください。

Sign up for the latest updates
Tether Freezes $6.76M USDT Linked to Iran's IRGC & Houthi Forces: Why On-Chain Compliance is Now a Geopolitical Battlefield
Security Insights

Tether Freezes $6.76M USDT Linked to Iran's IRGC & Houthi Forces: Why On-Chain Compliance is Now a Geopolitical Battlefield

Looking ahead, targeted freezing events like this $6.76M USDT action will only become more common. On-chain data analysis is improving. Stablecoin issuers are also working closely with regulators. As a result, hidden illicit financial networks will be exposed.

Weekly Web3 Security Incident Roundup | Mar 2 – Mar 8, 2026
Security Insights

Weekly Web3 Security Incident Roundup | Mar 2 – Mar 8, 2026

During the week of March 2 to March 8, 2026, seven blockchain security incidents were reported with total losses of ~$3.25M. The incidents occurred across Base, BNB Chain, and Ethereum, exposing critical vulnerabilities in smart contract business logic, token deflationary mechanics, and asset price manipulation. The primary causes included a double-minting logic flaw during full token deposits that allowed an attacker to exponentially inflate their balances through repeated burn-and-mint cycles, a price manipulation vulnerability in an AMM-based lending market where artificially inflated vault shares created divergent price anchors to incorrectly force healthy positions into liquidation, and a flawed access control implementation relying on trivially spoofed contract interfaces that enabled attackers to bypass authorization to batch-mint and dump arbitrary tokens.

Weekly Web3 Security Incident Roundup | Feb 23 – Mar 1, 2026
Security Insights

Weekly Web3 Security Incident Roundup | Feb 23 – Mar 1, 2026

During the week of February 23 to March 1, 2026, seven blockchain security incidents were reported with total losses of ~$13M. The incidents affected multiple protocols, exposing critical weaknesses in oracle design/configuration, cryptographic verification, and core business logic. The primary drivers included oracle manipulation/misconfiguration that led to the largest loss at YieldBloxDAO (~$10M), a crypto-proof verification flaw that enabled the FOOMCASH (~$2.26M) exploit, and additional token design and logic errors impacting Ploutos, LAXO, STO, HedgePay, and an unknown contract, underscoring the need for rigorous audits and continuous monitoring across all protocol layers.

Go Deeper with MetaSleuth Investigation

Extend your crypto compliance capabilities with Blocksec's MetaSleuth Investigation, the first platform for tracing funds, mapping transaction networks and revealing hidden on-chain relationships.

Move from detection to resolution faster with clear visual insights and evidence-ready workflows across the digital assets ecosystem.

MetaSleuth Investigation