アプリケーションや Web サイトからデータを抽出することを目的とした新たなソフトウェア サプライ チェーン攻撃が、20 を超える NPM パッケージで発見されました。
脅威 -
今月初め、ReversingLabs は、JavaScript NPM 攻撃である IconBurst を特定しました。 モバイル アプリケーションや Web サイトに埋め込まれたフォームからデータを収集する悪意のある NPM モジュールをインストールします。
広める -
現時点では攻撃の広がりは完全には明らかではありませんが、開発者がこれらのパッケージを使用して構築した Web サイトやアプリに大量感染する可能性があります。各開発者が複数のサイトを構築できるため、脅威は増大します。一部のパッケージは数万回ダウンロードされるため、推定範囲は Log4J や SolarWinds などの過去の大量感染と同じくらい広範囲に及ぶ可能性があります。 Log4J はより広範囲に広がり、SolarWinds の影響はより大きくなりましたが、最終的な被害も同様に重大になる可能性があります。
技術–
パッケージは、デプロイされたアプリケーションからデータを盗むことを目的とした jQuery スクリプトを使用します。
さらに、IconBurst は JavaScript 難読化ツールを使用してコードの一部を隠します。 難読化ツールは通常、オープンソース パッケージ内の独自コードを保護し、JavaScript ファイルを圧縮することを目的としています。ただし、IconBurst は、シリアル化されたフォーム データの抽出に使用される抽出アドレスを隠すためにこれを使用します。
これは、これらの偽のパッケージを知らずに使用している開発者が攻撃のターゲットではなく、本当のターゲットはエンド ユーザーであることを意味します。
感染 -
今年の初め以来、配布手段としてタイポスクワッティング手法を使用している 24 のパッケージが確認されています。
攻撃者はタイポスクワッティング手法を使用します。これは、NPM などのパブリック リポジトリを介して正規のパッケージになりすますことを意味します。
IconBurst は、「Icon」という単語を含むパッケージに焦点を当て、高トラフィックの NPM モジュールを偽装し、紛らわしい一般的なスペルミスのある名前を含むパッケージを提供します。
タイポスクワッティングは、サイバースクワッティング攻撃の一形態であり、ソーシャル エンジニアリング攻撃の一形態です。
基本キーワードとして「icon」を使用する理由 – その理由はおそらく、ionic フレームワークを使用して構築されたアプリケーションでアイコンを提供するために頻繁に使用される ionicons パッケージです。
icon-package のダウンロード数は 17000 を超え、これまでで最もダウンロードされたパッケージであり、ionicio パッケージのダウンロード数は 3700 を超えています。
フラグ -
それで何ができたのか リバーシングラボ ことわざの赤旗を上げますか? JavaScript 難読化ツール。
前述したように、JavaScript 難読化ツールは Javascript アプリケーションを保護することを目的としており、開発者はコードをコピーやリバース エンジニアリングから保護できます。
ただし、この機能の欠点は、悪意のあるコードを偽装するために攻撃者によって悪用される可能性があることです。
JavaScript 難読化ツールの存在により、ReversingLabs のエンジニアは多数の NPM パッケージを検査し、それらのパッケージの名前を調べたところ、あるパターンが現れました。最初に検査されたパッケージのいくつかには「アイコン」という単語が含まれており、この時点で、タイプミス スクワットと大量感染という攻撃者の戦略が明らかになりました。
攻撃者はアイコンという単語を含むパッケージを特に狙ったわけではありませんが、人気があるため、最終的にダウンロードされたパッケージのほとんどはアイコンに関連したものでした。
ハンス – 「アイコンバースト」
ここにリストがあります:
作者/パッケージ名 | ダウンロード数 | 元のパッケージ名 |
---|---|---|
イオンアイコン | 108 | イオニコン |
イオニシオ | 3,724 | イオニコン |
アイコンパッケージ | 17,774 | イオニコン |
ajax-libs | 2,440 | |
傘 | 686 | 傘 |
ajax ライブラリ | 530 | |
アイコンパッケージ | 101 | |
パッケージ-sidr | 91 | |
kbrストア | 89 | |
アイコンパッケージ | 380 | |
スベク | 99 | |
パッケージショー | 103 | |
パッケージアイコン | 122 | |
アイコン-パッケージ | 170 | |
イオンパッケージ | 64 | |
アイコンパック | 49 | |
パックアイコン | 468 | |
イオニコンパック | 89 | |
パッケージ-ionicons | 144 | |
パッケージイオンアイコン | 57 | |
Base64-JavaScript | 40 | |
ionicons-js | 38 | |
ionicons-json | 39 | |
フテリコン | 1,903 | |
轟音-01 | 40 | |
轟音-02 | 37 | |
wkwk100 | 38 | |
スワイパーバンディ | 39 | スワイパー |
ajax-libz | 40 | |
スワイパーバンドル | 185 | スワイパー |
アテズ | 43 | |
ajax-googleapis | 38 | |
テズドアンク | 69 | |
アヤクサピス | 40 | |
テスコデク | 38 | |
アテズ | 114 | |
libz.jquery | 160 | |
ajaxライブラリ | 36 |
意図–
IconBurst は、エンド ユーザーをターゲットにし、フォームに入力されたデータを取得するように設計されています。他の攻撃は、エンド ユーザーではなく、他の種類のデータや他の種類の対象者をターゲットにする場合があります。
しかし、攻撃者は常にデータを狙っているのでしょうか?実際にはそうではありません。私たちは他の種類の攻撃も確認しています。攻撃者はパッケージに隠されたコードを使用し、暗号マイナーのインストールに成功し、攻撃対象のマシンのリソース (計算能力) をターゲットにし、データにはまったく影響を与えませんでした。
まとめ–
IconBurst は、最終的にはかなり単純なテクノロジを使用する能力を示します。 悪意のあるコードを偽装し、NPM などのパブリック リポジトリを介して正規のパッケージになりすます JavaScript 難読化ツール。
本物のエースアップIconBurstのスリーブは 高度に洗練されたテクノロジーではなく、ソーシャル エンジニアリングでも、同様に効果的です。
このコンテンツは、エンドツーエンドのソフトウェア サプライ チェーン セキュリティ ソリューションの大手プロバイダーである Scribe Security によって提供されており、ソフトウェア サプライ チェーン全体のコード成果物とコード開発および配信プロセスに最先端のセキュリティを提供しています。 詳しくはこちら。