OpenSSH セキュア ネットワーキング スイートの一部のバージョンで新たなセキュリティの脆弱性が発見され、影響を受けるシステムでリモート コード実行 (RCE) が引き起こされる可能性があります。
この脆弱性は CVE-2024-6409 (CVSS スコア: 7.0) として追跡されており、バージョン 8.7p1 および 8.8p1、具体的には Red Hat Enterprise Linux 9 に同梱されているバージョンおよび対応するポータブル リリースにのみ影響します。
これは、シグナル処理の競合状態により、特権分離 (privsep) 子プロセス内でリモート コードが実行される可能性があるケースに関連しています。
OpenSSH のサーバー (sshd) でシグナル ハンドラーの競合状態の脆弱性が見つかりました。クライアントが LoginGraceTime 秒 (デフォルトでは 120、古い OpenSSH バージョンでは 600) 以内に認証しないと、sshd の SIGALRM ハンドラーが非同期で呼び出されます。ただし、このシグナル ハンドラーは、syslog() など、非同期シグナルセーフではないさまざまな関数を呼び出します。この問題により、cleanup_exit() 関数におけるシグナル ハンドラーの競合状態に対して脆弱なままとなり、SSHD サーバーの特権のない子に CVE-2024-6387 と同じ脆弱性が発生します。」と脆弱性の説明には記載されています。
Solar Designer という別名を持つセキュリティ研究者の Alexander Peslyak 氏は、RegreSSHion としても知られる CVE-2024-6387 の包括的なレビュー中にこの脆弱性を発見し、報告しました。開示された今月初めにQualysによって発表されました。
OpenSSH バージョン 8.7 および 8.8 は、privsep 子プロセスで動作するときに、grace_alarm_handler() から cleanup_exit() を呼び出します。 cleanup_exit() は元々シグナル ハンドラーから呼び出されるように意図されておらず、他の非同期シグナルの安全でない関数をトリガーする可能性があります」と Solar Designer 氏は著書で述べています。勧告。
CVE-2024-6387 との主な違いは、競合状態と RCE の可能性が、親サーバー プロセスと比較して制限された特権で動作する privsep 子プロセスで開始されることです。直接的な影響は低くなりますが、CVE-2024-6409 の悪用可能性と影響は依然として重大なリスクをもたらします。
「これらの脆弱性のうち 1 つだけが修正または軽減されると、もう 1 つの脆弱性の関連性が高まります」と Solar Designer 氏は説明します。どちらの脆弱性も「LoginGraceTime 0」設定で軽減できますが、「-e」軽減策は CVE-2024-6387 に対してのみ機能し、CVE-2024-6409 に対しては(完全には)機能しません。
CVE-2024-6409 脆弱性による差し迫ったリスクは低くなりますが、それに関連するリスクを軽減するために次のような即時措置を講じることをお勧めします。
- 影響を受けるすべての OpenSSH サーバーのインストールが最新のパッチで更新されていることを確認します。
- この脆弱性および類似の脆弱性の悪用を防ぐために、SSH 構成の LoginGraceTime 設定を確認し、場合によっては「0」に調整してください。
- SSH サーバー上の異常なアクティビティ、特に失敗した認証試行と SSH デーモン内でのシグナル処理の監視を強化します。
- SSH サーバーへのアクセスを制限するための追加のネットワーク セキュリティ対策を実装します。