AIツール2026年10月更新

Claudeで攻撃対象領域を削減|OpenSSHの認証前コード約5分の1を削った手法とsshd運用者の対応【2026年10月】

公開日: 2026/10/21
Claudeで攻撃対象領域を削減|OpenSSHの認証前コード約5分の1を削った手法とsshd運用者の対応【2026年10月】

この記事のポイント

AnthropicがClaudeでソフトウェアの攻撃対象領域を削減する研究を2026年10月20日に公開しました。OpenSSH 10.5〜10.6で認証前に動くコードを約5分の1減らした経緯、3つの分析手法、sshd運用者が今やること、自社コードに当てるときの注意点を整理します。

Anthropicは2026年10月20日、Claudeを使ってソフトウェアの「攻撃対象領域(attack surface)」を削減する研究を公開しました。 OpenSSHでは、ログイン前の相手からの入力が届いてしまう鍵解析コードをClaudeが見つけ、その指摘をもとに開発者がOpenSSH 10.5と10.6で処理順を改めました。その結果、デフォルト構成で未認証のクライアントが到達できるコードは約5分の1減っています。

この記事でわかることは次のとおりです。

  • Anthropicの言う「攻撃対象領域の削減」とは何か、脆弱性を探して直すやり方と何が違うのか
  • OpenSSH 10.4 → 10.5 → 10.6 で何が変わったのか(公式リリースノートと照らし合わせた結果)
  • Claudeが使った3つの分析手法と、25プロジェクト・493件という検証結果の中身
  • sshdを運用している人が今やること
  • 自社のコードに同じ考え方を当てるときの進め方と、人が判断すべき範囲

sshdを管理するインフラ担当、OSSのメンテナー、AIによるセキュリティ診断を検討している情シス・開発責任者に向けた記事です。

攻撃対象領域の削減とは:バグを1件ずつ直すのではなく「届く範囲」を減らす研究

Anthropicのロゴ(攻撃対象領域の削減に関する研究を公開)

出典: Anthropic 公式

今回の発表の要点は、まだ見つかっていない脆弱性の被害まで小さくするために、攻撃者が届くコードそのものを減らすという考え方です。脆弱性を見つける研究ではありません。

Anthropicの研究記事「Using Claude to reduce the attack surface of code」(著者はFrontier Red TeamのChris Rohlf氏)は、次のように述べています。

reducing code reachability can reduce the severity of unknown vulnerabilities

(コードの到達可能性を減らせば、未知の脆弱性の深刻度も下げられる)

バグを1件直しても、残りのバグについては何もわかりません。一方、認証前に動くコードを減らせば、そのコードに未知のバグがあっても、攻撃者はまずログインに成功しないと触れなくなります。家にたとえるなら、玄関の鍵を強くするより先に、使っていない勝手口を塞ぐ作業です。

研究記事では、攻撃対象領域の削減を「到達可能なコードを、より厳しい関門の後ろへ移すこと」と定義し、次のような移動を例に挙げています。

移動前(届きやすい)

移動後(届きにくい)

認証前に動く

認証後に動く

0-click(相手の操作なしで動く)

1-click(相手の操作が必要)

デフォルトで有効

明示的にオプトインしたときだけ有効

プロトコルの最初のメッセージで処理

セッションの状態が進んだ奥で処理

誤解しやすい3つの点

公開直後で情報が出そろっていないため、次の点は先に押さえておくと安全です。

  1. CVEや悪用報告の話ではない: OpenSSHに既知の脆弱性があったという発表ではありません。「認証前に不要なコードが届く状態だった」のを、予防的に狭めた話です。
  2. 使ったモデル名は書かれていない: 研究記事は「Claude」とだけ書いています。Claude Mythosで見つけた、とは明記されていません。
  3. ML-DSAが危険だから止めたわけではない: OpenSSH 10.6では、耐量子署名のML-DSAハイブリッド方式がむしろ正式に有効になりました。変わったのは「鍵をいつ解析するか」という順番です。

Microsoftの「攻撃面の減少(ASR)ルール」とは別の話

「攻撃対象領域 削減」で検索すると、Microsoft Defenderの「攻撃面の減少(ASR)ルール」が出てきます。こちらはWindows端末で、難読化スクリプトの実行やプロセスへのコード注入といった危険な挙動をブロックする機能です。今回のAnthropicの研究とは関係がありません。

