https://qiita.com/SnykSec/items/131024996d4e20f208b7?utm_campaign=popular_items&utm_medium=feed&utm_source=popular_items

本記事は2022年10月31日に公開した英語ブログNew OpenSSL critical vulnerability: What you need to knowを日本語化した内容です。

2022年10月25日、OpenSSL プロジェクトは、重大なセキュリティ脆弱性に対処するために、 OpenSSL (バージョン 3.0.7) を近日中にリリースすることを発表しました。 このリリースは、2022 年 11 月 1 日の 13:00-17:00 UTC の間に公開されるはずです。Snyk は現時点で既知の情報を記載したプレースホルダーアドバイザリーを公開しており、脆弱性の詳細が正式に公表されたタイミングでこのアドバイザリーを更新する予定です。

OpenSSL におけるもっとも直近の重大な脆弱性は、2016 年に発表されました。 当社のセキュリティチームは詳細が判明し次第、今回の脆弱性を Snyk 脆弱性データベースに追加します。

この脆弱性について

OpenSSL プロジェクトは、この脆弱性を重大 (Critical) としましたが、3.0より前のバージョンの OpenSSL には影響を与えないとしています。つまり、3.0 未満のバージョンの OpenSSL を使用している場合は、今のところ影響を受けないはずです。

OpenSSL プロジェクトのセキュリティポリシーは、OpenSSL プロジェクトが重大な脆弱性と考えるものを次のとおり示しています。

これ (重大な脆弱性) はよく使われる設定に影響し、また悪用される可能性があるものです。例えば、サーバーのメモリの内容の著しい漏洩 (ユーザー情報が漏洩する可能性)、リモートからの容易な攻撃によりサーバー秘密鍵の漏洩や、またはよくある状況でリモートコード実行 (RCE) を可能とする脆弱性などです。これらの問題は非公開とされ、サポート対象の全バージョンへ新しいリリースを提供することになります。私たちは、できるだけ早くこれらの問題に対処するよう努めます。

要するに、OpenSSL 3.0 またはそれ以上を使用している場合、将来のセキュリティ事故を未然を防ぐために、2022年11月1日 (火) にリリース予定の 3.0.7 に直ちにアップグレードする準備をしておいてください。

現在、脆弱性のあるバージョンの OpenSSL (3.0 以上) は、Ubuntu 22.04 LTS、Fedora 36 などの Linux OS や MacOS Ventura で使用されています。しかし、Debian などの Linux ディストリビューションでは、OpenSSL 3.x はまだテスト版とみなされる最新のリリースにしか含まれていないため、実稼働システムでの普及は限定的である可能性があります。また、影響を受けるバージョンの Linux を使用して構築されたコンテナイメージも影響を受けます。ただし、多くの Docker 公式イメージは Debian Bullseye (11) と Alpine を使用しています。これらのディストリビューションはまだ OpenSSL 1.x を使用しているので、影響を受けないことは特筆すべきことです。ウェブトラフィックの処理に人気のある nginx や httpd などのプロジェクトの Docker 公式コンテナイメージも Bullseye と Alpine を使用しており、影響はありません。

Node.js 18.x および 19.x もデフォルトで OpenSSL3 を使用しているため、数日中に Node.js でのアップグレードが行われると予想されます。

最後に、もしあなたの開発者が C/C++ を使用している場合、それらのコードにOpenSSL v3 パッケージが組み込まれている可能性があります。そして、このコードに関連する OpenSSL のパッケージがあるかどうかを確認する必要があります。

影響の有無を確認する方法

Snyk の Business または Enterprise プランをご利用の場合、OpenSSL の脆弱なバージョン (3.0.x) を含むすべてのプロジェクトを検索することができます。Reports に進み、Dependencies の検索ボックスで、"openssl" を入力し、3.0.x バージョンを含むプロジェクトを検索します。Projects のリンクから、関連するプロジェクトに移動できます。必要であれば、データをCSVファイルにエクスポートすることもできます。

Snyk API にアクセスできるお客様 (Business および Enterprise プラン) は、API を使用してこのデータを抽出することもできます。たとえば、Snyk Labs チームが提供する snyk-deps-to-csv というユーティリティを使用すると、依存先パッケージを CSV に抽出することができます。また、dependencies API にアクセスすることもできます。

無料アカウントのユーザーを含む Snyk ユーザーなら誰でも、Snyk ダッシュボードにアクセスしてプロジェクトを選択し、Dependencies タブをクリックして "openssl" を検索すれば、OpenSSL の脆弱なバージョンをスキャンすることが可能です。ここでも、OpenSSL 3.0.x バージョンが影響を受けることになります。