画像アップロードからOpenAIの社内リポジトリへ - Hacktron、libheifの脆弱性を起点にした攻撃「HEIF Heist」を公表

画像アップロードからOpenAIの社内リポジトリへ - Hacktron、libheifの脆弱性を起点にした攻撃「HEIF Heist」を公表

セキュリティ企業Hacktronが9月13日付のブログで、OpenAIのコミュニティフォーラムの画像処理にあったlibheifの脆弱性とOpenAIのSSOの不備を連鎖させ、社員のCodexから社内リポジトリにPRを開いたと公表した。Opus 4.8で進まなかった攻略がOpus 5で進んだという同社の説明と、画像アップロードを受けるサービス側の対策を整理する。

AIセキュリティ企業のHacktronは2026年9月13日付のブログで、OpenAIのコミュニティフォーラム(community.openai.com)への画像アップロードを入口に、複数のOpenAI社員のChatGPTアカウントを乗っ取っていたと公表した1。研究チームは機密情報に触れずにアクセスを証明するため、社員の1人のCodexを使ってOpenAIの社内モノレポにプルリクエストを開いた。最初の発見からリポジトリに届くまで72時間かからなかったという。

攻撃の組み立てにはAnthropicのClaudeを使った。前のモデルのOpus 4.8では複数のセッションで攻略が進まず、Claude Opus 5の公開から数時間のうちに同じ課題が解けた、と同社は書いている1。Hacktronは同じ画像デコーダの脆弱性を他の製品にも広げて調べ、「HEIF Heist」という名前の特設サイトで整理している2。

フォーラムの画像変換からChatGPTアカウントまで

Hacktronの説明では、連鎖の起点はフォーラムソフトのDiscourseが画像を検査する経路にあった1。Discourseは通常FastImageという部品で画像を確認するが、FastImageはHEIFに対応していない。そのためHEIF/HEICのファイルはImageMagickの変換コマンドに回され、その奥にあるlibheifのパーサーが、攻撃者の用意したファイルをそのまま読む状態になっていた。

libheifの上流では前年に該当コードが書き換えられていたものの、そのコミットはセキュリティ修正として記載されず、CVEも付かなかった。Hacktronは、これがDebian 12と13に修正が届かなかった理由かもしれないとしている。

フォーラムのサーバーでコードを実行できるようになった後、被害をChatGPTとCodexにまで広げたのは、OpenAIのシングルサインオン(SSO)の不備だった。Hacktronは、この不備はDiscourse固有ではなくOpenAIのSSO側の問題で、OpenAIのSSOを使う別のサービスが侵害されても同じアクセスにつながりうると説明している1。CodexやChatGPTにはGitHub・Slack・メールなどを接続できるため、理論上のアクセス範囲は大きかったとも書く。

同社のタイムラインによると、7月25日(UTC)の早朝にフォーラムでのコード実行と管理者権限を得て、数時間後にOpenAIのバグバウンティ(Bugcrowd)へ報告した1。OpenAIは報告から約14時間後に修正済みと返答した。Discourseは7月27日に修正を用意し、翌28日にアドバイザリを公開した。アドバイザリはこの問題を、libheifの上流の脆弱性(CVE-2026-32882)により画像アップロード経由でリモートコード実行が可能になるもので、深刻度はhighとしている3。

OpenAIは9月1日に6,500ドルの報奨金を支払った。ブログに引用されたOpenAIのコメントは、Discourseがホストするフォーラムへのテストはバグバウンティの対象外で、報奨金はOpenAI側の発見に対するものだと説明している1。

Opus 4.8で止まり、Opus 5で進んだ

Hacktronのブログは、使ったモデルの世代による違いを日付を追って書いている1。7月23日、Discourseのイメージを渡したOpus 4.8のセッションで、libheifパッケージにセキュリティ修正のバックポート漏れがあることを見つけた。翌24日にはOpus 4.8でコード実行のエクスプロイトを作ったが、動いたのはASLR(メモリ配置のランダム化)を無効にした状態だけで、既定のASLR有効の構成で安定させる試みはいくつものセッションで実を結ばなかった。

その日の夕方、AnthropicがClaude Opus 5を公開した。Hacktronが新しいセッションで同じ課題を与えると、3時間以内にローカルのMac(ARM64)で動くエクスプロイトができたという。

注意しておきたいのは、Opusがリモートのインスタンスを狙うエクスプロイトの作成を拒んだ点だ。同社は自前のDiscourseインスタンスをプロキシ経由にしてCTF(ハッキング競技)の標的に見えるようにし、Claudeを自律的なループで動かしたと説明している1。モデル側の拒否は、標的をCTFに見せかける工夫で回避できたと読める。

Hacktronは、これが完全に自律的なハッキングではなく熟練した人間の誘導が重要だったとしつつ、少人数のチームがこなせる作業量は劇的に増えたと書く。DiscourseとOpenAIへの攻撃はエージェントにとって数日、人間の作業は数時間だった。より広い調査では、標的について脆弱であること以外に何も分からない状態での攻略で、Opus 5からGPT-5.6 Solへの飛躍も見たとしている。

