App StoreやGoogle Playからダウンロードしたアプリによって、暗号資産ウォレットが危険にさらされることはあるのでしょうか? 2025年2月にKasperskyが公表したマルウェアキャンペーン「SparkCat」は、一見正規のアプリに埋め込まれた悪意のあるコードが、ユーザーの写真を検索してウォレットのリカバリーフレーズを探し出す可能性があることを明らかにしました。Kasperskyによる発見を受け、GoogleとAppleはGoogle PlayおよびApp Storeから複数の感染アプリを削除しました。これは、公式ストアからダウンロードしたアプリであっても、必ずしも安全とは限らないことを示しています。
ここでは、SparkCatの仕組みと、ウォレット所有者がそこから学べることについて解説します。
SparkCatとは?
SparkCatは、AndroidおよびiOSアプリから発見された情報窃取型マルウェアです。アプリで使用されるソフトウェアコンポーネントや、ソフトウェア開発キット(SDK)などに埋め込まれていました。影響を受けたアプリの中には、フードデリバリーなど通常のサービスを提供するものもあれば、被害者を誘い込む目的で作られたとみられるものもありました。
写真へのアクセスが許可されると、SparkCatは光学文字認識(OCR)- 画像内の文字を読み取る技術 – を使って、アクセス可能な写真やスクリーンショットからウォレットのリカバリーフレーズを検索します。条件に一致した画像は攻撃者に送信され、影響を受けたウォレットにアクセスして資金を盗むために必要な情報を与えてしまう可能性があります。

Kasperskyによると、分析時点で感染したアプリはGoogle Playだけで24万2,000回以上ダウンロードされていました。この数字はアプリのダウンロード数を示すものであり、ウォレットの盗難が確認された件数を示すものではありません。

SparkCatマルウェアの仕組み
1. 写真へのアクセスを要求する
ユーザーがサポートチャットなどの機能を開くと、感染したアプリが写真やスクリーンショットへのアクセス許可を求める場合があります。
アクセスが許可されると、SparkCatはアプリがアクセスを許可された画像のスキャンを開始します。写真へのフルアクセスを許可すると、写真ライブラリ全体が露出する可能性があります。

2. OCR技術を使って写真をスキャンする
SparkCatは、Google ML Kitの文字認識機能を使って写真内の文字を読み取ります。これは光学文字認識(OCR)と呼ばれる処理です。
ウォレットのリカバリーフレーズに関連するキーワードや文字列のパターンを探します。検索ルールは攻撃者のコマンド&コントロール(C2)サーバーから取得され、更新することも可能です。このマルウェアはラテン文字、中国語、日本語、韓国語を認識できるため、複数の言語を対象に検索できます。
3. 攻撃者にデータを送信する
検索条件に一致した画像は、デバイスに関する情報や画像内で検出されたテキストとともに、攻撃者が使用するサーバーへアップロードされます。
Kasperskyはさらに、Rustで記述された通信コンポーネントも特定しました。モバイルアプリでは珍しい選択であり、これが分析をより困難にしました。
4. 発見されないようにする
サポートチャットを開くといった通常の操作中に写真へのアクセスを要求することで、SparkCatはこの権限要求を自然なものに見せかけます。
その裏では、暗号化された設定データ、正規サービスに似たドメイン名、通常のシステムソフトウェアを装った悪意のあるコンポーネントを使用しています。また、検出や分析を困難にするため、コードを意図的に分かりにくくする難読化(オブフスケーション)という技術も使用しています。
SparkCatマルウェアの影響を受けたアプリは?
2025年2月、KasperskyはGoogle PlayのAndroidアプリ10本と、AppleのApp StoreのiOSアプリ11本でSparkCatマルウェアを発見したと報告しました。これには、両プラットフォームで感染バージョンが確認されたフードデリバリーサービス「ComeCome」も含まれていました。影響を受けたAndroidアプリは、分析時点でGoogle Play上で合計24万2,000回以上ダウンロードされていました。
その他の影響を受けたアプリには、メッセージングアプリ、ニュースリーダー、暗号資産ウォレット関連のユーティリティなどがありました。正規のサービスを提供しているように見えるものもあれば、AI機能をうたう複数のメッセージングアプリを含め、被害者を誘い込む目的で作られたとみられるものもありました。

