OpenSSLの脆弱性情報(High: CVE-2020-1971)

こんにちは。SIOS OSSエバンジェリスト/セキュリティ担当の面 和毅です。

12/09/2020に予告どおりOpenSSLの脆弱性情報(High: CVE-2020-1971)が公開されています。今回はこの脆弱性の概要と、各ディストリビューションの対応について簡単にまとめてみます。




Priority

\n

CVE番号影響するバージョンPriorityCVSS Score / CVSS Vector
CVE-2020-1971全てのバージョンの1.0.2, 1.1.1

Vendor: High

Red Hat: 5.9 Important

Red Hat: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H

修正方法

各ディストリビューションの情報を確認してください。

CVE概要(詳細はCVEのサイトをご確認ください)

  • http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-1971
    • EDIPARTYNAME NULLポインタ被参照によるDoSの可能性
    • 重要度 – High
    • 対象 – OpenSSL 1.1.1, 1.0.2の全てのバージョン
    • X.509のGeneralNameタイプは異なる名前タイプを表すための一般的なタイプです。名前タイプとしてEDIPartyNameがあります。OpenSSLはGENERAL_NAME_cmp()関数を異なるインスタンスのGENERAL_NAMEと等しいか否かを判定するために使用しています。この関数は両方のGENERAL_NAMEがEDIPARTYNAMEを含んでいる場合にきちんと動作していませんでした。NULLポインタ被参照とクラッシュが発生し、DoSの原因となります。

      OpenSSLはGENERAL_NAME_cmp関数を2つの処理で使用しています。

      1. X509証明書に含まれているCRLの配布されたポイントと有効なCRLの配布ポイント名の比較
      2. タイムスタンプのレスポンスを検証する際にタイムスタンプの応答がマッチしているか(APIとしてはTS_RESP_verify_responseとTS_RESP_verify_token)

      攻撃者がこれら2つを制御できる場合には、攻撃者はクラッシュを誘発することが出来ます。例えば、攻撃者が悪意のあるCRLを検証するようにしてクライアントやサーバを攻撃することです。幾つかのアプリケーションは自動的にCRLを証明書に含まれているURLからダウンロードします。この際に証明書のサインとCRLがマッチするかを確認します。OpenSSLのs_server, s_clientと確認するためのツールは”-crl_download”オプションを自動的にCRLをダウンロードする際に検証するため、この攻撃はその種のツールに有効です。

    • この問題は全てのバージョンのOpenSSL 1.1.1, 1.0.2に影響します。

主なディストリビューションの対応方法

詳細は、各ディストリビューションの提供元にご確認ください


対処方法

各ディストリビューションの案内に従い、アップデートを行ってください。全てのRed Hat製品でパッチが行き渡っているかを確認するには、Red Hat SatelliteKatello、Spacewalk等を使うと管理が便利でしょう。

また、サービスの再起動が発生する場合には、peacemakerなどOSSのクラスタ製品やLifeKeeperなどの商用のクラスタリング製品を使うとサービス断の時間を最小限にすることが出来ます。


セキュリティ系連載案内


ka-omo@

タイトルとURLをコピーしました