Skip to content

Security Advisory krb5のバグ修正とセキュリティアップデート

アップデートID:

RHSA-2008:0164-6

タイプ:Security Advisory
重大性:重大/Critical
発行日:2008年3月18日
最終更新日:2008年3月18日
影響のある製品: RHEL Desktop Workstation (v. 5 client)
Red Hat Enterprise Linux (v. 5 server)
Red Hat Enterprise Linux Desktop (v. 5 client)
OVAL: https://rhn.redhat.com/errata/RHSA-2008-0164.html
CVEs (cve.mitre.org): CVE-2007-5901
CVE-2007-5971
CVE-2008-0062
CVE-2008-0063
CVE-2008-0947


詳細

複数のセキュリティの問題とバグを修正したkrb5のアップデートパッケージがRed Hat Enterprise Linux 5で利用可能になりました。

このアップデートは、レッドハットセキュリティ対策チームによって、深刻度「重大(Critical)」のセキュリティ問題と評価されています。

Kerberosは、対称鍵暗号(symmetric encryption)とトラステッドサードパーティ(鍵配布センター/KDC)を使用して、クライアントとサーバの相互認証を可能にするネット ワーク認証システムです。

MIT Kerberos Authentication ServiceとKey Distribution Centerサーバ(krb5kdc) の間でKerberos v4プロトコルのパケットを処理する過程において1つの問題が発見されました。認証を受けていないリモート・アタッカーがこの問題を悪用し、改変または不完全なKerberos v4プロトコル・リクエストを使ってkrb5kdcデーモンのクラッシュやそのメモ リに含まれる情報の開示、任意のコードを実行できてしまいます。 (CVE-2008-0062, CVE-2008-0063)

これはKerberos v4プロトコルの互換性を有効にしたkrb5kdcでのみ発生する問題ですが、Red Hat Enterprise Linux 4ではこれがデフォルトで有効になっています。Kerberos v4プロトコルのサポートは /var/kerberos/krb5kdc/kdc.conf の[kdcdefaults]セクションに v4_mode=none と追加することで無効にできます。

MIT Kerberos kadmindサーバが利用しているRPCライブラリの中に1つの問題があることをSecure EndpointsのJeff Altman氏が発見しました。認証を受けていないリモート・ア タッカーがこの問題を悪用し、kadmindをクラッシュやさせたり任意のコードを実行できてしまいます。 特定のリソース制限を設けて構成されたシステムのみ、この問題の影響を受けます。Red Hat Enterprise Linux 5のデフォルトのリソース制限では影響を受けません。 (CVE-2008-0947)

レッドハットは、この問題の報告についてMITに感謝します。

MIT Kerberosが利用しているGSSAPIライブラリのメモリ管理において複数の問題が発見されました。すでに開放されているメモリを利用したり、すでに開放されているメモリブロックを再度開放しようとすることで(double-freeの問題)、クラッシュの誘発や任意のコードの実行を許してしまうものです。 (CVE-2007-5901, CVE-2007-5971)


上記のセキュリティ問題の解決のほかに、以下のバグが修正されています。

* GSSAPIの認証方法としてSPNEGOを利用していた場合、委任されたkrb5の証明書が適切にストアされない問題がありました。その結果、証明書をキャッシュに格納しようとしたアプリケーションは "Invalid credential was supplied" というエラーメッセージを受けていました。このアップデートではSPNEGO証明書が適切に検索されるように修正され、アプリケーションは意図している証明書をコピーできるようになりました。

* アプリケーションは証明書の委任を示すret_flags値を渡すことなく gss_accept_sec_context() を利用してセキュリティコンテクストを確立できるようになりました。この ような際には委任された証明書ハンドルが返されるべきでした。このアップデートパッケージでは gss_accept_sec_context() を呼び出したアプリケーションによって他の ret_flags 値が渡されていない場合に証明書のステータスをストアする temp_ret_flag が追加されました。

* 特定のエラーをTCPが受けた場合や、パケットがUDPに対して大きすぎた場合に kpasswd がフォールバックできませんでした。このアップデートではこの問題が修正されてい ます。

