こちらの記事は、セキュリティ専門家の松野によるニュース解説ラジオ「今日の10分セキュリティラジオ」の放送内容を文字に起こしご紹介しています。
独立行政法人情報処理推進機構(IPA)および一般社団法人JPCERT コーディネーションセンター(JPCERT/CC)は4月18日、PuTTY SSHクライアントのECDSA署名処理における脆弱性について「Japan Vulnerability Notes(JVN)」で発表した(記事はこちら)
【お届けするニュースはサイバーセキュリティ専門ニュースサイト「ScanNetSecurity」の提供でお送りしています。】PuTTYに脆弱性が発見されています。ご利用中の方はアップデートと鍵ペアの再生成を検討してください。発見された脆弱性の内容と、SSHでも使われる秘密鍵の役割について説明します。
今回の脆弱性は、PuTTY SSHクライアントのECDSA署名処理に脆弱性が存在するというものです。影響を受けるシステムは、PuTTY バージョン 0.68 から 0.80 までです。影響として、60個程度の署名データから、使用している秘密鍵を特定される可能性があるということです。
対策として、開発者が提供する情報をもとに、最新バージョンへのアップデートと鍵ペアの更新を検討してください。脆弱性の詳細は、本脆弱性に割り当てられたCVE番号「CVE-2024-31497」で検索してみてください。
まず、ECDSAは楕円曲線デジタル署名アルゴリズムとも訳される、デジタル署名に用いられるアルゴリズムの一つです。署名プロセスに楕円曲線を使用しており、オンラインバンキングやブロックチェーンなど、様々な分野で幅広く利用されています。
ECDSA署名の仕組みを簡単に説明すると、送信者はまず、ランダムな値を生成して、その値を送信者だけが知っている秘密鍵で署名を行います。受信者は、送信者の生成したデータを、誰でも知ることができる送信者の公開鍵で検証を行います。ペアとなる秘密鍵と公開鍵でのみ署名と検証を行うことができます。また、誰でも知ることができる公開鍵から、送信者だけが知っている秘密鍵を生成することは本来できません。
今回の脆弱性は、送信者が生成するランダムであるべき値に偏りがあるというものです。その結果、ごく少数の署名データから秘密鍵を特定されてしまう可能性があるということです。よって、ソフトウェアをアップデートして脆弱性を修正した場合も、過去に生成された秘密鍵によって作成された署名データを収集することにより、秘密鍵が生成できてしまう可能性があることになります。
秘密鍵は、公開鍵で暗号化されたデータを複合したり、データに署名をして本人が生成したデータであることを証明したりする役割を持っています。
まず、秘密鍵はその名の通り、自分だけが持っている大切な鍵です。データを守るために箱に入れることを暗号化、データを使うために箱から出すことを複合と考えてください。この鍵をなくしてしまうと、鍵をかけた箱を開けられなかったり、鍵を手に入れた別の人に箱を空けられてしまったりします。よって、データを適切に保護するためには、秘密鍵が大切であることがわかります。
また、箱からデータを取り出せることによって、本人だけが持っている秘密鍵があることの証明になります。逆に、秘密鍵を誰かに盗まれてしまうと、本人になりすまされてしまうことになります。今回の脆弱性では、第三者が秘密鍵を生成できてしまうことになりますので、その影響が大きいことについて、ご理解いただけるのではないでしょうか。
今日の10分セキュリティラジオにて毎週月・水・金にセキュリティの最新ニュースを取り上げ解説を行っています。隙間の時間の情報収集にぜひお役立てください!
お見積り・ご相談など、お気軽にご相談ください
サイトTOPへ