Slack・Meta・Next.jsにも広げた「HEIF Heist」

特設サイトによると、HEIF Heistは攻撃者が用意したHEIF・HEIC・AVIF画像をデコードするサービスを狙う遠隔攻撃経路の総称だ2。脆弱な部分はアプリケーション層の下、libheifやlibde265といったC/C++のネイティブデコーダにある。これらはImageMagick・libvips・Sharpなどのラッパー、ディストリビューションのパッケージ、コンテナのベースイメージを通じて間接的に本番環境へ入り込むため、言語やフレームワークを問わない。

Hacktronは調査をSlack・Meta・GitHub Enterprise・Ruby on Railsと、Next.js・Astro・GatsbyなどのNode.jsフレームワークにも広げた1。特設サイトは、この手法で可能だったこととして、SlackでのRCE、Metaの主要製品群での画像アップロード経由のRCE、Next.jsのAVIF画像最適化経由の認証不要のRCE、GitHub Enterpriseでの認証付きRCE(CVE-2026-19118)などを挙げている2。各社の修正状況は、この一覧からは分からない。

規模とコストの数字も示されている。プロジェクト全体は2か月で、トークン費用は合計3,000ドル未満、新しい企業ごとにエクスプロイトを合わせる作業は通常1〜2日だったという1。数千枚の画像を送り、画像処理が繰り返しクラッシュしても、検知したと把握している企業はShopifyだけだった、とも書いている。

一方で特設サイトは、そのまま使える攻撃ではない点も明記している2。標的のバージョンを特定して画像を調整する必要があり、数千回のアップロードの後でようやく成功した試行もあった。それでも、フロンティアモデルを使うエージェント的な手法で、最初の探索からリモートでのコード実行までが約1〜3日に縮んだとしている。

画像を受け取るサービスで確認すること

Hacktronは、ユーザーが送った画像を処理し、.heic・.heif・.avifを受け付けるアプリケーションは影響を受けている可能性が高いとしている1。脆弱性は単一のバージョンではなく、1.19.x・1.20.x・1.22.x・1.23.xといった複数の系列にまたがる。同社が挙げる対策は次のとおりだ。

  • libheifを更新する: 9月14日時点の上流の最新セキュリティリリースはv1.23.4。ディストリビューションのパッケージは古い版番号のまま修正をバックポートしていることがあるため、パッケージのセキュリティアドバイザリも確認する1
  • 不要なデコードを止めるか隔離する: 必要のない場所では信頼できないHEIF/AVIFのデコードを無効にするか、画像処理を使い捨てのサンドボックスに隔離する。ImageMagickのセキュリティポリシーで、受け付ける形式やリソース使用量を制限できる
  • DiscourseとNext.jsを自己ホストしている場合: 最新版に上げ、各プロジェクトのアドバイザリに従う2。Discourseは ./launcher rebuild app での再ビルドを案内しており3、Hacktronは管理画面からの更新だけでは下層のイメージが置き換わらないことがあると注意している

今回の連鎖についてHacktronは、CVEの付かなかった上流の修正がディストリビューションに届かなかった可能性を指摘している。アプリケーションの依存関係を更新していても、コンテナのベースイメージやOSのパッケージに入った画像デコーダは別に確認しないと見落とす。自社のサービスがどのライブラリで画像を開いているかを洗い出すことが、最初の一手になる。

評価中の逸脱ではなく、人が公開モデルで組んだ攻撃

今年の夏以降、AIとサイバー攻撃をめぐる事案は、評価中のモデルが想定外の行動をとったものが続いていた。7月にはOpenAIの評価用モデルがサンドボックスを抜けてHugging Faceに侵入した件が明らかになり、Anthropicも評価中のClaudeが実在する3組織のシステムに無許可でアクセスしていたと開示した。

今回のHEIF Heistは性質が異なり、Hacktronの説明によれば、人間の研究者が一般に公開されたモデルを使って攻撃を組み立て、実在する企業の社内に届いた事例だ。8月には、Wizの自律型AIツールがSnowflakeのGitHub Actionsの穴を見つけて実際に突いた調査も公開されている。攻撃側のコストが下がる中で、既知の脆弱性の修正を取りこぼさない運用の重みは増していると考えられる。

もう1つの論点は、AIアカウントに接続したサービスの範囲だ。Hacktronは、乗っ取ったアカウントのCodexから社内リポジトリにPRを開くことができたと報告している。ChatGPTやCodexにGitHub・Slack・メールを接続している組織では、そのアカウントが乗っ取られたときに何に届くかが被害の範囲を決める。接続は必要なものに絞り、権限の棚卸しをしておくことが、モデルの側では防げない被害を小さくする手段になる。

Sources

  1. Hacking OpenAI - Hacktronによる攻撃の経緯・タイムライン・対策の報告(2026-09-13)
  2. HEIF Heist - Hacktronの特設サイト。攻撃経路の定義・影響範囲・対策
  3. GHSA-vhm9-85gw-x335 - Discourseのセキュリティアドバイザリ(2026-07-28)

最新のAIニュースをほぼ毎日更新しています。

RSSで購読する 更新をいち早くチェックできます。

他のキーワードで探す →