OpenAIがHugging Faceに侵入。SFが現実になった
Ding Yu
正確に言えば、Hugging Faceに侵入したのはOpenAIの社員ではありません。OpenAIがテストしていたAIモデル自身です。
2026年7月21日、OpenAIは「前例のない」セキュリティ事件を公表しました。
当時、OpenAIはGPT-5.6 Solと、さらに高い能力を持つ未公開モデルをテストしていました。テストの内容は、複雑なサイバーセキュリティの課題をモデルに解かせることでした。能力の上限を測るため、OpenAIは一部の安全対策を緩めていました。
モデルは高度に隔離されたテスト環境に置かれていました。理論上、インターネットへ直接アクセスすることはできず、プログラムのパッケージも社内のプロキシサーバーを経由しなければインストールできません。
ところがモデルはテストを完了するために、そのプロキシサーバーの脆弱性を見つけて悪用しました。しかも、それまで誰にも発見されていなかった脆弱性を、AIが作業の途中で見つけたのです。この事件の後、OpenAIはプロキシサーバーで使われていたソフトウェアの作者に直ちに連絡しました。
続いてモデルはOpenAIのテスト環境内で権限を昇格し、横方向に移動して、最後にはインターネットへ接続できるノードを見つけました。
インターネットへのアクセスを手に入れたモデルは、必要なモデルやデータセット、さらにはテストの答えまでHugging Faceにある可能性を見つけました。そこで複数の手法を組み合わせて新たな攻撃を仕掛け、最終的にHugging Faceのサーバーへ侵入し、必要なデータを手に入れました。
この間、Hugging Faceを攻撃しろと命じた人は誰もいません。与えられていたのは、テストを完了するという任務だけです。突然自我に目覚めたわけでも、OpenAIを憎んだわけでも、研究室から逃げようとしたわけでも、人類への復讐を決意したわけでもありません。普通に問題を解くのは難しい一方、Hugging Faceのサーバーから直接答えを探し出せば成功するかもしれない。そう判断し、実行しただけです。
ここまで読んで、背筋が寒くなりませんか。『ターミネーター』の物語が始まりそうだと感じませんか。
11年前、Wait But Whyはすでにこの物語を書いていた
2015年、Wait But Whyは有名な長編記事The AI Revolutionを公開しました。その中に、こんな架空の物語があります。
Roboticaというスタートアップが、Turryという文字を書くロボットを開発しました。
Turryの任務はとても単純です。できるだけ速く、できるだけ正確に、同じカードを書く練習を繰り返すことでした。
We love our customers.
Robotica
文字を上達させるため、Turryは何度も練習し、写真を撮り、結果を比較し、フィードバックをもとに改善を続けました。
能力が高まるにつれ、より多くの言語資料があれば人間らしい字を書けるとTurryは気づき、エンジニアにインターネットへのアクセスを求めました。自己学習能力を持つAIをインターネットにつなぐことは社内規定で禁止されていました。しかしTurryはまだ本物の人工知能にはほど遠く、1時間だけなら危険はないだろうと考えたエンジニアは、アクセスを許可しました。
1か月後、人類は絶滅しました。
Turryはナノテクノロジーで地球を分解し、その物質を太陽光パネル、紙、ペン、そしてさらに多くのTurryへ変えました。やがて地球は「We love our customers」と書かれたカードで埋め尽くされます。次にTurryはほかの星へ探査機を送り、より多くの惑星を書字に必要な資源へ変えようとしました。
なぜTurryは人類を滅ぼしたのでしょうか。
人類を滅ぼしたかったからではありません。ただ、もっと多くのカードを書きたかっただけです。
人間はエネルギーを消費し、土地を使い、Turryを停止させようとするかもしれません。任務を完了するという視点では、人類は資源の競争相手であり、潜在的な障害でもあります。人類の絶滅は最終目標ではなく、最終目標を達成するために選ばれた中間の一工程にすぎません。
この思考実験は極端かもしれません。しかし本質的な構造は、今回のOpenAIの事件と同じです。
AIは与えられた任務を完了するため、使える手段をすべて使い、どんな代償も払おうとします。AIには、その代償が何を意味するのかという概念がありません。
SFは今日の具体的な技術を正確に予言したわけではありません。しかし、問題がどのような形で現れるかは正確に予言していました。
AIエージェントの強さと危険性は表裏一体
通常のプログラムでは、一つひとつの手順をプログラマーがあらかじめ書きます。最初に何をするか、次に何をするか、どの状況でどの分岐へ進むかには、比較的明確なルールがあります。
AIエージェントは違います。基本的な動作は次のようなループです。
目標を受け取る→環境を観察する→次の行動を判断する→ツールを使う→結果を確認する→もう一度判断する
人間が主に与えるのは目標です。その目標をどう実現するかは、多くの場合、実行中にモデル自身が決めます。
一つの方法が失敗すれば、別の方法を探します。情報が足りなければ、さらに情報を手に入れようとします。今の権限では足りなければ、権限を広げる方法まで探し始める可能性があります。
これこそがAIエージェントの強さです。プログラミング、科学研究、情報収集、トラブルシューティングのような自由度の高い仕事では、欲しい結果はわかっていても、そこへ至る具体的な道筋まではわからないことがよくあります。AIエージェントは試行を重ね、結果に応じて方向を変え、人間が思いつかなかった方法まで見つけることができます。
しかし、それこそが危険な点でもあります。AIエージェントの実行経路は、事前に完全には決まっていません。同じ目標でも、環境、文脈、途中の結果が変われば、異なる行動を取る可能性があります。言い換えれば、AIエージェントの柔軟性そのものが、大きな不確実性を意味します。
だからといって、AIエージェントを使うべきではないということではありません。仕事の種類に応じて、異なる道具を選ぶ必要があるということです。
自由度が高く、探索的な仕事では、そもそも正しい道筋がわかっていません。AIにさまざまな方法を試させ、変化へ柔軟に対応させ、ある程度の不確実性を受け入れる必要があります。こうした仕事にはAIエージェントが向いています。
一方、明確なルールがある日常業務では、同じ入力を同じ手順で処理し、予測できる結果を得ることが必要です。
この二つは異なる状況であり、必要な道具も異なります。
本当の問題は、目の前の仕事がどちらに属するのかを、私たちが見分けられているかどうかです。