Injective開発者が使用するソフトウェアツールの悪意のあるバージョンは、ウォレットの秘密鍵とシードフレーズを収集するように設計されており、影響を受けたリリースを通じて機密性の高いウォレット情報を処理するアプリケーションに懸念を引き起こしました。ハッカーは、Injectiveブロックチェーン用のウォレットやアプリケーションを構築する開発者が使用するソフトウェアパッケージを侵害し、暗号資産ウォレットの認証情報を秘密に収集できるコードを追加しました。
セキュリティ企業Socketは、@injectivelabs/sdk-tsのバージョン1.20.21で悪意のあるコードを発見しました。このパッケージは、アプリケーションがInjectiveに接続し、ウォレット関連の機能を管理するのに役立ちます。このパッケージは通常、週に約50,000回ダウンロードされていますが、この数値にはすべてのバージョンが含まれており、事件の影響を受けた人数を表すものではありません。
Socketによると、侵害されたバージョンは約310回ダウンロードされました。しかし、ダウンロードされたからといって、自動的にウォレットキーが漏洩したことを意味するわけではありません。危険なコードは、アプリケーションが秘密鍵またはシードフレーズを処理している間に実行される必要がありました。影響を受けたウォレットの確定数は発表されておらず、資金が盗まれたという公的な証拠もありません。
この事件は、Injectiveブロックチェーン自体の侵害を含んでいませんでした。代わりに、攻撃者は開発者が使用する信頼されたソフトウェアコンポーネントを標的とし、この手法は一般的にソフトウェアサプライチェーン攻撃と呼ばれます。
開発者は、アプリケーションのすべての部分をゼロから作成するのではなく、既製のソフトウェアパッケージに依存することがよくあります。これらのパッケージは、ブロックチェーンへの接続、ウォレットの作成、トランザクションの署名などのタスクを処理できます。今回の場合、悪意のあるコードは公式のInjectiveパッケージ内に配置され、アプリケーションが機密性の高いウォレット情報を処理したときに起動するように設計されていました。Socketによると、このコードは秘密鍵またはニーモニックシードフレーズをキャプチャし、活動を通常の技術レポートとして偽装しながらデータを送信しようとする可能性がありました。
秘密鍵は、その保有者に関連する暗号資産ウォレットの制御権を与えます。シードフレーズは、別のデバイスで同じウォレットを復元するために使用できます。通常のアカウントパスワードとは異なり、これらの認証情報は漏洩後に簡単にリセットすることはできません。
秘密鍵の侵害は、犯罪者が基盤となるブロックチェーンを破ることなくウォレットを直接制御できるため、最も損害の大きい暗号資産攻撃の形態の一つとなっています。最近のセキュリティレビューでは、調査したデータセットで記録された損失の約40%が秘密鍵の事案によるものであることが判明しました。Injectiveの事件は、攻撃者がユーザーがすでに信頼しているソフトウェアやプラットフォームをますます標的にしている理由も示しています。馴染みのあるパッケージ名、確立された開発者アカウント、または認知されたアプリケーションは、悪意のある活動が正当に見えるようにし、ユーザーが疑う可能性を低くします。
Socketによると、不正な変更は、Injectiveプロジェクトへの貢献実績がある開発者のGitHubアカウントを通じて提出されました。本物のアカウント所有者は後で活動を検知し、変更を元に戻しました。利用可能な報告書は、攻撃者を特定したり、アカウントがどのようにアクセスされたかを説明したりしていません。
ウォレット窃取コードは、主要なInjective SDKパッケージのバージョン1.20.21にありました。しかし、Injective npmコレクション内の他の17のパッケージも、同じ影響を受けたバージョンへのリンク付きでリリースされました。これは、一部の開発者が間接的に侵害されたソフトウェアを受け取った可能性があることを意味します。あるアプリケーションが一つのInjectiveパッケージをインストールし、そのパッケージが背後で影響を受けたSDKを自動的に取り込んだ可能性があります。
したがって、この事件を18の個別に感染したパッケージとして記述すべきではありません。利用可能な証拠は、主要なSDKが悪意のある機能を含んでおり、17の関連パッケージがそのバージョンに直接的または間接的に依存していたことを示しています。Socketによると、影響を受けたリリースは、侵害が発見され、クリーンなバージョンが公開された後に非推奨としてマークされました。しかし、Socketの報告時点では、侵害されたバージョンはnpmから完全に削除されておらず、関連するリリース資料はGitHubを通じて利用可能でした。
事件の正確な日付についても報告が異なっています。Socketが公開したタイムラインは6月8日を指していますが、一部の二次報告では活動が7月にあったとしています。月が独立して解決されていないため、正確な日付は議論の余地のない事実として述べるのではなく、情報源に帰属させるべきです。
バージョン1.20.21を直接使用したか、別のInjectiveパッケージを通じて使用した開発者は、影響を受けたソフトウェアによって処理されたウォレット認証情報が漏洩した可能性があるものと想定するよう助言されています。
推奨されるアクションには以下が含まれます:
認証情報がすでにコピーされていた場合、パッケージを更新するだけではウォレットを保護できない可能性があります。第三者が秘密鍵またはシードフレーズを取得すると、古いウォレットは安全であると見なすべきではありません。ウォレットユーザーは、承認する権限も検討する必要があります。別の事例では、被害者が悪意のある権限リクエストに署名した後、攻撃者が約92,000ドル相当のTether Goldを盗みました。これは、犯罪者が資産を奪うために必ずしもシードフレーズを直接入手する必要はないことを示しています。
その事例は異なる手法を使用しましたが、同じより広範な問題を浮き彫りにしています。つまり、暗号資産のセキュリティはブロックチェーンだけでなく、ウォレットを取り巻くソフトウェア、承認、サービスにも依存しています。現在、Injectiveブロックチェーンがハッキングされた、すべてのInjectiveウォレットがリスクにさらされた、または確認された額の暗号資産が盗まれたという証拠はありません。既知の危険は、侵害されたパッケージをインストールし、それを通じてウォレット認証情報を処理したアプリケーションに限定されます。