* libkrb5のパスワードルーチンが set-password や change-password リクエストを生成した際、最初のリクエストに続く全てのリクエストで正しくないシーケンスナンバーが生成されていました。プライマリサーバが利用できない場合、この問題が原因でパスワード変更のリクエストに失敗していました。このアップデートパッケージではシーケンス ナンバー値をAP-REQが生成された後で保存し、この値をリクエストが生成される前に再度ストアすることで、この問題を解決しています。

* ユーザのパスワードの有効期限が切れた場合、kinitはユーザに対して単にパスワードの有効期限が切れた旨だけを伝えるだけで、パスワードの変更を促すことができません でした。このアップデートではこの問題が修正され、有効期限が切れている場合はkinitがユーザにパスワードの変更を促すようになっています。

全てのkrb5のユーザは、これらの脆弱性に対応したバックポートフィックスとバグを修正する上記アップデートパッケージにアップグレードしてください。


解決法

このアップデートを適用する前に、ご使用のシステムに関係するリリース済みのエラータ/Errataがすべて適用されていることを確認してください。


解決法


このアップデートを適用する前に、ご使用のシステムに関係するリリース済みのエラータ/Errataがすべて適用されていることを確認してください。

このアップデートは、Red Hat Networkを通じて入手できます。


アップデートパッケージ

RHEL Desktop Workstation (v. 5 client)

IA-32:
krb5-devel-1.6.1-17.el5_1.1.i386.rpm     06d1a15f52b65d010b1d5df16356cf62
krb5-server-1.6.1-17.el5_1.1.i386.rpm     b25e989385676a14da9bc41f3ac5344f
 
x86_64:
krb5-devel-1.6.1-17.el5_1.1.i386.rpm     06d1a15f52b65d010b1d5df16356cf62
krb5-devel-1.6.1-17.el5_1.1.x86_64.rpm     add8f21846a5d9d9fbf72dd97368c7dd
krb5-server-1.6.1-17.el5_1.1.x86_64.rpm     5670db4220297710f9ed4b6066ad180c
 
Red Hat Enterprise Linux (v. 5 server)

SRPMS:
krb5-1.6.1-17.el5_1.1.src.rpm     b3395b8693a926c96799566c553daba6
 
IA-32:
krb5-devel-1.6.1-17.el5_1.1.i386.rpm     06d1a15f52b65d010b1d5df16356cf62
krb5-libs-1.6.1-17.el5_1.1.i386.rpm     846ed51a3fa616cf6dc96961e58e6896
krb5-server-1.6.1-17.el5_1.1.i386.rpm     b25e989385676a14da9bc41f3ac5344f
krb5-workstation-1.6.1-17.el5_1.1.i386.rpm     686f00c9a0a6d2403ad704e61015c38a
 
IA-64:
krb5-devel-1.6.1-17.el5_1.1.ia64.rpm     d36e33210e0e7ff638ab4e98e9be5b42
krb5-libs-1.6.1-17.el5_1.1.i386.rpm     846ed51a3fa616cf6dc96961e58e6896
krb5-libs-1.6.1-17.el5_1.1.ia64.rpm     01d08c1eb88da1925892ff309880e35c
krb5-server-1.6.1-17.el5_1.1.ia64.rpm     fd515faca151993fa3b0e2e41bd4313c
krb5-workstation-1.6.1-17.el5_1.1.ia64.rpm     84d33b6d43b7f9d4513d2cf9ad266d54
 
PPC:
krb5-devel-1.6.1-17.el5_1.1.ppc.rpm     a5fc62a1371a51deab7ff7ae8d8b7d90
krb5-devel-1.6.1-17.el5_1.1.ppc64.rpm     deff82b49fc8b53ce761dd8c204df037
krb5-libs-1.6.1-17.el5_1.1.ppc.rpm     bcb466e8d262e4df87cd361c455cc2d4
krb5-libs-1.6.1-17.el5_1.1.ppc64.rpm     20c0c807fc1e930a880fd2d0ec458653
krb5-server-1.6.1-17.el5_1.1.ppc.rpm     9e338e1f55b78fe68382595454ad94c2
krb5-workstation-1.6.1-17.el5_1.1.ppc.rpm     6b88fd5615518a6c7673cddd7e5c1f59
 
s390x:
krb5-devel-1.6.1-17.el5_1.1.s390.rpm     772905b231f10388daf26b0ca18ae70b
krb5-devel-1.6.1-17.el5_1.1.s390x.rpm     f7547d56873b57c7b1a731836c967786
krb5-libs-1.6.1-17.el5_1.1.s390.rpm     6949011f74e3c640345f635e73fea558
krb5-libs-1.6.1-17.el5_1.1.s390x.rpm     7b6ed830d64aae3e84674c66c69ccfdf
krb5-server-1.6.1-17.el5_1.1.s390x.rpm     0bcd1fb0eca4d92710f8012ea9628602
krb5-workstation-1.6.1-17.el5_1.1.s390x.rpm     62e8d02a357e1d11d20a44a3bf141922
 
x86_64:
krb5-devel-1.6.1-17.el5_1.1.i386.rpm     06d1a15f52b65d010b1d5df16356cf62
krb5-devel-1.6.1-17.el5_1.1.x86_64.rpm     add8f21846a5d9d9fbf72dd97368c7dd
krb5-libs-1.6.1-17.el5_1.1.i386.rpm     846ed51a3fa616cf6dc96961e58e6896
krb5-libs-1.6.1-17.el5_1.1.x86_64.rpm     a01f5477a76a1ccfa03e49305a50e21a
krb5-server-1.6.1-17.el5_1.1.x86_64.rpm     5670db4220297710f9ed4b6066ad180c
krb5-workstation-1.6.1-17.el5_1.1.x86_64.rpm     b4308068766c540b8cf54f31802ed2b7
 
Red Hat Enterprise Linux Desktop (v. 5 client)

SRPMS:
krb5-1.6.1-17.el5_1.1.src.rpm     b3395b8693a926c96799566c553daba6
 
IA-32:
krb5-libs-1.6.1-17.el5_1.1.i386.rpm     846ed51a3fa616cf6dc96961e58e6896
krb5-workstation-1.6.1-17.el5_1.1.i386.rpm     686f00c9a0a6d2403ad704e61015c38a
 
x86_64:
krb5-libs-1.6.1-17.el5_1.1.i386.rpm     846ed51a3fa616cf6dc96961e58e6896
krb5-libs-1.6.1-17.el5_1.1.x86_64.rpm     a01f5477a76a1ccfa03e49305a50e21a
krb5-workstation-1.6.1-17.el5_1.1.x86_64.rpm     b4308068766c540b8cf54f31802ed2b7
 
(The unlinked packages above are only available from the Red Hat Network)


バグフィックス (詳細は、bugzilla/バグジラ[英語]を御覧ください。)

415321 - CVE-2007-5901 krb5: use-after-free in gssapi lib
415351 - CVE-2007-5971 krb5: double free in gssapi lib
432620 - CVE-2008-0062 krb5: uninitialized pointer use in krb5kdc
432621 - CVE-2008-0063 krb5: possible leak of sensitive data from krb5kdc using krb4 request
433596 - CVE-2008-0947 krb5: file descriptor array overflow in RPC library
436460 - gss_krb5_copy_ccache can't find delegated Kerberos creds when using SPNEGO
436465 - gss_init_sec_context() mechglue wrapper doesn't handle ret_flags right
436467 - kpasswd does not fallback to tcp
436468 - krb5 password changing uses incorrect sequence numbers for every server but the first
436470 - kinit does not automatically start a password change when password is expired


参照





ここに在るパッケージはセキュリティの為、Red Hat, Inc. によって、GPG認証されています。
認証キー及び詳細は以下を御覧下さい。
https://www.redhat.com/security/team/key/#package

The Red Hat security contact is secalert@redhat.com. More contact details at http://www.redhat.com/security/team/contact/