Pythonを起動するだけで認証情報が盗まれる LiteLLMに混入した悪性コードの正体:バックドアも仕込まれる

GitHubのソースコードには見当たらない悪性コードが、Pythonパッケージ「LiteLLM」の配布物から見つかった。認証情報を盗み出すだけでなく、外部からコードを実行するバックドアも仕込まれていたという。GMO Flatt Securityの分析から攻撃の仕組みと対策を追う。

» 2026年10月26日 07時45分 公開
[@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 GMO Flatt Securityは2026年10月21日、Pythonパッケージ「LiteLLM」の配布物に悪性コードが混入した事案について、分析結果と対策を公表した。対象はPythonパッケージ管理サービス「PyPI」で公開された「litellm」バージョン1.107.0だ。クラウドや開発ツールの認証情報などを窃取するマルウェアに加え、外部からコードを取得して実行するバックドアも確認された。

 同社によると、2026年3月に発生した侵害とは別の事案だという。同社は、自社のセキュリティサービス「Takumi Guard」でPyPI経由の導入に3日間の検疫期間を設けており、同サービスの利用者に被害は発生していないと説明している。

正規ソースコードにない3つのファイル Python起動時に悪性コードが起動

 GMO Flatt Securityの分析では、「GitHub」のv1.107.0タグのソースコードと、PyPIで公開された配布物に違いがあった。配布物のうちwheel形式のファイルから、ソースコードには存在しない「cook.pth」「cook.py」「sitecustomize.py」の3ファイルが確認された。これらはPythonのパッケージを配置するsite-packagesディレクトリ直下に置かれる。

 悪性コードの実行経路は2つあったという。

 一つは「cook.pth」に記述されたimport命令を通じて「cook.py」を読み込み、情報窃取機能を実行する経路と、もう一つはPython起動時に自動読み込みされる仕組みを悪用して「sitecustomize.py」を動かす経路だ。後者は常駐処理や外部コードの実行にも関与する。

 この仕組みにより、利用者がLiteLLMを明示的に読み込まなくても、影響を受けた環境でPythonを起動するだけで悪性コードが実行される恐れがある。

 両ファイルには、zlibで圧縮し、Base64で符号化したコードが埋め込まれていた。展開すると、約1200行に及ぶ「privcollect」が現れる。16の収集モジュールを備え、複数の場所から認証情報や秘密情報を集める構造になっていた。

クラウドからAI開発ツールまで 認証情報を狙う16の収集モジュール

 収集対象は、SSH秘密鍵、「Amazon Web Services」(AWS)「Google Cloud」「Microsoft Azure」の認証情報、Webブラウザに保存されたパスワード、「Kubernetes」や「Docker」の設定情報、パッケージ管理サービスのトークン、GPG、TLS秘密鍵、環境変数など多岐にわたる。AI開発ツールの認証情報も対象に含まれていた。

 さらにLiteLLMのデータベースに直接問い合わせ、AIモデルのプロバイダーに接続するためのAPIキーやモデル設定を抽出する機能も確認された。窃取したAWSの認証情報については、有効性や関連アカウントを確認する処理も備えていたという。

 収集した情報はAES-256-CBCとRSA-OAEPで暗号化され、「http://www[.]litellm[.]dev/healthcheck」へHTTP POSTで送信される仕組みだった。二重実行を防ぐ環境変数や、初回の収集後に再収集を省くマーカーファイルも確認された。

認証情報の窃取だけでは終わらない 外部からコードを実行するバックドアと対処法

 もう一つの懸念が、外部からの遠隔操作を可能にするバックドアだ。悪性コードは1時間ごとにGitHubの設定ファイルを確認して接続先ドメインを取得し、外部から取り込んだコードを実行する。攻撃者が設定を変更すれば、感染した環境で実行する処理を切り替えられる構造になっていた。

 このため、被害は認証情報の窃取だけにとどまらない。盗まれたクラウド認証情報やAPIキーが悪用されれば、クラウド環境への不正アクセスやAIサービスの不正利用などにつながる恐れがある。

 LiteLLMの公式発表では、PyPI版のv1.107.0に加え、一部の「Docker Hub」および「GitHub Container Registry」のイメージにも影響が確認されている。Pythonパッケージの導入履歴だけでなく、該当期間にコンテナイメージを取得・実行していないかも確認する必要がある。

 GMO Flatt Securityは、導入済みバージョンやマーカーファイル、プロキシ・DNSの通信記録などを確認するよう推奨している。該当する環境では、悪性ファイルの除去、常駐プロセスの停止、関連ファイルの削除などが必要となる。また、窃取された可能性のある認証情報や秘密鍵などを速やかに更新することも求めている。

 なお、悪性ファイルはPythonの起動時に実行されるため、感染した環境で通常どおりPythonやpipを起動すると、悪性コードが再実行される恐れがある。対処時は安易にパッケージを再インストールせず、悪性ファイルの除去やクリーンな環境の再構築を含め、慎重に復旧を進める必要がある。

Copyright © ITmedia, Inc. All Rights Reserved.

アイティメディアからのお知らせ

スポンサーからのお知らせPR

注目のテーマ

ID・パスワードから始める「引き算」のセキュリティ〜ゼロトラスト狂騒曲の果てに
その「AIコーディング」は本当に必要か?
Microsoft & Windows最前線2026
4AI by @IT - AIを作り、動かし、守り、生かす
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。