Kasperskyは、このキャンペーンがヨーロッパとアジアのユーザーを標的としており、他の地域にも及んでいる可能性があると評価しました。この評価は、マルウェアが使用する検索言語や辞書、そして影響を受けたアプリが提供されていた国々に基づいています。
攻撃者のコマンド&コントロール(C2)サーバーから提供された検索キーワードには、中国語、日本語、韓国語、英語、チェコ語、フランス語、イタリア語、ポーランド語、ポルトガル語の用語が含まれていました。これらの用語はウォレットのリカバリーフレーズに焦点を当てたものでした。

影響とリスク
スマートフォンのギャラリーにウォレットのリカバリーフレーズ(シードフレーズ)の写真やスクリーンショットを保存している場合、SparkCatは特に危険です。
まず第一に、シードフレーズを絶対に写真に撮らないでください!

シードフレーズには適切なオフラインバックアップ方法を使用してください。たとえば、BitcoinVNのシードフレーズバックアップ用スチールプレートなどのツールを使用することで、火災、洪水、その他の災害が発生した場合でもシードフレーズを安全に保管することができます。
マルウェアのスキャンルールは、アクセス可能な写真やスクリーンショットに保存されたパスワードやプライベートメッセージなど、その他の機密情報を標的とするよう変更される可能性もあります。
SparkCatについて確認された事実に加えて、AIツールが犯罪者による盗まれた情報の分析、潜在的な被害者のプロファイル作成、詐欺や恐喝の対象となる価値の高いターゲットの特定を支援する可能性もあります。
SparkCatがGoogle PlayとAppleのApp Storeに存在していたことは、アプリストアの審査が完全ではないことを示しています。一見普通の権限要求や意図的に難読化されたコードによって、マルウェアは発見されることなく動作することができました。
ソフトウェアエンジニアリングには、よく知られた言葉があります。「ソフトウェアは負債である」という考え方です。これはJeff Atwoodが2007年に執筆したエッセイ The Best Code Is No Code at Allでも示されており、約20年が経った現在でもその考え方は十分に通用しています。
ユーザーにとってのセキュリティ上の教訓は明確です。追加するアプリが1つ増えるたびに、信頼しなければならないものも1つ増えます。必要がないアプリ、または安全性に疑問があるアプリは、インストールしないでください。
まとめ
もしSparkCatがあなたのシードフレーズの写真にアクセスできた可能性があるなら、そのシードフレーズは侵害されたものとして扱ってください。安全な端末を使用し、残っている資金を速やかに新しいシードフレーズで作成した新しいウォレットへ移してください。感染したアプリを削除したり、スマートフォンを工場出荷時の状態にリセットしたりしても、一度流出したシードフレーズが再び安全になるわけではありません。
より一般的には、秘密鍵とシードフレーズのバックアップはオフラインで保管してください。写真に撮ったり、スマートフォンに保存したり、オンラインサービスへアップロードしたりしないでください。
長期的な暗号資産の保管は、日常的に使用するデバイスから分離してください。 専用のハードウェアウォレットを使用し、リカバリーバックアップはオフラインで保管してください。
インストールするアプリやソフトウェアを最小限に抑えることで、攻撃対象領域を減らしましょう。Google、Apple、その他のBig Tech企業が自分を守ってくれると盲目的に信頼しないでください。

世界中のサイバー犯罪者は今この瞬間も、あなたやあなたの大切な人から奪えるものをすべて奪おうと企んでいます。家族を守る立場にある者として、家族を守るために必要な対策を講じることは、あなた自身の責任です。
備えるか、失うか – 選択するのはあなたです。