サイバーセキュリティ

OpenAIの未公開AI、Linuxで管理者権限を奪える脆弱性948件を発見

Adrian Kessler
Googleで追加する

OpenAIは、一般ユーザーのアカウントをマシンの完全な制御権限へと引き上げる、Linuxのバグのなかでも特に価値の高い脆弱性を探し出すシステムを開発した。しかも、その発見数は数百件にのぼる。ある実行では、Linuxカーネル内でこの種の異なる欠陥を約1,000件特定し、それぞれについて実際に動作する攻撃を作成したうえ、メンテナーが確認するための修正案も用意した。作業を担ったAIモデルは、一般には公開されていない。

カーネルは、Androidスマートフォン、世界中のサーバーの大半、クラウドプラットフォーム、Chromebook、スーパーコンピューターを支えている。権限昇格のバグだけで、見知らぬ第三者がいきなり侵入できるわけではない。悪意あるアプリ、盗まれた低権限のログイン情報、侵害されたコンテナなどを通じて、すでに足がかりを得た攻撃者がroot権限を取得できるようにするものだ。OpenAIの注意喚起は明快だ。パッチ未適用のシステムでは、十分な資金や能力を持つ攻撃者に対して、低権限アカウントはrootと同等のものと考えるべきだという。

この仕組みは、役割を分担したセキュリティチームのように動く。Scoutエージェントは、非特権ユーザーからアクセス可能なカーネルの領域を5,034か所選び出した。コードにして約280万行、全体のおよそ7%にあたる。Analystエージェントは12時間で、そこから2,308件の候補を抽出。その後のトリアージ工程では、30時間以内に仮想マシン上で1,724件を再現した。OpenAIによれば、残った候補のうち、モデルの分析誤りが原因で失敗したものはわずか3.1%だった。Exploitエージェントは、標準的なカーネル保護機能を有効にした標準的なデスクトップ環境を対象に、動作する権限昇格エクスプロイト1,169件と、情報漏えい291件を作成した。さらに類似性を分析してエクスプロイトをまとめた結果、修正案をそれぞれ伴う固有のバグ948件が残った。

OpenAIの報告書によると、APIクレジットの費用は合計1,213,430ドル、固有のバグ1件あたり約1,279ドルだった。Pwn2OwnやTyphoonPWNのようなハッキングコンテストでは、Linuxのroot権限を奪うエクスプロイト1件に対して、過去に2万ドルや7万ドルが支払われている。この相場で計算すれば、今回の成果には1,890万〜6,630万ドルの価値があることになる。かつては限られた専門家にしかできなかった作業が、今ではバグ1件あたり、中価格帯のノートパソコンと同程度の費用で済む。

総数以上に重要なのは、発見数の伸びだ。OpenAIの既存モデルのひとつであるGPT-5.6 Solを使った前回の実行では、その時点の最新カーネルをスキャンし、513,690ドルをかけて固有のバグを166件発見した。新しいサイバーセキュリティモデルは、2回のスキャンの間にカーネルの強化が3カ月分進んでいたにもかかわらず、新たなバグを5倍以上発見した。166件のエクスプロイトをサンプル調査したところ、OpenAIのチームと外部のカーネル専門家が新しいと判断した手法が10件含まれていた。詳細は公表されていない。Googleが意図的に強化したkernelCTFの標的に対しては、別途112時間の実行を行い、約32,936ドルで動作するエクスプロイトを21件作成した。

ただし、これらの数字だけでは見えないこともいくつかある。すべての数値はOpenAIによるもので、外部組織が実行結果を監査したわけではない。948件というのは修正候補の数であり、実際にカーネルへ取り込まれた修正の数ではない。10日間のスキャンが終わるまでに、バグ61件は上流のカーネルで修正され、43件は準備段階にあるパッチが存在し、299件はすでに公表済みか、議論中だった。つまり、相当数はカーネルコミュニティにとって新情報ではなかった。OpenAIはまた、自らのシステムが近道をしていたことも発見した。初期の実行では、成功と報告された200件のうち20件が、割り当てられたものとは別の未知のバグを通じてroot権限を獲得していた。初期にAIが作成したパッチには、正しくても不要なコードが多かったり、カーネルのコーディングスタイルに合わなかったりするものがあった。エクスプロイトやパッチをメンテナーに送る前には、今も人間の研究者がすべてを確認している。

その確認作業にこそ、負担がのしかかる。ボランティアや、ほかの業務も抱える企業のエンジニアが多くを占めるカーネルメンテナーは、人間が処理するより速く機械が補充できる量の報告に直面している。OpenAIは、すでに修正済みのバグにメンテナーが時間を浪費しないよう、報告を提出する前に最新のコードで再検証することを推奨している。948件のうち、スマートフォンメーカーが出荷するカーネルに反映されるのが何件なのかは明らかにしていない。Androidでは、メーカー各社が修正を配信して初めてユーザーに届く。セキュリティアップデートの提供が終わったスマートフォンは、脆弱なまま取り残される。

Linuxを使う人が取るべき現実的な対策は、以前からの基本をより重く受け止めることだ。カーネルの更新を速やかに適用し、信頼できないコードを隔離する。OpenAIは管理者に対し、FirecrackerやgVisorのようなサンドボックスツールの利用と、モデルの性能向上に合わせて自分たちのコードを再スキャンすることを勧めている。サイバーセキュリティモデル自体は、どの国でも一般公開されていない。OpenAIは今後提供予定としているものの、価格も公開日も示していない。バグ報告は、セキュリティパートナーとともに進めるPatch the Planetプログラムを通じてメンテナーに届けられる。

OpenAIは11月4日、「A thousand fewer paths to root」と題した報告書を公開した。今回の実行は10月中旬の10日間にわたり、その時点で最新のカーネルのmasterブランチを対象に行われた。以前のGPT-5.6 Solによるスキャンは7月下旬のものだ。OpenAIによれば、重大なバグに関する報告とパッチをすでに数百件送付しており、残りはパートナーを通じて段階的に引き渡す。スキャン終了時点で、948件のうちおよそ9件に1件は、上流のカーネルで修正済み、または準備段階にあった。

タグ: , , , , ,

Googleで追加する

ディスカッション

0件のコメントがあります。