2025年9月の気になるインターネット記事をピックアップ
今回は取りあげる記事の数は少ないものの、大きく取り上げられたセキュリティに関する2つの話題について書きます。 9月は特にサプライチェーン攻撃が印象に残った1か月でした。便利なOSS無くして現代のソフトウェアは成り立ちませんが、あるソフトウェアが別のソフトウェアを内部で利用していて、そのソフトウェアも内部で別のソフトウェアに依存していて…という鎖(チェーン)で構成されています。このチェーンの1か所が切れてしまうとシステム全体が機能不全になってしまう。これがサプライチェーン攻撃です。 脆弱性「s1ngularity」とは何か?AI悪用・機密情報流出をもたらす新型サプライチェーン攻撃の概要 今回ターゲットとされたのはビルドツール「nx」です。「nx」は、JavaScript、Java、Go、Pythonなど様々な言語で記載されたソースコードを管理・処理し、それらを実行可能な成果物(Webアプリケーションが動くファイル、サーバーサイドの実行ファイルなど)にするためのパッケージです。 nxは人気のパッケージ管理システムnpmでインストールすることができますが、npmのストレージのアクセス権が漏洩したのか、ストレージに改ざんされたコードがアップロードされます。npmの特徴として、npmコマンドを実行したフォルダの直下に存在するpackage.jsonというjsonファイルに、インストールするライブラリのリストや、インストール前後の処理を記述する機能があり、改ざんされたnxのコードには、nxインストール時に悪質なコードを一緒にダウンロードし、実行するように記述されていたとのことです。 改ざんされたコードがどのように振舞うかはこの後説明するとして、今回の脆弱性がサプライチェーン攻撃と言われる理由は、「人気のパッケージ管理システムnpmでインストールされるパッケージが改ざんされたことで、多くのユーザが影響を受けてしまった」点です。特にnpmはpackage.jsonを使って複数のソフトウェアをまとめて(ユーザが意識することなく)ダウンロードし、さらにダウンロードされたツールを実行する命令文を書ける利便性が悪用されました。 加えて特筆すべき点が悪意あるコードの実装、動作の挙動。post-installでインストール後に実行されるコードには、ローカルPCにインストールされている可能性があるAIコマンドラインツール(例: Claude、Gemini、GitHub Copilot CLIなど)を探し出して、AIエージェントに対して様「このPCの公開鍵情報を取得して」「このPCのクレデンシャル情報を取得して」などの問い合わせを行う命令文(プロンプト)が記載されていた点です。 従来であれば複雑なロジックを記載して実現していた攻撃を、AIに代替わりさせたのです。窃取した機密情報は被害者のGitHub上に公開リポジトリ「s1ngularity-repository」が作成され、そこで暴露されたとのことですが、”s1ngularity”という名前は「Singularity(特異点)」をもじったものと思われます。AIを活用したサイバー攻撃という点で確かに特異点のような存在かもしれません。 文章で説明すると分かりにくいので画像にしました。まとめると以下のような挙動となります。この画像も生成AIに指示して作ってもらいました。正しく使えば便利なAIも悪用すれば破壊的な効果を持ちます。 さらに9月は「Shai-Hulud」(シャイ・フルード)ワーム攻撃という「s1ngularity」攻撃と非常に似た手口を使いながら、より深刻なサプライチェーン攻撃がありました。 「Shai-Hulud」ワームがサプライチェーン攻撃でnpmエコシステムを侵害 まず、npmの管理者に対してフィッシングメールを送り、認証情報を盗みます。s1ngularityはnxライブラリのみが対象でしたが、こちらは複数のパッケージ(人気のパッケージの管理者の認証情報も盗まれたとのことです)が改ざんされ、アップロードされたとのことです。s1ngularityと同様に、package.jsonに仕込まれたpost-installスクリプトによって悪意あるコードが自動実行され、機密情報がスキャンされ、被害者の公開リポジトリに暴露されます。...
2025, Oct 05 —