732バイトから無へ:Copy Failの本番環境でのシャットダウン
Together AIは、Linuxカーネルの脆弱性Copy Fail(CVE-2026-31431)への迅速な対応を詳述しています。この脆弱性は、ローカルの特権のないユーザーがAF_ALGインターフェースを介して正確な4バイト書き込みプリミティブを可能にし、権限昇格を引き起こします。チームは脆弱なカーネルモジュールをアンロードし、パッチを適用し、検出を強化することでAIインフラストラクチャの安全を確保しました。
Together AIは、深刻なLinuxカーネルの脆弱性Copy Fail(CVE-2026-31431)への対応の全容を公開しました。この脆弱性により、ローカルの特権のないユーザーは、AF_ALGソケットインターフェースを介して、システム上の任意の読み取り可能なファイルのページキャッシュに正確な4バイトを書き込むことができます。実際の攻撃では、公開されたエクスプロイトコードが共有setuidバイナリのメモリ内の数バイトを改変し、主流のLinuxディストリビューションでroot権限を取得します。ディスク上のファイルは決して変更されず、ページキャッシュはダーティとマークされないため、従来のファイル整合性チェックは、変更されたバイナリが実行されている場合でも攻撃を検出できません。
AIインフラストラクチャでは、この脆弱性のリスクは大幅に拡大します。現代のAIプラットフォームでは、「ローカル」アクセスには通常、CIジョブ、マルチテナントGPUノード、一時的な研究環境、またはサードパーティのワークロードが含まれます。コンテナ内のAF_ALGソケットが悪用されると、攻撃者は簡単に基盤となるホストのroot権限を取得できます。ページキャッシュは共有されるため、1つのワークロードによる書き込みが、同じノード上の他のテナントが使用するバイナリやライブラリを静かに破壊する可能性があります。ホストが侵害されると、攻撃者はストレージ、コントロールプレーン、隣接するワークロードに容易にアクセスできるようになります。
Together AIの対応戦略は直接的でした:脆弱なAF_ALGインターフェースを即座に無効化することです。本番ワークロードはユーザー空間のalgif_aeadソケットに依存していないため、チームはフリート全体で果断な行動を取ることができました:algif_aeadモジュールをアンロードして脆弱なコードパスを即座に遮断し、モジュールファイルを標準モジュールディレクトリから移動して、システムや自動化ツールが後で再ロードするのを防ぎました。このアプローチは迅速で、リスクが低く、持続的です。再起動が不要(長時間のGPUジョブにとって重要)であり、ホストが同じカーネルバージョンで再起動した場合でも、algif_aeadは無効のままです。この措置は構成管理における冪等性のコンプライアンスチェックとして組み込まれ、モジュールがアンロードされ.koファイルが隔離されるまでホストは正常と見なされません。
緊急緩和策の後、Together AIはカーネルパッチを段階的に展開しました。パッチ適用済みカーネルは、最も重いAIワークロード(密集したマルチテナントGPUノードを含む)を模倣した非本番クラスタで最初にステージングされました。加速された浸漬テストでパフォーマンス、GPUドライバの互換性、安定性を検証した後、パッチはリージョンと環境ごとに、共有の少ないクラスタから多テナント環境へと徐々に展開されました。パッチ適用後も、明確なニーズがない環境ではalgif_aeadを無効のままにする計画です。
同時に、検出チームはテレメトリにCopy Fail対応のシグナルを追加しました:予期しないAF_ALG使用や暗号モジュールのロードに対するアラート、および特権バイナリの動作監視(ディスクイメージが変更されていない場合でも異常を検出)。
Copy Failは、小さなカーネルバグがAIインフラストラクチャにどのように大きな影響を与えるかを示しています。共有カーネルと密集したマルチテナンシーは、ローカルの脆弱性をテナント間のリスクに増幅します。ページキャッシュのトリックは従来のファイル整合性ベースの防御を回避できます。「誰も使わない」狭いインターフェースが突然主要な攻撃面になる可能性があります。Together AIの教訓は、カーネル露出モデルを継続的に強化し、ニッチなインターフェースをデフォルトでオフにし、問題発生時に迅速なフリート全体のトグルを可能にし、これらの決定が高性能AIワークロードと互換性があることを検証パイプラインで証明することの重要性を強調しています。