FortiGuard Labs 脅威リサーチ
私たちのチームは、PyPIパッケージ(Python Package Index)に埋め込まれたゼロデイ攻撃を発見しました。これは「aioconsol」と呼ばれるもので、2022年12月9日、オープンソースのエコシステムを監視することで発見されました。このPythonパッケージは、公式のPyPIリポジトリに示されているように、2022年12月6日に公開されました。ご覧のとおり、このマルウェアの3つのバージョンはすべて同じ日に公開されています。先週、発見し投稿した「shaderz」と呼ばれるゼロデイPyPI攻撃と同様、この悪意のあるパッケージにはプロジェクトやソースページに関する明確な説明がありません。
パッケージのバージョン2.0には、setup.pyのインストールスクリプトに悪意のあるコードが含まれており、インストールの一部としてバイナリらしきものを「test.exe」というファイルに書き込み、実行します。
以前のバージョンである1.0と0.0では、図のように、その__init__.pyスクリプトに同様の悪意あるコードが含まれます。
以下のVirusTotalのエントリに示すように、複数のベンダーがこのバイナリ実行ファイルを悪意のあるもの(SHA 256)としてフラグを立てています。
52e6efbbfb1fdeb976e2464c542bc17747d213d67f28dff4d7df0879df23fd7e
早速、バイナリ実行ファイルを実行してみましょう。「stub.exe」というサブプロセスが作成されます。
図のように、一連のファイルが「%USER%\AppData\Local\Temp\onefile_%PID_%TIME%」というフォルダにドロップされます。
このドロップされた実行ファイル「stub.exe」は、一握りのベンダーによってのみ悪意のあるものとしてフラグが立てられています(SHA 256)。
8124cec491e0249bc4a9f3f9d3755201b0e8c28068ce8c4b528217dbb94afd13
test.exeを実行すると、自身が「Control.exe」として「%USER%\AppData\Local\WindowsControl」にコピーされ、「run.bat」バッチファイルがドロップされます。
run.batスクリプトは、起動時に実行するのに使用できるファイル「Control.exe」へのパスを示しています。
これは、私たちが1週間のうちに発見した悪質なゼロデイPython Package Index(PyPI)サプライチェーン攻撃の2つ目のものです。マルウェアの作成者がバイナリ実行ファイル全体を単純なPythonスクリプト内に格納できるため、この手法がよく使用されます。これは、システムに損害をもたらし、ユーザーを脆弱性にさらす可能性があるため、深刻な影響を引き起こす可能性があります。個人や組織は、Pythonパッケージにマルウェアが含まれる可能性があるため、実際にインストールする際には注意する必要があります。
FortiGuardアンチウイルスは、このレポートで以下のような悪意のある実行ファイルを特定しました。
test.exe: W32/PossibleThreat
stub.exe: W32/Agent.AHP!tr
FortiGuardアンチウイルスサービスは、FortiGate、FortiMail、FortiClient、FortiEDRによってサポートされます。最新のアンチウイルスアップデートをお使いのお客様は、脅威から保護されています。
FortiGuard Webフィルタリングサービスは、このレポートで引用されているダウンロードURLを悪意のあるものとして検知し、ブロックします。
test.exe
52e6efbbfb1fdeb976e2464c542bc17747d213d67f28dff4d7df0879df23fd7e
stub.exe
8124cec491e0249bc4a9f3f9d3755201b0e8c28068ce8c4b528217dbb94afd13
FortiGuard Labsが、悪意のあるaioconsolパッケージをPythonに責任を持って報告した結果、それらは削除されました。