Nine-year-old Linux Kernel Vulnerability Let Attackers Exfiltrate SSH Private Keys
2026/05/21 CyberSecurityNews — 新たに公開された Linux kernel の脆弱性 CVE-2026-46333 は、約 9年間にわたり検出されなかった、深刻なローカル権限昇格の欠陥を露呈するものだ。この脆弱性を悪用する攻撃者は、SSH 秘密鍵を含む機密性の高いデータを窃取し、影響を受けるシステム上で root として任意のコマンド実行を可能にすると、Qualys Threat Research Unit のセキュリティ研究者は明らかにしている。

この脆弱性は、Linux kernel の __ptrace_may_access() 関数に存在する。この関数は、あるプロセスによる、別のプロセスの検査/操作を制御するものだ。
Linux kernel バージョン 4.10-rc1 (2016年11月) で混入したロジック・エラーにより、特権プロセスが資格情報を破棄する短時間のウィンドウの中で、不正なアクセスが許可される。
このレース・コンディションを pidfd_getfd() システム・コールと組み合わせる攻撃者は、特権プロセスからファイル記述子を複製し、自身の非特権コンテキストにおいて再利用を可能にする。
Linux Kernel の欠陥により SSH 鍵が露出
この挙動は、標準の権限チェックを実質的に回避し、機密リソースへのアクセスを可能にする。Qualys が実証したのは、Debian 13 や、Ubuntu 24.04/26.04、Fedora 43/44 などのデフォルト構成環境で、エクスプロイトが安定して機能することだ。
以下の、4 つの実環境シナリオが確認されている。
- ssh-keysign:”/etc/ssh/” 配下の SSH ホスト秘密鍵の窃取
- chage:”/etc/shadow” からのパスワード・ハッシュ漏洩
- pkexec:root 権限での任意のコマンド実行
- accounts-daemon:D-Bus を介した権限昇格
この脆弱性はローカル・ベクターに分類されるが、その影響は極めて深刻である。SSH アクセス/侵害されたサービス・アカウント/CI/CD パイプラインなどを通じて、低権限シェルを取得した攻撃者は、完全な root 権限へと昇格できる。
この問題が意味するのは、限定的アクセスと完全なシステム侵害の境界の崩壊である。
この問題の根本的な原因は、__ptrace_may_access() における dumpable 状態の不適切な処理にある。
対象プロセス終了時にメモリ記述子 (mm) が NULL になると、カーネルは重要なセキュリティ・チェックをスキップする。その結果として、アクセス制御は YAMA Linux Security Module にフォールバックする。
デフォルト設定である “kernel.yama.ptrace_scope = 1” では、親プロセスとしての攻撃者にアクセスが許可されるため、この攻撃が成立する。
その一方で、”ptrace_scope = 2″ を設定すると、CAP_SYS_PTRACE が必須となり、この攻撃経路は遮断される。
アップストリーム・パッチは 2026年05月14日に公開され、責任ある開示の直後に対応が実施された。
すでに Debian Project/Red Hat/SUSE/AlmaLinux/CloudLinux などの主要ディストリビューションは、セキュリティ・アップデートを提供している。
管理者は、以下を直ちに実施すべきである。
- 最新の kernel アップデートの適用
- SSH ホスト鍵および機密認証情報のローテーション
- 不正な権限昇格の監査
暫定対策として、以下の設定が有効である。
- “kernel.yama.ptrace_scope = 2”
ただし、この設定は、gdb や strace などのデバッグツールや、一部のコンテナ、クラッシュレポート機能に影響を与える可能性がある。
公開されたエクスプロイトの存在と、影響を受ける Linux システムが約 9年にわたり配布されてきた経緯を考慮すると、エンタープライズおよびクラウド環境において、脆弱性 CVE-2026-46333 は即時の対応が必要な深刻リスクである。
訳者後書:Linux kernel の脆弱性 CVE-2026-46333 は、プロセス同士のアクセス権を検証する __ptrace_may_access() 関数のロジックエラーが問題の原因となっています。プロセスが終了する際の処理において、カーネルがメモリ記述子の状態を正しく管理できていないことで、 本来であればスキップしてはならない重要なセキュリティ・チェックが回避されるというギャップが生じています。 この問題とシステムコールを組み合わせることで、 本来は一般ユーザーが触るべきではない特権プロセスの情報を複製し、管理者権限の奪取や SSH 秘密鍵の窃取が可能になっています。ご利用のチームは、ご注意ください。よろしければ、Linux kernel での検索結果も、ご参照ください。
You must be logged in to post a comment.