また、一般的なASM(Attack Surface Management)は、外部に公開されたサーバーやドメインなどの「資産の入口」を棚卸しする考え方です。今回の研究はもっと細かく、1つのプログラムの中で、どのコードが認証前に動くかを見ています。

OpenSSHで何が起きたか:10.4から10.6までの経緯

OpenSSHの公式ロゴ

出典: OpenSSH 公式サイト

OpenSSHでは、Claudeの指摘をきっかけに2回のリリースで処理順が改められ、デフォルト構成で認証前に届くコードが約5分の1減りました。研究記事とOpenSSH公式のリリースノートを照らし合わせると、経緯は次のとおりです。

時期

出来事

出典

2026年7月6日

OpenSSH 10.4リリース。ML-DSA-44とEd25519を組み合わせた耐量子署名を実験的に追加

OpenSSH 10.4リリースノート

10.4の解析

Claudeがsshdの入力経路を追い、デフォルト設定で未認証クライアントが届くML-DSA-44の新しいコード約4,500行を発見。既定のsshdで認証前に動くコードの約16%にあたる

Anthropic

報告

パッチを添えてOpenSSH開発者に報告

Anthropic

2026年8月11日

OpenSSH 10.5リリース。相手から届いた鍵を解析する前に、公開鍵の種類が許可されているかを判定する順番に変更

OpenSSH 10.5リリースノート

10.5の残り

Claudeが2つの抜け道を指摘。宣言されたアルゴリズム名と実際の鍵データの型の不一致、証明書のCA署名の経路に関門がない点

Anthropic

2026年10月6日

OpenSSH 10.6リリース。鍵の解析中に、鍵とCA署名の種類を許可リスト(PubkeyAcceptedAlgorithmsなど)と照合する形に変更

OpenSSH 10.6リリースノート

なぜ「無効なはずのコード」に届いていたのか

ML-DSAは10.4の時点では既定で無効でした。管理者が設定でアルゴリズムを外していても、sshdは「この鍵の種類を許可するか」を判定する前に、相手から届いた鍵を解析していました。そのため、使っていないはずの実験的なコードに、ログイン前の誰でも入力を送り込める状態でした。

研究記事は、OpenSSHを「世界で最も監査されたCコードの一つ」と評価したうえで、それでもメモリ安全でない複雑なコードが認証前に届く理由はない、と指摘しています。

OpenSSH側の記載

公式リリースノートにも、Anthropicの関与が明記されています。

  • 10.5: 公開鍵の種類の判定を解析より前にした変更について、「少なくとも一部の鍵の解析・検証の経路を認証前の攻撃対象領域から取り除く」と説明し、提案者として「Christopher Paul Rohlf of Anthropic」の名前を挙げています。
  • 10.6: 許可リストとの照合を解析の中に組み込んだ変更について、「Chris Rohlf in collaboration with Claude and Anthropic Research」の提案と多くのフィードバックによるもの、と謝辞を載せています。

なお、10.5ではこれとは別に、ssh-keygenの二重解放の修正にもRohlf氏の名前があります。

Claudeが使った3つの分析手法

Claudeのロゴ(コード分析に使われたAI)

出典: Claude 公式サイト

Anthropicは、攻撃対象領域を見つける観点を3つに分けています。どれも「バグがあるか」ではなく「そもそも届く必要があるか」を問うものです。

手法

何を探すか

見つかる例

人の判断が要るか

デフォルト設定の分析

既定の構成で届くのに、既定の正規機能では使われないコード

有効にしていない機能のパーサー、古いプロトコルの処理

既定動作を変えない関門なら比較的入れやすい

早期到達性の分析

認証などの制御より前、または相手の操作なしで動く、複雑でセキュリティ上重要なコード

OpenSSHの認証前の鍵解析

処理順の変更なので、テストでの確認が必須

設定の相互作用の分析

単独では正しいのに、組み合わせると、気づかれないまま制御を無効にする設定の組

ホスト名ルールが効かない、証明書検証が外れる

非既定の設定に影響するため、人が判断する

Claudeスキルとしての動かし方

研究記事によると、この手法は再利用できる「Claudeスキル」にまとめられています。スキルの考え方そのものはClaude Code Skillsの活用ガイドで解説しています。今回の構成の特徴は次の3点です。

  • 3段階に分けて調べる: 各段階は空のコンテキストから始め、前の段階からは短い要約だけを引き継ぐ
  • 動的トレースで裏を取る: 各段階で入口(エントリポイント)を洗い出し、実際に実行を追って所見を確かめる
  • 既定動作が変わらないことを確かめる: 関門を足すパッチは、プロジェクト自身のテストとブラックボックスの回帰テストで、変更前と同じ結果になるかを確認する

