import lightning しただけで、裏でcredential stealer(認証情報を盗むマルウェア)が動く仕組みだった.env ファイル、API keys、GitHub tokens、ブラウザ内の保存情報、AWS / Azure / GCP など今回の話、かなりいやらしいです。
人気の Python パッケージ PyTorch Lightning に、バックドア入りの不正なバージョンが紛れ込んでいました。PyTorch Lightning は、AIモデルの学習や fine-tuning を助ける定番ツールで、先月だけでも 1100万回以上ダウンロードされたそうです。つまり、攻撃者にとっては「広く使われる、信頼されやすい場所」に仕込むのが一番おいしいわけです。
問題のバージョンは 2.6.3。
この版には、見えない実行チェーンが含まれていて、import lightning した瞬間に自動で動き出します。しかも表立って何か表示するわけではなく、バックグラウンドプロセスとして静かに起動するのが嫌らしいところです。
要するに、開発者が普通に
import lightning
と書いただけで、裏で勝手に何かが走る、ということです。これはかなり怖い。
「インポートしただけで感染」は、サプライチェーン攻撃の典型で、しかもかなり実用的なやり方だと思います。
Lightning AI の説明によると、この悪意あるコードは以下の流れで動きます。

router_runtime.js)を実行する11.4MB の JavaScript というだけでも、かなり「普通じゃない」感じがします。
しかも obfuscated(難読化)されているので、人間が読んでも中身を追いにくい。攻撃者が「バレにくさ」をかなり意識していたのは間違いないでしょう。
Microsoft Threat Intelligence によると、この payload は ShaiWorm として検知されており、いわゆる information stealer(情報窃取マルウェア)です。名前からしてもう嫌な予感しかしません。
狙いはかなり広くて、具体的には次のようなものです。

.env ファイル
さらに厄介なのは、任意のシステムコマンドを実行できる点です。
つまり、単なる「情報を盗むだけ」ではなく、後からさらに悪さを広げられる余地があります。ここは本当に重要で、被害が認証情報の漏えいだけで止まらない可能性があるんですよね。
Microsoft の telemetry(端末から集めた観測データ)では、影響を受けたのは 少数のデバイスで、しかも 限定的な環境にとどまっていたようです。
つまり、現時点では大規模爆発は防がれた可能性が高い、ということです。
これは少し救いですが、逆に言えば たまたま早く見つかったからこの程度で済んだとも言えます。
サプライチェーン攻撃は、見つかるまでの時間が長いほど被害が広がるので、今回のように早期検知できたのはかなり大きいと思います。

Lightning AI は、もし version 2.6.3 を使っていて import lightning を実行した可能性があるなら、秘密情報のローテーションを強く勧めています。
ローテーションとは、ざっくり言えば
「漏れたかもしれないパスワードやトークンを全部入れ替える」
ということです。
対象になり得るのは例えば:
.env に入っていた API key正直、これは面倒です。かなり面倒。
でも、こういうときは「面倒だから後回し」がいちばん危ない。個人的には、**“漏れた可能性があるなら、気持ち悪さを残さず一気に総点検”** が正解だと思います。

現時点では、PyTorch Lightning は 2.6.1 に戻されており、それが安全に使えると案内されています。
また、開発側は他の最近のリリースも監査して、似たような payload が混ざっていないか確認するとしています。
まだ分かっていないのは、どうやってビルドやリリースの工程が侵害されたのかという点です。
ここは今後の焦点ですね。もし build/release pipeline が破られていたなら、単なる「悪いパッケージが一つ混ざった」では済まず、供給網全体の信頼に関わる話になります。
今回の事件の怖さは、マルウェアの内容そのものよりも、**“普通の開発作業” に見える形で侵入している**ことだと思います。
pip installimport
このパターンは、開発者にとってかなり厄介です。
コードレビューだけでは気づきにくいし、依存パッケージが多いほど追跡もしんどい。しかも AI や Python の世界は、便利さのために外部パッケージを多用しがちです。そこを逆手に取られると、被害が一気に広がります。
個人的には、これは「AIブームで便利さが加速したぶん、依存関係の信用コストも上がっている」という象徴的な事件ではないかと思います。
便利なエコシステムは強いですが、そのぶん“どこか一個でも汚れると全体が危うい”のが怖いところです。
今回の件を踏まえると、最低限こんな対策は意識したいところです。
.env や token を 最小権限にする
特に「開発環境だから大丈夫」は通用しません。
開発環境に置いてある secrets が本番へつながっていたら、そこから芋づる式にやられます。これは本当にある話です。
PyTorch Lightning の不正バージョン 2.6.3 は、import しただけで裏で JavaScript を実行し、ブラウザや .env、クラウド認証情報を盗むマルウェアを落とす仕組みでした。
影響は限定的だったようですが、人気パッケージが狙われたことで、サプライチェーン攻撃の現実味がまた一段上がった印象です。
便利な OSS を信頼して使うのは大事ですが、同時に「信頼しすぎない」姿勢も必要だと、あらためて感じる事件でした。
参考: Backdoored PyTorch Lightning package drops credential stealer