脆弱性・CVE速報深刻度: 高

OpenSSH 10.6p2 より前の CVE-2026-123158: musl libc で PAM なしの sshd が、256 バイトを超える長いパスワードで認証を通してしまう恐れ(Alpine Linux など)

目次(6)

CVE-2026-123158

OpenSSH の sshd(SSH のサーバー)で、CVE-2026-123158 が 2026-11-05 に NVD に登録されました。登録元は MITRE で、NVD の状態は Received(受付済み)です。10.6p2 より前の Linux 版で、musl libc を使い、PAM を使わない構成のときに、パスワード認証を回避される恐れがあります。例として挙げられているのは Alpine Linux です。

何が起きるか

PAM なしでビルドした sshd は、入力されたパスワードを C ライブラリの crypt() でハッシュ化し、保存されているパスワード欄と比べます。NVD の記述では、保存された欄がパスワードのハッシュなのかどうかの解釈を誤る問題があり、アカウントの設定によっては、256 文字を超え 1024 文字以下の任意のパスワードで認証が成功します。

Alpine Linux の勧告によると、仕組みは次のとおりです。

  • パスワード欄が短すぎてソルト(ハッシュに付くランダムな前置き)を含められないアカウントのとき、sshd は別のアカウントのソルトを借りて照合します。
  • musl の crypt() は、鍵が 256 バイトを超えると、エラーの印として * という文字列を返します。
  • パスワードが設定されていないアカウントの欄も、ちょうど * です。両者が一致して、認証が通ります。

攻撃できる条件(Alpine Linux の勧告の記載)

次がすべて当てはまる場合です。

  • sshd が PAM なしで動いている(Alpine の openssh-server パッケージ、または openssh-server-pam で UsePAM no)。
  • PasswordAuthentication が yes(OpenSSH の既定値)。
  • パスワード欄が * のアカウントがある(root、パスワードなしの鍵認証専用ユーザー、ディレクトリサービス由来のユーザー、公式のクラウドイメージの alpine ユーザーなど)。
  • マシンに、$5$ か $6$ で始まるパスワードのハッシュを持つアカウントが 1 つ以上ある。

攻撃者は * のアカウント名を知っていれば、257〜1024 バイトの長いパスワードを 1 回送るだけでログインできる、と説明されています。root は OpenSSH の既定(PermitRootLogin prohibit-password)で守られますが、ログインできる別のアカウントが doas などで root になれる場合は意味がありません。

項目内容
CVECVE-2026-123158
弱点CWE-394(予期しない状態コード・戻り値)。登録元の分類
点数(MITRE 評価 CVSS v3.1)8.1(ネットワーク・攻撃条件 高・必要な権限なし・利用者の関与なし・機密性 高・完全性 高・可用性 高)
影響する版OpenSSH 10.6p2 より前(Linux で musl libc を PAM なしで使う構成)
修正版OpenSSH 10.6p2。Alpine は 3.21.10・3.22.8・3.23.8・3.24.4 の更新版に修正済みのパッケージを収録

影響を受けない場合(勧告の記載)

  • PasswordAuthentication が no。
  • PAM 付きの openssh-server-pam を UsePAM yes で使っている。
  • パスワード欄が ! のロックされたアカウントだけが対象のとき(パスワードでも鍵でもログインできない)。
  • $ で始まるハッシュを持つアカウントがマシンに 1 つもない。
  • コンテナの中で sshd を動かしていない。

評価

  • 認証は不要ですが、攻撃条件が「高」で点数は 8.1(9 未満)のため、基準では severity は high です。ただし、条件を満たす環境では 1 回の接続でログインでき、点数より実害が大きくなる場合があります。
  • CISA の SSVC 判定(2026-11-05)は、悪用の状況が poc(公開された実証コードあり)、自動化は no、技術的な影響は total(全面)です。実際の攻撃での悪用は、本稿では確認できていません。
  • FIRST の EPSS は、2026-11-06 時点でまだ算出されていません。CISA の KEV には掲載されていません(2026-11-06 に一覧を検索)。

対策として考えられること

  1. OpenSSH 10.6p2 以降、または各ディストリビューションの修正済みパッケージに更新し、sshd を再起動します。Alpine の勧告は、パッケージを更新しても動いている sshd は入れ替わらないため、再起動が必要と注意しています。
  2. すぐに更新できないときは、鍵でのログインを確認したうえで PasswordAuthentication を no にして sshd を再起動します。
  3. 公式のクラウドイメージ(tiny-cloud)の alpine ユーザーは、初期状態では安全ですが、マシンに $6$ のハッシュが 1 つできた時点で悪用できる状態になります。コンソールのパスワード設定やユーザーデータでのユーザー追加をしたインスタンスは、特に確認します。
  4. ログの Accepted password for の行を確認し、パスワードを持たないアカウント(alpine・root・鍵認証専用ユーザーなど)が通っていないかを調べます。疑わしいログインを否定できない場合は、侵害されたものとして扱います。

未確認の点

  • 実際の攻撃での悪用の有無(SSVC は公開された実証コードの存在を示すのみ)。
  • OpenSSH 10.6p2 のリリースノート、修正のコミット、各ディストリビューション(Alpine 以外)の影響と修正状況の中身(本稿では Alpine の勧告のみ読みました)。
  • 影響する版の下限(Alpine は 3.16 以降の全リリースが影響と記載)。
  • NVD の最終評価(現在は Received で、変わる可能性があります)。

この記事について

AI の利用
本記事は AI が NVD などの公開情報をもとに作成しました。数値は取得時点(2026-11-06)のもので、未確認の点は本文に明記しています。

出典

この記事を共有