AIの指摘をそのまま採用せず、実行して確かめ、テストで既定動作を守る流れになっている点が、実務で真似するときに大事なところです。

25プロジェクト・493件の検証結果

OpenSSH以外にも、Anthropicは25のオープンソースプロジェクトで同じ手法を試し、493件の問題を報告しました。OpenSSH以外のプロジェクト名は公開されていません。

項目

数値

対象プロジェクト

25件(Public 10/Gated 11/Private 4)

コード量

500万行超(C、C++、Java、PHP、Pythonなど)

棚卸しした設定項目

17,000件超(うちセキュリティ関連3,842件)

報告した問題

493件

警告なしで受け付けられた設定の組み合わせ

162件(うち94件はセキュリティ制御を気づかれないまま無効化、68件は同じ仕組みの中の食い違い)

プロジェクトの分け方は、不特定多数に向けて動く「Public」、認証済みユーザー向けの「Gated」、運用者の私的な環境で動く「Private」の3つです。

Anthropicが最も意外だったと書いているのはGated群です。ログインした人向けのソフトでありながら、認証前に届く範囲の問題が多く見つかりました。

Gated群(11プロジェクト)の内訳

件数

デフォルト設定で不要な認証前の到達面

93件

認証前に実行される、または状態を記録するコード

37件

認証前の制御を気づかれないまま弱める設定の組み合わせ

61件

Public群・Private群の件数や、493件のカテゴリ別の内訳は、研究記事の本文には数字で書かれていません。報告後にどれだけ修正されたかも、現時点では公表されていません。

プロジェクト名を伏せた発見例

  • 逆引きDNSとホスト名のルール: 互いに無関係な4つのプロジェクトで、同じ型の問題が見つかりました。IPアドレスだけで照合され、ホスト名で拒否するルールが発動せず、拒否されるべき接続が通ってしまう(フェイルオープン)というものです。多くのプロジェクトはこの挙動を文書に書いていませんでした。
  • 証明書チェックの衝突: 2つの設定がぶつかって、クライアント証明書の検証が外れる組み合わせが見つかりました。この組み合わせは21年間残っていたといいます。
  • TLSクライアント証明書の設定が無視される: 一部のエンドポイントで設定が知らないうちに無視され、証明書を持たないクライアントがセッションを開けました。

研究記事が認めている限界

Anthropic自身、今回の結果は「攻撃対象領域の削減でできることの一端」にとどまると書いています。ほかにも次の注意があります。

  • 一部の設定の組み合わせは珍しい使い方で、実際の被害は限られる場合がある
  • 見つかった問題の多くは、それだけですぐ悪用できるものではない
  • Gated群で、届く必要のないコードが全体に占める割合は大きくなかった
  • 既定でない設定に影響する変更は、自動では削らず人の判断に任せる

sshd運用者が今やること

GitHubのOpenSSH Portableリポジトリ

出典: OpenSSH Portable 公式GitHub

sshdを運用しているなら、OpenSSH 10.6(2026年10月6日リリース)に上げ、10.4〜10.5の実験版で作ったML-DSA鍵があれば作り直すのが基本です。10.6は今回の認証前の縮小に加えて、ほかの堅牢化も含んでいます。

チェックリスト

やること

理由・確認方法

現在のバージョンを確認する

ssh -V(クライアント)や、パッケージ管理ツールでサーバー側の版を確認

10.6、またはディストリの修正版へ更新する

認証前の鍵解析の縮小は10.5と10.6に分かれて入っている

実験版のML-DSA鍵を作り直すか削除する

10.6でアルゴリズム名から「@openssh.com」が外れたため、10.4〜10.5の実験版の鍵は使えなくなる

PubkeyAcceptedAlgorithmsを見直す

sshd -T で実際に効いている設定を表示し、使わない鍵の種類を外す。10.6ではこの許可リストが解析中に効く

圧縮(Compression)に頼る運用がないか確認する

10.6でLZ77辞書圧縮が無効になり、圧縮の効果が下がる

ユーザー名に「$」「\」を含む運用がないか確認する

10.6ではコマンドラインで指定したユーザー名のこの2文字を拒否する(設定ファイルのUserは対象外)

更新の頻度を見直す

Help Net Securityによると、10.6で報告されたセキュリティ問題の多くはAIモデルやAIの支援で見つかったもので、メンテナーはリリースの頻度を上げる方針

