OpenSSHのCVE-2026-123158、CISAが悪用確認

musl の
脆弱性の概要
- 対象
- OpenSSH
- 悪用
- あり(確認済み)
- 影響
- パスワードを知らなくてもログインされる
- 修正版
- 修正版あり
- 公表元
- CISA / JPCERT/CC / GreyNoise
| 製品 | 対象のバージョン | 修正版 |
|---|---|---|
| OpenSSH(Linux、musl、PAM なし) | 10.6p2 より前 | 10.6p2 |
| Alpine Linux | 各系統の修正版より前 | Alpine の修正済みパッケージ |
製品の履歴:OpenSSHの脆弱性一覧Linuxの脆弱性一覧公表されたらすぐ通知を受け取る
やること
米国の CISA は11月9日(米国時間)、OpenSSH の認証回避の欠陥 CVE-2026-123158 を、悪用が確認された脆弱性の一覧(KEV)に加えました。JPCERT/CC も同じ9日に CyberNewsFlash を出し、国内で Alpine Linux をもとにした商用製品が使われていることを確認したと書いています。Alpine など musl を使う Linux で sshd(SSH の接続を受けるプログラム)を動かしている機械は、更新と侵入の点検を済ませてください。
- OpenSSH を 10.6p2 以降にするか、Alpine の修正済みパッケージに更新してください。古い版に修正を移しているディストリビューションもあるので、版の番号だけでなく各開発元の情報で確かめてください
- 更新の手順と、すぐに更新できない場合の設定は11月5日の記事にまとめています
- Alpine をもとにした機器を使っている場合は、メーカーの告知を確かめてください
- 修正の前に SSH のポートがインターネットから届いていた機械は、下の手順で侵入の跡を調べてください
CISA は米国の政府機関に、11月12日までの対応と侵害の痕跡の調べを求めています。JPCERT/CC によると、国内の組織での侵害は今のところ確認されていません。
公表から KEV 追加までの流れ
11月6日の記事の時点では、攻撃の情報は1社の観測を伝える報道だけで、KEV にも載っていませんでした。その後、脅威の観測を行う GreyNoise が経緯をまとめています。日本時間に直すと次のとおりです。
- 11月5日 18時ごろ:OpenSSH 10.6p2 を公開
- 11月5日 22時ごろ:最初の攻撃コードが GitHub に公開。CVE の番号が予約される前でした
- 11月7日 10時前:GreyNoise の観測用の機械で、最初の侵入の成功を観測
- 11月9日(米国時間):CISA が KEV に追加
GreyNoise の数字では、11月5日以降に SSH のポート(22番)に届いた探索は約3,200万件です。そのうち攻撃の試みの可能性があると分類されたものは5件で、侵入後の操作まで確かめられた攻撃元は6つでした。ランサムウェアに使われたかどうかは、KEV では「不明」です。
侵入のあとに行われたこと
GreyNoise によると、侵入された観測用の機械では、攻撃者がシステムの情報を調べ、名前の解決の設定を書き換え、別の SSH の受け口と遠隔操作の部品を置きました。部品は Python で書かれた「TAC Agent」で、/opt/py3/tac_agent.py に置かれ、tac.vpnla.org と通信します。ファイルの一覧や読み取り、ファイルの出し入れ、コマンドの実行ができる作りです。観測の範囲では登録に失敗し、指示は受け取っていません。
部品そのものに自動で起動し直す仕組みはありませんが、ある機械では起動時に動かす /etc/init.d/tac-agent が書き込まれていました。/root や /home/alpine の authorized_keys に鍵が足された例もあります。別の攻撃元はコンテナの中かどうかを調べ、AWS、Azure、Alibaba のクラウドの情報の取得を試みました。doas を使って root の SSH の鍵と /etc/shadow を読もうともしています。
GreyNoise は、通信先を止めるときは共有の IP アドレスではなく tac.vpnla.org の名前で止めるよう書いています。攻撃者はこの名前の行き先を /etc/hosts に書き込んでいました。
侵入されていないかの点検
JPCERT/CC は Alpine の案内として、次の点検を挙げています。SSH の認証の記録(/var/log/messages など)で、本来パスワードでは入れないアカウントに Accepted password for が残っていないかを見てください。あわせて doas の使われた跡、覚えのないアカウントの追加、SSH の公開鍵の変更を確かめ、覚えのないファイルやプロセス、外部への通信がないかも調べてください。
GreyNoise の観測から、/etc/hosts と /etc/resolv.conf の書き換え、上の2つのファイル、authorized_keys もあわせて見てください。
対象
JPCERT/CC がまとめた条件は、OpenSSH 10.6p2 より前で、次のすべてがそろう場合です。
- musl を使う Linux で動いている
- PAM の認証を使っていない
- OpenSSH のパスワードの認証が有効
- パスワード欄が「
*」のアカウントがある - 別のローカルアカウントに「
$5$」か「$6$」の形のパスワードがある
概念実証のコードはすでに公開されています。
中小企業が確かめること
Alpine を選んだ覚えがなくても、業者が納めた機器やアプライアンスの中で動いていることがあります。外から SSH が届く機器の一覧を作り、中の OS をメーカーか保守の業者に聞いてください。
点検で跡が見つかった場合や、記録が残っておらず侵入がなかったと言い切れない場合は、その機械を作り直し、置かれていた鍵とパスワードを変えてください。
自社で確かめること
- Alpine をもとにした機器社内の機器やアプライアンスに Alpine Linux をもとにしたものがないかを、メーカーの告知や保守の業者に確かめてください。
- ログインの記録パスワードでは入れないはずのアカウントに Accepted password for の記録がないかを、SSH の認証の記録で見てください。
- 置かれたファイルと鍵/opt/py3/tac_agent.py や /etc/init.d/tac-agent がないか、authorized_keys に覚えのない鍵が足されていないかを見てください。
この製品を使っていますか
使っている製品に追加しておくと、新しい記事がトップと右の欄に出ます。



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