scp 脆弱性修正を含む OpenSSH 8.3 リリース

XNUMXか月の開発期間を経て 提示された 解放する OpenSSH 8.3、SSH 2.0 および SFTP プロトコルを介して動作するためのオープンなクライアントおよびサーバーの実装。

新しいリリースでは、サーバーが要求されたファイル名とは対照的に、他のファイル名を渡すことを可能にする scp 攻撃に対する保護が追加されています。 過去の脆弱性、この攻撃によって、ユーザーが選択したディレクトリや glob マスクを変更することはできません)。 SCP では、サーバーがクライアントに送信するファイルとディレクトリを決定し、クライアントは返されたオブジェクト名の正確性のみをチェックすることを思い出してください。 特定された問題の本質は、utimes システム コールが失敗した場合に、ファイルの内容がファイル メタデータとして解釈されることです。

この機能は、攻撃者によって制御されているサーバーに接続する場合、utimes の呼び出し時に失敗する構成 (たとえば、utimes がユーザーによって禁止されている場合など) で scp を使用してコピーするときに、ユーザーの FS に他のファイル名やその他のコンテンツを保存するために使用できます。 SELinux ポリシーまたはシステム コール フィルター)。 一般的な構成では utimes 呼び出しが失敗しないため、実際の攻撃の可能性は最小限であると推定されます。 さらに、この攻撃は見逃されません。scp を呼び出すと、データ転送エラーが表示されます。

一般的な変更点:

  • sftp では、以前は受け入れられていましたが無視されていた ssh や scp と同様に、「-1」引数の処理が停止されました。
  • sshd では、IgnoreRhosts を使用する場合、次の XNUMX つの選択肢があります。「yes」 - rhosts/shosts を無視する、「no」 - rhosts/shosts を尊重する、「shosts-only」 - 「.shosts」を許可するが「.rhosts」を許可しない。
  • Ssh は、Unix ソケットのリダイレクトに使用される LocalForward および RemoteForward 設定で %TOKEN 置換をサポートするようになりました。
  • 公開キーを含む別のファイルがない場合、暗号化されていないファイルから秘密キーを含む公開キーをロードできるようにします。
  • システムで libcrypto が利用可能な場合、ssh と sshd は、パフォーマンスが遅れている組み込みのポータブル実装ではなく、このライブラリの Chacha20 アルゴリズムの実装を使用するようになります。
  • コマンド「ssh-keygen -lQf /path」の実行時に、取り消された証明書のバイナリ リストの内容をダンプする機能を実装しました。
  • ポータブル バージョンでは、SA_RESTART オプションを含む信号が選択の操作を中断するシステムの定義が実装されています。
  • HP/UX および AIX システム上のビルドの問題は解決されました。
  • 一部の Linux 構成で seccomp サンドボックスを構築する際の問題を修正しました。
  • lifido2 ライブラリの検出が改善され、「--with-security-key-builtin」オプションによるビルドの問題が解決されました。

また、OpenSSH 開発者は、SHA-1 ハッシュを使用したアルゴリズムの分解が差し迫った可能性があることについても再度警告しました。 プロモーション 特定のプレフィックスによる衝突攻撃の有効性 (衝突を選択するコストは約 45 ドルと推定されます)。 今後のリリースの XNUMX つでは、公開鍵デジタル署名アルゴリズム「ssh-rsa」を使用する機能をデフォルトで無効にする予定です。このアルゴリズムは、SSH プロトコルの元の RFC で言及されており、実際に広く普及しています (使用をテストするため)。システムに ssh-rsa が含まれていない場合は、オプション「-oHostKeyAlgorithms=-ssh-rsa」を使用して ssh 経由で接続を試みることができます。

OpenSSH の新しいアルゴリズムへの移行をスムーズにするために、将来のリリースでは UpdateHostKeys 設定がデフォルトで有効になり、クライアントがより信頼性の高いアルゴリズムに自動的に移行されます。 移行に推奨されるアルゴリズムには、RFC2 RSA SHA-256 に基づく rsa-sha512-8332/2 (OpenSSH 7.2 以降サポートされ、デフォルトで使用される)、ssh-ed25519 (OpenSSH 6.5 以降サポート)、および ecdsa-sha2-nistp256/384/521 ベースが含まれます。 RFC5656 ECDSA (OpenSSH 5.7 以降でサポート)。

証明書で SHA-14 を使用すると追加のリスクが生じるため、最後のリリースの時点で、「ssh-rsa」と「diffie-hellman-group1-sha1」は、新しい証明書にデジタル署名できるアルゴリズムを定義する CASignatureAlgorithms リストから削除されました。そのため、攻撃者は既存の証明書の衝突を検索する時間が無制限ですが、ホスト キーに対する攻撃時間は接続タイムアウト (LoginGraceTime) によって制限されます。

出所: オープンネット.ru

コメントを追加します