(こちらは CircleCI Images & OpenSSL CVE-2022-3602, CVE-2022-3786 の参考訳です)
いつも CircleCI をご利用いただきありがとうございます。
この記事では、「high」とされている OpenSSL の CVE と、それらが CircleCI で使用するイメージにどのような影響を与えるかについて説明します。
この記事は、新しい情報が入り次第、随時更新されます。
概要
OpenSSL のバージョン v3.0.0 - 3.0.6 が対象となります。 OpenSSL v3.0.7 には、この 2つの CVE に対する修正が含まれています。
注: 下記の表は随時更新されます。最新の情報については 英語版 を参照して下さい。
イメージファミリー | 対象イメージ | Executor | 影響 | パッチステータス |
---|---|---|---|---|
Android VM | Android | machine | なし | 非該当 |
cimg/aws | 2022.10.1 以前 | docker | あり | 作業中 |
cimg/azure | 2022.10.1 以前 | docker | あり | 作業中 |
cimg/base | 2022.10, current | docker | あり | 完了: 2022.11, current |
cimg/deploy | 2022.10.1 以前 | docker | あり | 完了: 2022.11.1 |
cimg/gcp | 2022.10.1 以前 | docker | あり | 作業中 |
cimg/go | 過去 30 日分 | docker | あり | 完了 |
cimg/node | 過去 30 日分 | docker | あり | 完了 |
cimg/openjdk | 過去 30 日分 | docker | あり | 完了 |
cimg/php | 過去 30 日分 | docker | あり | 完了 |
cimg/python | 過去 30 日分 | docker | あり | 完了 |
cimg/* | 上記以外 | docker | なし | 非該当 |
CUDA Linux VM | すべて | machine | なし | 非該当 |
Ubuntu Linux VM | Ubuntu 20.04 | machine | なし | 非該当 |
Ubuntu Linux VM | Ubuntu 22.04 | machine | あり | 完了: 2022.10.2 |
Windows VM | Server 2019 | machine | なし | 非該当 |
Windows VM | Server 2022 | machine | なし | 非該当 |
Xcode VM | 13.1.0 以降 | macos | なし | 非該当 |
Linux イメージ
脆弱性のあるイメージ
CircleCI の Ubuntu 22.04 イメージ、またはそれをベースにしたすべてのイメージが対象となります。 これには、Ubuntu 22.04 VM イメージと、過去約 30 日間に公開された CircleCI イメージ (Docker) が含まれます。 CircleCI では、これらのすべてのイメージにパッチを適用します。 上記の表で、進捗状況をご確認ください。
お客様のバージョンが脆弱性に該当するかどうかを確認する方法
openssl version
コマンドを実行してバージョンを確認することは、とりわけ Ubuntu の場合は最適な方法ではありません。これは、セキュリティ修正を行なった openssl の新バージョンがリリースされるのではなく、v3.0.2 に対して修正内容がバックポートされるためです。 代わりに、以下のコマンドを実行し、OpenSSL のパッケージバージョンを確認することができます (スペースは故意に入れています)。
dpkg -l | grep " openssl "
Ubuntu 22.04 では、openssl のバージョン 3.0.2-0ubuntu1.7
以降のパッケージに対してパッチが適用されます。なお、今回の脆弱性の影響を受けない、古いバージョンの Ubuntu では、1.1.1
を含むバージョンの openssl が使用されています。
手動でアップデートする方法
パッチを当てたイメージの公開を待てない場合や他の理由により、OpenSSL のバージョンをご自身でアップデートする場合、できれば CircleCI ジョブのできるだけ先頭に近いステップで以下の例のようにします。
steps:
- run: sudo apt-get update && sudo apt-get install -y openssl
macOS
13.1.0 以降の Xcode イメージには、影響を受けるバージョンの OpenSSL 3.x が brew
を介してインストールされていました。 しかし、このバージョンはデフォルトとして設定されていませんでした。 OpenSSL v3 は、インストールされている他のパッケージへの依存関係ではなかったので、現行の Xcode イメージから OpenSSL v3 を削除しました。
OpenSSL v3 がお客様の作業においてどうしても必要な場合は、再インストールすることができます。その場合、CircleCI ジョブのできるだけ先頭に近いステップで、次のようにします。
steps:
- run: brew install openssl@3
Windows
CircleCI の Windows イメージは、これらの CVE の影響を受けません。
関連資料
- これらの CVE に関する OpenSSL プロジェクトの投稿(英語): /news/vulnerabilities.html
- Ubuntu の OpenSSL バージョン : openssl package : Ubuntu
- Docker のブログ記事(英語): Security Advisory : Security Advisory: High Severity OpenSSL Vulnerabilities - Docker
- 日本語の参考資料: OpenSSLのNID_undefを使用したカスタム暗号におけるNULL暗号化の脆弱性