NetBSD Security Advisory 2003-007 ================================= トピック: OpenSSL のコードの暗号における (もうひとつの) 弱点 (Another) Encryption weakness in OpenSSL code バージョン: NetBSD-current: 2003 年 3 月 21 日より前のソース NetBSD-1.6.1: 影響なし NetBSD-1.6: 影響あり NetBSD-1.5.3: 影響あり NetBSD-1.5.2: 影響あり NetBSD-1.5.1: 影響あり NetBSD-1.5: 影響あり NetBSD-1.4*: 影響なし pkgsrc: openssl-0.9.6gnb2 より前のものは影響あり 影響範囲: 攻撃者がサーバーの秘密鍵を不正に利用して暗号処理を 行なうことができる。 (Attacker can perform crypto operations using server's private keys.) 修正日: NetBSD-current: 2003 年 3 月 21 日 NetBSD-1.6 ブランチ: 2003 年 3 月 21 日 NetBSD-1.5 ブランチ: 2003 年 3 月 21 日 pkgsrc: openssl-0.9.6gnb2 で修正 概要 - Abstract =============== 以下は bugtraq メーリングリストに投稿されたメールからの引用です。 チェコの暗号学者 Vlastimil Klima 氏、Ondrej Pokorny 氏、 Tomas Rosa 氏は、SSL 3.0 および TLS 1.0 で使われている PKCS #1 v1.5 パディング方式の RSA 暗号に有効な、 「Bleichenbacher 攻撃」を拡張した攻撃方法を考案しました。 この攻撃方法では、まずサーバーに対して数百万の SSL/TLS 接続を 同時に行なう必要があります。そしてその時に、特殊な細工を 施した RSA 暗号文に対するサーバーの動作を観察します。 その結果より、サーバーの RSA 鍵を使った暗号文に対して、 ひとつの RSA 秘密鍵操作を行なうことが可能になるような、 重要な情報を得ることが可能です。ただし、この攻撃でサーバーの RSA 鍵が脅威にさらされることはありません。 NetBSD には SSL/TLS を利用するデフォルトで有効になっているサービスは ありませんが、これらのライブラリを使って構築されたサービスを有効にすると、 システムが攻撃の脅威にさらされる可能性があります。 注: 2 日間のうちに、2 個の独立した OpenSSL セキュリティー勧告が 公開されています。この勧告で扱っている修正パッチは libssl に、 2003-005 で扱った修正パッチは libcrypto に影響するものです。 問題は 2 種類あり、それぞれの修正パッチは 異なる問題に対するものであるということに注意してください。 技術的な詳細 - Technical Details ================================ http://marc.theaimsgroup.com/?l=bugtraq&m=104811162730834&w=2 回避方法と解決策 - Solutions and Workarounds ============================================ 次に示す手順は、ソースツリーを更新して再構築し、新しいバージョンの libssl をインストールすることで、libssl バイナリーをアップグレード する方法を説明したものです。 アップグレード後には、実行中の libssl ライブラリーを使うプログラムを 再起動するのを忘れないようにしてください。 もし、弱点を持った libssl と静的にリンクされたバイナリーがある場合は、 それらを再構築する必要があります。 * NetBSD-current: 2003 年 2 月 21 日より前の NetBSD-current は、 2003 年 2 月 21 日、もしくはそれ以降の NetBSD-current に アップグレードする必要があります。 CVS ブランチ netbsd-current (別名 HEAD) において 更新が必要なファイルは、次のとおりです。 crypto/dist/openssl/ssl/s3_srvr.c CVS を使ってファイルを更新し、libssl を 再構築・再インストールするには、次のコマンドを実行してください。 # cd src # cvs update -d -P crypto/dist/openssl/ssl/s3_srvr.c # cd lib/libssl # make USETOOLS=no cleandir dependall # make USETOOLS=no install * NetBSD 1.6: NetBSD 1.6 のバイナリー配布物には、このセキュリティー上の弱点が 含まれています。 ソースを使った部分アップグレードを行なう場合は、 2003 年 3 月 21 日、もしくはそれ以降の NetBSD 1.6 ブランチの ソースを使う必要があります。 CVS ブランチ netbsd-1-6 において 更新が必要なファイルは、次のとおりです。 crypto/dist/openssl/ssl/s3_srvr.c CVS を使ってファイルを更新し、libssl を 再構築・再インストールするには、次のコマンドを実行してください。 # cd src # cvs update -d -P -r netbsd-1-6 \ crypto/dist/openssl/ssl/s3_srvr.c # cd lib/libssl # make USETOOLS=no cleandir dependall # make USETOOLS=no install * NetBSD 1.5, 1.5.1, 1.5.2, 1.5.3: NetBSD 1.5.3 のバイナリー配布物には、このセキュリティー上の弱点が 含まれています。 2003 年 3 月 20 日より前の NetBSD-1.5.x ブランチのソースを 使っているシステムは、2003 年 3 月 21 日、もしくはそれ以降の NetBSD-1.5 ブランチのソースにアップグレードする必要があります。 CVS ブランチ netbsd-1-5 において 更新が必要なファイルは、次のとおりです。 crypto/dist/openssl/ssl/s3_srvr.c CVS を使ってファイルを更新し、libssl を 再構築・再インストールするには、次のコマンドを実行してください。 # cd src # cvs update -d -P -r netbsd-1-5 \ crypto/dist/openssl/ssl/s3_srvr.c # cd lib/libssl # make cleandir dependall # make install * NetBSD 1.4, 1.4.1, 1.4.2, 1.4.3: NetBSD-1.4.* のベースシステムには、OpenSSL が含まれていません。 pkgsrc からインストールしている場合は、pkgsrc 用の手順に 従ってください。 * pkgsrc: セキュリティー上の弱点は、バージョン 0.9.6gnb2 より前の openssl (pkgsrc/security/openssl) に含まれています。 openssl-0.9.6gnb2 か、もしくはそれ以降のものにアップグレード してください。 openssl に依存するパッケージは、'pkg_info openssl' を実行することで 調べることができます。pkgsrc パッケージを更新する方法にもよりますが、 それで表示されるパッケージのいくつかは、パッケージシステムによって 再構築されるかも知れません。試験的に用意されている 'make replace' ターゲットを使って更新する場合は、libssl.a と静的リンクされた バイナリーを構築するすべてのパッケージを手動で更新する必要があります。 pkgsrc に静的にリンクされたバイナリーがある場合は、再構築しなければ なりません。静的リンクされたバイナリーは、次のコマンドを使って 調べることができます (注: もし LOCALBASE をデフォルトの /usr/pkg から 変更している場合は、pkgsrc バイナリーをインストールしたディレクトリーを 指定に含めるのを忘れないでください)。 file /usr/pkg/{bin,sbin,libexec}/* | grep static 謝辞 - Thanks To ================ Bugtraq および OpenSSL チーム。 改訂履歴 - Revision History =========================== 2003-03-26 初版公開 詳細と参考資料 - More Information ================================= PGP 署名されたこの勧告の最新版は、次の場所から入手できます。 ftp://ftp.netbsd.org/pub/NetBSD/security/advisories/NetBSD-SA2003-007.txt.asc NetBSD および、NetBSD のセキュリティーに関する情報は、次の場所から入手できます。 http://www.NetBSD.ORG/ http://www.NetBSD.ORG/Security/ Copyright 2003, The NetBSD Foundation, Inc. All Rights Reserved. $NetBSD: NetBSD-SA2003-007.txt.asc,v 1.3 2003/03/29 03:49:08 yyamano Exp $ $Id: NetBSD-SA2003-007.txt.asc,v 1.3 2003/03/29 03:49:08 yyamano Exp $