2026年11月7日(土)運営:株式会社Rabbitly

  1. 速報メール配信「アララメッセージ」に不正アクセス、約8,100万件が流出
  2. 新着今週のセキュリティまとめ 11月1日〜7日
  3. 新着小島プレス工業の被害でトヨタ全工場が停止 14工場28ライン
  4. 新着英物流KNP、ランサムウェアで破綻 700人超が職を失う
  5. 新着関通、ランサムウェアで特別損失12.3億円 最終赤字8.5億円
  6. 新着半田病院、ランサムウェアで通常診療まで65日 請求も止まる
  7. 新着DMM Bitcoin、482億円相当が流出 半年後に廃業を発表
  8. 新着認証局DigiNotar、侵入検知から約2か月で破産 損失612万ドル
  1. トップ
  2. 脆弱性情報
  3. OpenSSHにパスワード回避の欠陥、Alpineなどが対象
脆弱性情報

OpenSSHにパスワード回避の欠陥、Alpineなどが対象

サイバーセキュリティ情報センター 編集部

画像はイメージです。記事に出てくる組織や現場とは関係ありません。

OpenSSH に、条件がそろうとパスワードを知らなくてもログインが通る欠陥 CVE-2026-123158 が見つかりました。対象は Alpine など musl を使う Linux で、Ubuntu や Debian など glibc の環境は対象外です。

脆弱性の概要

重要CVSS8.1
対象
OpenSSH
悪用
確認されていない
影響
パスワードを知らなくてもログインされる
修正版
修正版あり
公表元
OpenSSH / Alpine Linux
影響を受ける製品
製品対象のバージョン修正版
OpenSSH(Linux、musl、PAM なし)10.6p2 より前10.6p2
Alpine edge修正版より前10.6_p2-r0
Alpine 3.24修正版より前10.3_p1-r2
Alpine 3.23修正版より前10.2_p1-r1
Alpine 3.22修正版より前10.0_p1-r11
Alpine 3.21修正版より前9.9_p2-r1
Alpine 3.20修正版より前9.7_p1-r6
Alpine 3.19修正版より前9.6_p1-r3
Ubuntu・Debian など glibc の Linux対象外この欠陥の更新は不要

やること

OpenSSH の sshd(SSH の接続を受けるプログラム)を動かす Linux のうち、musl という標準ライブラリを使うものは、すぐに更新してください。代表は Alpine Linux です。

  • Alpine は apk upgrade -U -a で更新し、rc-service sshd restart で sshd を再起動してください。パッケージを更新しただけでは、動いている sshd は入れ替わりません
  • Alpine の修正版は上の表のとおりで、本家の 10.6p2 まで上がらなくても修正は入っています。サポートが終わった版も、Alpine の告知に修正版が載っています(3.18 は 9.3_p2-r4、3.17 は 9.1_p1-r7、3.16 は 9.0_p1-r6)
  • すぐに更新できない場合は、sshd の設定を PasswordAuthentication no にして再起動してください。パスワードでは入れなくなるので、鍵のログインを用意してから変えてください。今の接続を切らずに、別の接続で鍵のログインを試すと安全です。変更後は sshd -T | grep -i passwordauthentication で no と出ることを確かめてください

パスワード欄の「*」を「!」に書き換えるのは避けてください。発見者によると、PAM を使わない環境では「!」にすると鍵のログインもできなくなります。

Ubuntu と Debian は glibc を使うので、この欠陥の対象外です。PAM を使う環境や、Linux 以外の OS も対象外です。Ubuntu の OpenSSH の別の修正はOpenSSH 10.6の欠陥、Ubuntuは版そのままで9件を修正にまとめています。

何が危ないのか

CVE-2026-123158 はパスワードの確認を通り抜けられる欠陥です。パスワード欄が「*」のアカウントは本来パスワードでは入れません。ところが musl の環境では、とても長い文字列を送ると内容に関係なく正しいと判定されることがあります。鍵だけで使うアカウントや Alpine の root のパスワード欄がこの形です。

