見出し画像

PuTTY SSH クライアントの ECDSA 署名処理の実装に脆弱性

こちらのnoteは、セキュリティ専門家松野によるニュース解説ラジオ「今日の10分セキュリティラジオ」の放送内容を一部抜粋しご紹介します

・今回の解説ニュース
・発見された脆弱性の内容
・SSHでも使われる秘密鍵の役割

今回の解説ニュース

PuTTYに脆弱性が発見されています。ご利用中の方はアップデートと鍵ペアの再生成を検討してください。発見された脆弱性の内容と、SSHでも使われる秘密鍵の役割について説明します。

今回の脆弱性は、PuTTY SSHクライアントのECDSA署名処理に脆弱性が存在するというものです。影響を受けるシステムは、PuTTY バージョン 0.68 から 0.80 までです。影響として、60個程度の署名データから、使用している秘密鍵を特定される可能性があるということです。

対策として、開発者が提供する情報をもとに、最新バージョンへのアップデートと鍵ペアの更新を検討してください。脆弱性の詳細は、本脆弱性に割り当てられたCVE番号「CVE-2024-31497」で検索してみてください。

発見された脆弱性の内容
まず、ECDSAは楕円曲線デジタル署名アルゴリズムとも訳される、デジタル署名に用いられるアルゴリズムの一つです。署名プロセスに楕円曲線を使用しており、オンラインバンキングやブロックチェーンなど、様々な分野で幅広く利用されています。

ECDSA署名の仕組みを簡単に説明すると、送信者はまず、ランダムな値を生成して、その値を送信者だけが知っている秘密鍵で署名を行います。受信者は、送信者の生成したデータを、誰でも知ることができる送信者の公開鍵で検証を行います。ペアとなる秘密鍵と公開鍵でのみ署名と検証を行うことができます。また、誰でも知ることができる公開鍵から、送信者だけが知っている秘密鍵を生成することは本来できません。

今回の脆弱性は、送信者が生成するランダムであるべき値に偏りがあるというものです。その結果、ごく少数の署名データから秘密鍵を特定されてしまう可能性があるということです。よって、ソフトウェアをアップデートして脆弱性を修正した場合も、過去に生成された秘密鍵によって作成された署名データを収集することにより、秘密鍵が生成できてしまう可能性があることになります。

その他のトピック

SSHでも使われる秘密鍵の役割
(全文はこちら)

Voicyで毎週ニュース解説を配信中!