ブログ | NGINX

NGINX と 2014 年 6 月 5 日の OpenSSL セキュリティ アドバイザリ

オーウェン・ギャレット サムネイル
オーウェン・ギャレット
2014 年 6 月 5 日公開

CVE‑2014‑0224 および関連する OpenSSL の脆弱性が NGINX に与える影響は何ですか?

OpenSSL プロジェクトは、2014 年 6 月 5 日に 7 つのセキュリティ脆弱性の修正を発表しました。 詳細については、セキュリティ アドバイザリに記載されています。

この脆弱性は、OpenSSL を使用して SSL/TLS トラフィックを終了するすべてのサーバー アプリケーション (NGINX および NGINX Plus を含む) に影響を及ぼす可能性があります。 これらを悪用すると、中間者 (MitM) 攻撃やさまざまなサービス拒否 (DoS) 攻撃、データ破損の問題が発生する可能性があります。

  • SSL/TLS MITM 脆弱性 (CVE‑2014‑0224)
  • DTLS 再帰の欠陥 (CVE‑2014‑0221)
  • DTLS 無効フラグメント脆弱性 (CVE‑2014‑0195)
  • SSL_MODE_RELEASE_BUFFERS NULL ポインタ参照 (CVE‑2014‑0198)
  • SSL_MODE_RELEASE_BUFFERS セッションインジェクションまたはサービス拒否 (CVE‑2010‑5298)
  • 匿名 ECDH サービス拒否 (CVE‑2014‑3470)
  • 「その他の問題」(CVE‑2014‑0076)

OpenSSL プロジェクトからの推奨事項は次のとおりです。

OpenSSL 0.9.8 SSL/TLS users should upgrade to 0.9.8za.OpenSSL 1.0.0 SSL/TLS users should upgrade to 1.0.0m.
OpenSSL 1.0.1 SSL/TLS users should upgrade to 1.0.1h.

NGINX インストールでは、OS ベンダーの OpenSSL インスタンスを使用していますか?

NGINX, Inc. によって提供されるNGINX および NGINX Plus ビルド (Windows 用を除く) またはサードパーティのリポジトリを通じて提供される NGINX および NGINX Plus ビルドは、通常、オペレーティング システムのlibssl.soインスタンスに動的にリンクされます。 lddコマンドを実行してlibssl.soファイルへの完全なパスを確認し、 stringsコマンドを実行して関連するバージョン番号 (この場合は 1.0.1f) を表示します。

$ ldd `which nginx` | grep ssllibssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f82e62bf000)

$ strings /lib/x86_64-linux-gnu/libssl.so.1.0.0 | grep "^OpenSSL "
OpenSSL 1.0.1f 6 Jan 2014

システム上の出力は多少異なる場合があります。 openssl versionを実行することもできますが、サーバー上に OpenSSL のインスタンスが複数ある場合は出力が信頼できない可能性があります。

実行中の以前のバージョンが影響を受けないと報告されている場合でも、オペレーティング システム ベンダーが提供する最新の OpenSSL ライブラリにアップグレードすることを強くお勧めします。 次に、更新されたライブラリを使用するために、NGINX ソフトウェアを再起動します。 正しいアップグレード プロセスを決定するには、CVE-2014-0224 に対するベンダーの対応を確認してください。 便宜上、 DebianRed HatUbuntuへのリンクをここに示します。

一部の Linux オペレーティング システム ベンダーは、小さな更新を迅速に提供するために、CVE‑2014‑0224 および関連する脆弱性の修正のみをパッケージに含めることを選択しており、以前の OpenSSL バージョン番号が付いた修正パッケージをリリースしていることに注意してください。

NGINX インストールでは、静的にリンクされた OpenSSL インスタンスを使用していますか?

NGINX を自分でコンパイルした場合、OpenSSL ライブラリが静的にリンクされている可能性があります。 この場合、 lddからの出力では、オペレーティング システムのlibssl.soライブラリへの依存関係は明らかにされません。 nginx ‑Vを実行して、使用したコンパイル時のオプションを表示します。

$ ./objs/nginx -V
nginx version: nginx/1.7.1

built by gcc 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)

configure arguments: --with-cc-opt=-I../openssl-1.0.1f/include 
  --with-ld-opt='-L../openssl-1.0.1f -Wl,-Bstatic -lssl -lcrypto -Wl,-Bdynamic -ldl' 
  --with-openssl=../openssl-1.0.1f

脆弱なバージョンの OpenSSL を使用している場合は、修正されたバージョンを使用して NGINX を再コンパイルする必要があります。

NGINX Windows バイナリを使用していますか?

NGINX によって配布されるNGINX for Windows は、OpenSSL と静的にリンクされています。 現在利用可能な 1.7.1 および 1.6.0 のビルドは、OpenSSL の修正とともに更新されています。


「このブログ投稿には、入手できなくなった製品やサポートされなくなった製品が参照されている場合があります。 利用可能な F5 NGINX 製品およびソリューションに関する最新情報については、 NGINX 製品ファミリーをご覧ください。 NGINX は現在 F5 の一部です。 q。"