起きる順番はこうです。sshd は受け取ったパスワードを crypt という関数で変換し、/etc/shadow に保存された値と比べます。「*」はどんなパスワードを変換しても同じ値にならないので、ログインを止める印として使われてきました。ところが musl の crypt は処理に失敗すると「*」を返します。SHA-512 の処理には256バイトの上限があるので、これを超えるパスワードを送ると失敗し、その結果の「*」が保存された「*」と一致します。sshd はこれを正しいパスワードと判定します。発見者の解説では、通る長さは257〜1,024文字です。修正版の sshd は、保存された値が4文字未満のときはログインを通しません。

SSH のポートに届く相手なら、ログイン情報がなくても試せます。Alpine は、攻撃は1回の接続で済み、毎回成功すると説明しています。

OpenSSH の開発者は、原因は OpenSSH の外にあるとしながら、sshd の側で防ぐ処理を入れました。問題を知ってから約1日で公開したと説明し、AI エージェントが同じ欠陥を短い間に見つけ直す例が続いていることを理由に挙げています。CVSS は 8.1 です。

悪用の確認は公表されておらず、発見者の解説にも実際の悪用の報告はありません。ただし CVE の記録には再現用の公開リポジトリへのリンクが載っています。CISA がこの記録に付けた評価も、悪用の段階は実証コードがある状態(poc)です。

対象

次の条件がすべてそろうと対象です。

  • sshd が musl の上で動いている
  • PAM を使っていない。Alpine の openssh-server は既定で使いません。openssh-server-pam でも UsePAM no なら対象です
  • パスワードのログインが有効になっている。既定で有効です
  • パスワード欄が「*」のアカウントがある
  • 別のローカルアカウントに $5$ か $6$ で始まるパスワードのハッシュがある。sshd が照合に、そのアカウントのソルト(変換に混ぜる値)を使います

パスワードを1つも設定していない初期状態のサーバーは対象外です。sshd を動かしていないコンテナ、PasswordAuthentication no のサーバー、パスワード欄が「!」のアカウントも対象外です。

Alpine の root に直接入れるのは、PermitRootLogin yes にしている場合だけです。ただし、別のログイン用アカウントから doas で root になれるなら、root まで届きます。

発見者は Alpine の公式 AWS・Azure イメージの既定ユーザー alpine も、条件がそろえば対象だとしています。このユーザーはパスワードなしで管理者の操作ができます。Alpine によると、3.18.11 から 3.24.3 までの公式イメージ(tiny-cloud)は起動直後は安全ですが、管理者がコンソール用のパスワードを設定するなどして $6$ のハッシュができると、攻撃できる状態になります。修正が入ったイメージは 3.21.10、3.22.8、3.23.8、3.24.4 以降です。

侵入されていないかの確認

更新のあとは過去にログインされていないかも見てください。Alpine は /var/log/messages で、パスワードを持たないアカウントに Accepted password for の記録がないかを確かめるよう案内しています。見るのは alpine、root、鍵だけで使うアカウントなどです。doas の利用、最近作られたユーザーやファイル、認証用の鍵の追加も調べます。ログインがなかったと言い切れないときは、その機械は侵害されたものとして扱うよう求めています。

自社で確かめること

  1. OS を確かめるサーバーやコンテナが Alpine など musl を使う Linux かどうかを調べてください。発見者は OpenWrt、Buildroot、Yocto も挙げています。
  2. コンテナの中も見る発見者は、多くの Docker イメージが Alpine をもとにしていると説明しています。その中で sshd を動かしていないかを見てください。
  3. SSH の設定を見るUsePAM と PasswordAuthentication の設定を確かめ、/etc/shadow でパスワード欄が「*」のアカウントがないかも見てください。
自社で確かめるのが難しい場合はCyberScope のセキュリティ診断(3万円から)

出典

コメント 0

まだコメントはありません。

関連記事