10.6の変更点の全体は、OpenSSH 10.6のリリースノートで確認できます。sftpでサーバーが返すパスの検証強化、KDFのラウンド数の上限、GSSAPIの認証情報を認証成功後に限って保存する変更なども含まれます。

ディストリビューションの版に注意

Ubuntu、RHEL、Debianなどは、上流の新しい版をそのまま入れず、修正だけを古い版に取り込む(バックポート)ことがあります。今回の変更がどの版に入っているかは、ディストリごとのセキュリティ情報やパッケージの変更履歴で確認してください。現時点で、主要ディストリの取り込み状況はこの記事では確認できていません。

このツールを自社のシステムや業務にどう組み込むか、ご提案します

初回相談は無料・30分(オンライン)。要件が決まっていなくても大丈夫です。改修100万円〜・PoC300万円〜(税別)

「脆弱性を探す」と「攻撃面を削る」の違い

Anthropicのセキュリティ関連の取り組みは、ここ数週間で次々に発表されています。名前が似ているので、目的で分けて整理します。

取り組み

目的

対象

現時点の使い方

攻撃対象領域の削減(今回の研究)

届くコードを減らし、未知のバグの被害まで小さくする

OpenSSHと25のOSS(研究)

研究発表。スキルはOSS Scannerに統合を進めている段階

OSS Scanner

OSSの脆弱性を見つけてメンテナーに知らせる

影響の大きいOSSのコアメンテナー

無料。GitHubの anthropics/oss-scanner に申請

Claude Security

企業が自社のコードを調べる

企業の開発組織

製品として提供

Claude Mythos

脆弱性を見つける力が高い最上位モデル

限られた利用者

提供範囲は限定的

OSS Scannerは2026年10月8日に、Anthropic Cyber Missionの一部として始まりました。研究記事は、今回の手法を「OSS Scannerに統合する作業を進めている」と書いています。ただし、いつから使えるか、スキル単体を一般に配るかは発表されていません。「今すぐ誰でも使える」状態ではない点に注意してください。

OSS Scannerの前身にあたる取り組みはProject Glasswingとはで、防御目的での利用申請の仕組みはClaude Cyber Verification Programで解説しています。

自社のコードに同じ考え方を当てるには

自社のサービスやOSSにこの考え方を当てるなら、「この入口は認証前に届く必要があるか」「この設定の組み合わせで制御が外れないか」を問い、変更は人が判断してテストで確かめる、という順で進めるのが現実的です。研究記事の3つの手法を、そのまま確認項目に置き換えられます。

確認の手順

  1. 入口を書き出す: ネットワークから入力を受け取る箇所(パーサー、プロトコル処理、APIのエンドポイント)を一覧にする
  2. 既定で届くが使っていない機能を探す: 既定の構成で有効になっている機能のうち、実際の運用で使っていないものを洗い出す
  3. 認証前に動く重い処理を探す: 認証やアクセス制御より前に、複雑な解析や状態の記録をしていないかを調べる
  4. 設定の組み合わせを調べる: 単独では正しい設定が、組み合わせで検証を外していないかを確認する
  5. 関門を前に出す変更をテストで確かめる: 既存のテストと回帰テストで、既定の動作が変わらないことを確かめてから入れる

研究記事は今後の応用として、実行時のログと設定を照らし合わせ、必要な機能だけが有効かを確かめる使い方も挙げています。使っていないパーサーや古いプロトコル、管理画面を止めるという発想です。

AIに任せる範囲と人が決める範囲

Claude Codeなどでコードを読ませれば、入口の洗い出しや処理順の追跡を、人手だけで追うより短い時間で進められる場合があります。一方で、既定でない設定に影響する変更や、互換性を崩すかもしれない変更は、Anthropic自身も人の判断に委ねています。AIの指摘は「候補」と考え、実際に動かして確かめる工程を外さないことが大切です。

社内のコードをAIツールに読ませる場合は、権限や情報の扱いにも気を配る必要があります。設定の考え方はClaude Codeのセキュリティと安全な使い方やAIコーディングのセキュリティリスクにまとめています。

診断の仕組みを自社の開発フローや業務システムに組み込みたい場合は、どこまでを既存ツールで済ませ、どこから作り込むかで費用が大きく変わります。組み込み方と費用の目安はAI開発の費用相場で整理しています。

この記事の内容が役立つ人・急がなくてよい人

こんな人におすすめ

  • インターネットに公開したsshdを運用していて、10.5・10.6に上げる理由を説明する必要がある人
  • 10.4〜10.5でML-DSAの実験的な鍵を試した人
  • OSSのメンテナーで、OSS Scannerの申請や、AIによる設定の点検を検討している人
  • 自社サービスで、認証前に動く処理や設定の組み合わせを見直したい開発責任者
  • AIによるセキュリティ診断が実務でどこまで使えるかを知りたい情シス担当

急いで対応しなくてもよい人

  • 社内ネットワークからしかsshdに届かず、ディストリの通常の更新に乗っている人(ただし更新自体は止めない)
  • Windows端末の「攻撃面の減少(ASR)ルール」の設定方法を調べていた人(目的が別のため、Microsoft Learnの公式ドキュメントを参照)
  • 今回のスキルをすぐ自社で使いたい人(一般提供の時期は発表されていないため、現時点では手順を参考にするのが中心)

よくある質問

Q. OpenSSHに脆弱性が見つかったということですか?

いいえ。今回はCVEが付いた脆弱性や、実際の悪用が報告された話ではありません。ログイン前の相手が、本来は使われない実験的な鍵解析コードに入力を送れる状態だったのを、処理順を変えて閉じたものです。予防的な堅牢化と考えるのが正確です。

Q. OpenSSH 10.6で、デフォルト構成のsshdの設定を変える必要はありますか?

今回の縮小は、sshdの内部で「許可するかの判定」を先に行うようにした変更なので、設定を変えなくても効きます。そのうえで、PubkeyAcceptedAlgorithmsに使わない鍵の種類が残っていれば外しておくと、許可リストによる絞り込みがより効きます。

Q. 「約5分の1」と「約16%」は同じ数字ですか?

別の数字です。約16%は、10.4の時点で既定のsshdの認証前コードのうち、ML-DSA-44の新しいコード約4,500行が占めていた割合です。約5分の1は、10.5と10.6の変更を経て、デフォルトのビルドで未認証クライアントが届くコードがどれだけ減ったかを表します。

Q. 自社のプロダクトもAnthropicに調べてもらえますか?

現時点では難しいと考えてください。OSS Scannerの対象は、影響の大きいオープンソースのコアメンテナーで、企業の非公開コードは対象外です。自社のコードを調べるなら、Claude CodeやClaude Securityを自分たちで使う形になります。プランと料金はClaudeの料金で確認できます。

Q. 攻撃対象領域を削ると、機能が使えなくなりませんか?

既定の動作を変えない関門なら、使っている機能はそのまま動きます。研究でも、関門を足すパッチは既存のテストと回帰テストで変更前と同じ結果になるかを確かめています。一方、既定でない設定を変える場合は互換性に響くことがあるため、人が判断する前提になっています。

まとめ

  • Anthropicは2026年10月20日、Claudeでソフトウェアの攻撃対象領域を削減する研究を公開した。バグを探すのではなく、攻撃者が届くコードを減らして未知の脆弱性の被害まで小さくする考え方
  • OpenSSHでは、既定で無効なML-DSAの実験的コード約4,500行に、未認証の相手が届いていた。10.5で判定を解析より前にし、10.6で許可リストとの照合を解析の中に組み込み、デフォルト構成の認証前コードを約5分の1減らした
  • 手法は「デフォルト設定」「早期到達性」「設定の相互作用」の3つ。25プロジェクト・500万行超で493件を報告した
  • sshd運用者は10.6(またはディストリの修正版)へ更新し、実験版のML-DSA鍵を作り直す。圧縮やユーザー名の互換性も確認する
  • スキルはOSS Scannerへの統合を進めている段階で、一般提供の時期は未発表。自社で真似るなら、AIの指摘は候補として扱い、テストで既定動作を確かめる

AIを使ったセキュリティの全体像は生成AIのセキュリティリスクやサイバーセキュリティ業界のAI活用事例、Claude自体の基本はClaudeとはで解説しています。

このツールを自社のシステムや業務にどう組み込むか、ご提案します

この記事の著者

AI革命

AI革命

編集部

AI革命株式会社の編集部です。最新のAI技術動向から実践的な導入事例まで、企業のデジタル変革に役立つ情報をお届けしています。豊富な経験と専門知識を活かし、読者の皆様にとって価値のあるコンテンツを制作しています。

AI・システム開発は、開始価格を公開しています

既存システムの改修 100万円〜・PoC 300万円〜(税別)。相談内容を送っていただくと、2営業日以内に担当者からご返信します