SentinelOne SDK を装う悪意の PyPI パッケージ:SentinelSneak はトロイの木馬

Malicious Python Trojan Impersonates SentinelOne Security Client

2022/12/20 DarkReading — 最新のサプライチェーン攻撃を仕掛ける未知の脅威アクターが、SentinelOne の人気のSDK (Software Development Kit) を装う、悪質な Python パッケージを作成しているようだ。月曜日にサイバー・セキュリティ企業 ReversingLabs が発表したアドバイザリによると、この SentinelSneak と名付けられたパッケージは、高機能な SentinelOne クライアントのように見えるものであり、Python コードの主要リポジトリである Python Package Index (PyPI) で、頻繁に更新されながら開発中であるとのことだ。

SentinelSneak は、インストール時に悪意の動作を行うのではなく、他のプログラムから呼び出されるのを待つタイプだと、研究者たちは指摘している。つまり、この攻撃は、脅威アクターが標的とするシステムに危険なコードを注入する方法として、ソフトウェア・サプライチェーンに注目していることを浮き彫りにしている。ただし、これまでのところ、そのような攻撃は起こっていないようだ。

ReversingLabs の Chief Software Architect である Tomislav Pericin は、「このパッケージのソースを一見しただけでは、正当な SDK コードの中に悪意の機能が注入されていることを、簡単に見逃してしまうだろう」と述べている。

また、この攻撃は、サプライチェーンを攻撃する一般的な方法を示している。そこで利用される方式は、タイポスクワッティングの一種であり、有名なオープンソース・コンポーネントに類似した名称の、悪意のパッケージを作成している。7月に発表された調査結果によると、JavaScript プログラム用の Node Package Manager (npm) エコシステムが悪用された、依存関係の混乱を用いる IconBurst という名の攻撃が、その一例となっている。

また、別のタイポスクワッティング攻撃では、ある脅威グループが、少なくとも 29個の人気のソフトウェア・パッケージのクローンを、PyPI にアップロードしている。

ReversingLabs はアドバイザリで、「SentinelOne の偽のパッケージは、PyPI リポジトリを利用した最新の脅威だ。この脅威アクターは開発者の混乱を利用し、開発のパイプラインや正規のアプリケーションに、悪意のコードを注入するためにタイポスクワッティングなどの戦略を用いている。つまり、ソフトウェア・サプライチェーンへの脅威の増大が浮き彫りになっている」と述べている。

あらゆる種類のコード・リポジトリが攻撃を受けているが、全体として、npm エコシステムは Python Package Index と比べて、より多くの攻撃の対象になっている。2022年に PyPI にアップロードされた悪意のパッケージは 1,493個であり、ReversingLabs が 2021年に検出した、悪意のアップロード 3,685個から 60%近く減少している。

不用心なユーザーを騙す手口

ReversingLabs のアドバイザリは、この偽の SentinelOne 1.2.1 パッケージは、多くの最新アクティビティにおいて警告性を示していると述べている。疑わしい動作には、ファイルの実行/新しいプロセスの作成/ドメイン名ではなく IP アドレスを使用した外部サーバとの通信などが含まれるという。

ただし ReversingLabs は、この偽 SentinelOne クライアントは同社の名前を使用しているたけであり、その内容は別物であることを強調している。そして、問題となる PyPI パッケージは、このクライアントへのプログラム・アクセスを簡素化する SDK だとのことだ。

ReversingLabs はアドバイザリで、「悪意の行為者は、SentinelOne の強力なブランド認知と評判を悪用して、同社の顧客になるという必要なステップを踏むことなく、SentinelOne のセキュリティ・ソリューションを導入したと、PyPI ユーザーに誤解させようとしているのかもしれない。この PyPI (正規の?) パッケージは、SentinelOne API へのアクセスを抽象化し、API のプログラムによる消費を簡素化する、SDK として機能することを目的としている」と述べている。

SentinelOne は Dark Reading への声明において、「当社の名前を利用した、最近の悪質な Python パッケージには関与していない。攻撃者は、意図した標的を欺くのに役立つと思われるキャンペーンにおいて、あらゆる名前を用いるが、このパッケージは SentinelOne とは一切無関係だ。私たちの顧客は安全であり、このキャンペーンによる侵害の証拠も見られていない。PyPI は、このパッケージを削除している」と述べている。

開発者をも攻撃対象としてみなす攻撃者の動向

この攻撃は、標的となる企業の開発者が防御上の弱点であり、その企業の顧客を感染させる手段であると見なす、攻撃者の狙いとなっていることも示している。

例えば9月には、攻撃者に盗み出された認証情報と、開発用 Slack チャンネルが悪用され、ゲーム開発会社の Rockstar Games が侵害されている。その結果として、同社の主力商品である Grand Theft Auto フランチャイズの資産を含む、機密データに不正アクセスが発生するインシデントに至った。

ReversingLabs の Tomislav Pericin は、「それぞれのユーザー企業は、どのソフトウェア・コンポーネントがリスクになり得るのかを、開発者が理解できるようにする必要がある。開発者は、新しいプロジェクトの依存関係について、インストールを選択する前に精査する必要がある。ただし、今回のマルウェアは、インストール時ではなく、使用時にのみ起動するものだ。そのため開発者は、この悪意の SDK の上に新しいアプリを構築しても、異変に気づかない可能性がある」と述べている。

SentinelSneak のケースにおいて、トロイの木馬の背後にいる脅威アクターは、SentinelOne の名前のバリエーションを使用して、5つの追加パッケージを公開している。一連のパッケージはテスト版であり、悪意の機能の多くをカプセル化するためのキーファイルを含んでいないようだ。

12月15日に ReversingLabs は、PyPI セキュリティ・チームに対して、このインシデントを報告し、その翌日に SentinelOne にも通知したとのことだ。同社は、「我々は、この悪意のパッケージを、きわめて早い段階で発見できた。現時点において、誰かが、このマルウェアの影響を受けたという兆候はない」と述べている。

有名ブランドである SentinelOne を装う、Python トロイの木馬が登場したとのことです。そして、悪意のパッケージの常套手段であるタイポスクワッティングが用いられ、開発者のすきを突くことで感染を広めようとしています。さらに、プロジェクトにおける依存関係を悪用し、C2 サーバ通信のスティルス化も試みています。この種の攻撃手法の全てを用いる、かなり手強い攻撃へと至る恐れがあります。現時点では、まだテスト段階に在るようですが、本格的なな攻撃へと発展する可能性が高いと言えるでしょう。よろしければ、PyPI で検索も、ご利用ください。

%d bloggers like this: