オレンジ色の背景に鎖

出典: artpartner-images.com(Alamy Stock Photo経由)

複数のNPMパッケージを巻き込んだサプライチェーン攻撃は、近年で最も影響力の大きいセキュリティインシデントの一つとなる可能性がありましたが、そうした懸念は現時点では現実のものとはなっていないようです。

9月8日の朝、脅威アクターが著名な開発者QixのNodeパケットマネージャー(NPM)アカウントをフィッシング攻撃によって侵害しました。攻撃者はこのアクセスを利用し、ansi-styles、debug、chalk、supports-colorなど、週あたり20億回以上ダウンロードされている18個の人気オープンソースパッケージの改ざんバージョンを公開しました。これらのパッケージは暗号資産を盗むマルウェアを含むように更新され、約2時間の間、すべての新規ダウンロードにマルウェアが含まれていました。

メンテナーが問題を発見し、感染したバージョンを削除しましたが、これらのパッケージを組み込んだアプリケーションは、重大な下流への影響を引き起こす可能性がありました。このようなインシデントの全容を把握するにはまだ十分な時間が経過していませんが、Log4j型のインシデントへの懸念は、少なくとも現時点では根拠がないようです。

最悪の事態には至らず

X上のスレッドで、JFrogはDuckDBなど、他にもマルウェアに感染したパッケージが追随または別個に発生していることを観測しました。それでも、セキュリティ擁護団体Security Allianceのブログ記事によれば、攻撃者は改ざんインストールからほとんど利益を得ていないと主張しています。

「侵害の規模にもかかわらず、攻撃者が『盗んだ』のは[暗号資産イーサリアム]で約5セント、過去24時間で取引高588ドルのミームコインで20米ドル程度のようです」と記事は述べています。「実際、このインシデント全体で最大の経済的影響は、世界中のエンジニアリングおよびセキュリティチームが感染環境のクリーンアップに費やす数千時間と、この新たな事例研究の結果として必然的に締結される数百万ドル規模の販売契約になるでしょう。」

なぜ被害範囲がこれほど小さかったのかについて、セキュリティ研究者のFlorian RothはXへの投稿で、脅威アクター側の能力不足が要因だと述べています。「ほとんどの企業が少なくとも1つはReactやAngularアプリを運用しているため、[脅威アクター]は数千の組織、数百万のシステム上でコードを実行する機会を得ていました。しかし、彼らは素人じみた難読化の暗号資産窃取マルウェアを仕込み、基本的な検知ルールで発覚し、2時間後には問題が修正されました。皆さんがこの事態がどれほど危険だったか、そして本当にスキルのある人物が実行していたらどうなっていたか想像してほしい」とRoth氏は述べています。

Checkmarx ZeroのセキュリティリサーチアドボケートであるDarren Meyer氏は、Dark Readingに対し、攻撃者は組織的で質の高いフィッシング攻撃を成功させ、悪意あるパッケージを準備しており、マルウェアも技術的に高度だったと語ります。また、Qixが迅速かつ透明に対応したことも称賛しています。

「人々が過剰反応しているとは思いません。これは熟練し、組織的で、動機のある攻撃者の特徴を示しており、継続的かつ慎重に管理された攻撃のようです」とMeyer氏は述べます。「Qixが問題に気づき、透明性・誠実さ・緊急性をもって対応したことは、開発者コミュニティ全体にとって非常に幸運でした。しかし、これはオープンソースパッケージに依存する(つまり、今やほぼすべての)組織が、サプライチェーン防御の基本を順守する必要性を浮き彫りにしています。」

これらの基本には、プライベートパッケージリポジトリの維持、正確なインベントリ作成や侵害の兆候を検出するサプライチェーンセキュリティツールの利用、万一の際に被害範囲を限定するエンドポイントツールの活用などが含まれるといいます。

同様に、Black DuckのシニアセキュリティソリューションマネージャーであるMike McGuire氏は、マルウェアの多層的な動作、特に「APIコールの改ざんや、ユーザーに気付かれずに暗号資産取引をリダイレクトする」点が特に警戒すべきだと指摘しています。

侵害の兆候を確認する方法

JFrog SecurityのCTO、Asaf Karas氏はメールでDark Readingに対し、「今回の問題は、たとえ影響が小さいように見えても、史上最大のNPMサプライチェーン攻撃にあたる」と述べています。

「現時点で組織への影響は極めて最小限のように見えますが、このインシデントは、現代のJavaScriptエコシステムがいかに脆弱であるかを浮き彫りにしています。コードベースの半分が、1人の開発者によって維持されている1行ユーティリティに依存しているのです」とKaras氏は述べています。

また、被害範囲が広い可能性があるため、各チームは自分たちの環境が影響を受けていないか確認する価値があるかもしれません。

Wizはブログで、ロックファイルやレジストリで感染パッケージのバージョンを検索すること、テレメトリやユーザー報告から「署名フローに関する異常な失敗、ERC-20承認で見慣れない送金先アドレス、転送リダイレクトの報告」などを確認すること、感染パッケージが利用可能だった期間にアクティブだったユーザーのオンチェーンレビューを行うこと、JavaScriptアセットに難読化コードの兆候がないか調べることを推奨しています。

チームはまた、影響を受けたパッケージバージョンをブロックリストに追加し、既知の安全なバージョンに上書きするべきです。また、「キャンペーンが続く間はDuckDBや新たに報告されたパッケージも含め、ブロックリストを毎日最新に保つ」ことが推奨されています。

Sophosのマネージドディテクション&レスポンスディレクターであるPaul Jaramillo氏は、攻撃の影響は限定的だったものの、学ぶべき教訓があると説明します。

「[今回のキャンペーンは]依存関係を厳格に精査し、本番リリース前にテストする必要性を強調しています」と彼は述べます。「ビルド環境は、人的監督なしにパッケージ依存関係の最新バージョンを自動的に取り込むべきではありません。組織は、既知の良好なパッケージリリースを使用するようビルドを構成し、サプライチェーンの侵害を回避すべきです。」

翻訳元: https://www.darkreading.com/application-security/huge-npm-supply-chain-attack-whimper

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です