Network Working Group V. Torvinen Request for Comments: 4169 Turku Polytechnic Category: Informational J. Arkko M. Naslund Ericsson November 2005
Hypertext Transfer Protocol (HTTP) Digest Authentication Using Authentication and Key Agreement (AKA) Version-2
Status of This Memo
このメモのステータス
This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited.
このメモはインターネットコミュニティのための情報を提供します。それはどんな種類のインターネット標準を指定しません。このメモの配布は無制限です。
Copyright Notice
著作権表示
Copyright (C) The Internet Society (2005).
著作権(C)インターネット協会(2005)。
Abstract
抽象
HTTP Digest, as specified in RFC 2617, is known to be vulnerable to man-in-the-middle attacks if the client fails to authenticate the server in TLS, or if the same passwords are used for authentication in some other context without TLS. This is a general problem that exists not just with HTTP Digest, but also with other IETF protocols that use tunneled authentication. This document specifies version 2 of the HTTP Digest AKA algorithm (RFC 3310). This algorithm can be implemented in a way that it is resistant to the man-in-the-middle attack.
HTTPダイジェストは、RFC 2617で指定され、クライアントがTLSでサーバーを認証に失敗した場合、または同じパスワードはTLSせずに他のいくつかの文脈での認証に使用されている場合はman-in-the-middle攻撃に対して脆弱であることが知られています。これは、HTTPダイジェストではなく、トンネルされた認証を使用する他のIETFプロトコルではないだけに存在する一般的な問題です。このドキュメントでは、HTTPダイジェストAKAアルゴリズム(RFC 3310)のバージョン2を指定します。このアルゴリズムは、それがman-in-the-middle攻撃に耐性のある方法で実装することができます。
Table of Contents
目次
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . 4 2. HTTP Digest AKAv2 . . . . . . . . . . . . . . . . . . . . . . 5 2.1. Password generation . . . . . . . . . . . . . . . . . . 6 2.2. Session keys . . . . . . . . . . . . . . . . . . . . . . 6 3. Example Digest AKAv2 Operation . . . . . . . . . . . . . . . . 7 4. Security Considerations . . . . . . . . . . . . . . . . . . . 7 4.1. Multiple Authentication Schemes and Algorithms . . . . . 7 4.2. Session Protection . . . . . . . . . . . . . . . . . . . 7 4.3. Man-in-the-middle attacks . . . . . . . . . . . . . . . 8 4.4. Entropy . . . . . . . . . . . . . . . . . . . . . . . . 9 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 5.1. Registration Information . . . . . . . . . . . . . . . . 10 6. References . . . . . . . . . . . . . . . . . . . . . . . . . . 11 6.1. Normative References . . . . . . . . . . . . . . . . . . 11 6.2. Informative References . . . . . . . . . . . . . . . . . 11
The Hypertext Transfer Protocol (HTTP) Digest Authentication, described in [4], has been extended in [6] to support the Authentication and Key Agreement (AKA) mechanism [7]. The AKA mechanism performs authentication and session key agreement in Universal Mobile Telecommunications System (UMTS) networks. HTTP Digest AKA enables the usage of AKA as a one-time password generation mechanism for Digest authentication.
〔4〕に記載のハイパーテキスト転送プロトコル(HTTP)ダイジェスト認証は、[7] [6]認証および鍵合意(AKA)メカニズムをサポートするように拡張されています。 AKA機構は、ユニバーサル・モバイル・テレコミュニケーション・システム(UMTS)ネットワークにおける認証およびセッション鍵の合意を行います。 HTTPダイジェストAKAは、ダイジェスト認証用ワンタイムパスワード生成メカニズムとして、AKAの使用を可能にします。
HTTP Digest is known to be vulnerable to man-in-the-middle attacks, even when run inside TLS, if the same HTTP Digest authentication credentials are used in some other context without TLS. The attacker may initiate a TLS session with a server, and when the server challenges the attacker with HTTP Digest, the attacker masquerades the server to the victim. If the victim responds to the challenge, the attacker is able to use this response towards the server in HTTP Digest. Note that this attack is an instance of a general attack that affects a number of IETF protocols, such as PIC. The general problem is discussed in [8] and [9].
HTTPダイジェストが同じHTTPダイジェスト認証の資格情報は、TLSなしで他のいくつかのコンテキストで使用されている場合は、TLS内で実行しても、man-in-the-middle攻撃に対して脆弱であることが知られています。攻撃者は、サーバーとのTLSセッションを開始することができ、およびサーバはHTTPダイジェストと、攻撃者に挑戦する場合、攻撃者が被害者にサーバを装って。被害者がチャレンジに応答した場合、攻撃者は、HTTPダイジェストでサーバに向けて、この応答を使用することができます。この攻撃は、PICのようなIETFプロトコルの数に影響を与える一般的な攻撃のインスタンスであることに留意されたいです。一般的な問題は、議論されている[8]、[9]。
Because of the vulnerability described above, the use of HTTP Digest "AKAv1" should be limited to the situations in which the client is able to demonstrate that, in addition to the AKA response, it possesses the AKA session keys. This is possible, for example, if the underlying security protocol uses the AKA-generated session keys to protect the authentication response. This is the case, for example, in the 3GPP IP Multimedia Core Network Subsystem (IMS), where HTTP Digest "AKAv1" is currently applied. However, HTTP Digest
そのため、上記の脆弱性、HTTPダイジェスト「AKAv1」の使用は、クライアントがAKA応答に加えて、それはAKAセッション鍵を所有している、ということを証明することができている状況に限定されなければなりません。基本的なセキュリティプロトコルは、認証応答を保護するためにAKA-生成されたセッションキーを使用する場合、これは、例えば、可能です。これは、例えば、HTTPダイジェスト「AKAv1」が現在適用されている3GPP IPマルチメディア・コア・ネットワーク・サブシステム(IMS)場合です。しかし、HTTPダイジェスト
"AKAv1" should not be used with tunnelled security protocols that do not utilize the AKA session keys. For example, the use of HTTP Digest "AKAv1" is not necessarily secure with TLS if the server side is authenticated using certificates and the client side is authenticated using HTTP Digest AKA.
「AKAv1は、」AKAセッション鍵を利用しないトンネリングされたセキュリティプロトコルで使用すべきではありません。サーバ側は証明書を使用して認証され、クライアント側は、HTTPダイジェストAKAを使用して認証されている場合たとえば、HTTPダイジェスト「AKAv1」の使用は、必ずしもTLSで固定されていません。
There are at least four potential solutions to the problem:
問題の少なくとも4つの潜在的な解決策があります。
1. The use of the authentication credentials is limited to one application only. In general, this approach is good and can be recommended from the security point of view. However, this will increase the total number of authentication credentials for an end-user, and may cause scalability problems in the server side.
1.認証資格情報を使用することは、一つだけのアプリケーションに制限されています。一般的に、このアプローチは良好であり、セキュリティの観点から推奨することができます。しかし、これは、エンドユーザーの認証資格情報の総数を増加し、サーバ側でのスケーラビリティの問題が発生することがあります。
2. The keys used in the underlying security protocols are somehow bound to the keys used in the tunneled authentication protocol. However, this would cause problems with the current implementations of underlying security protocols. For example, it is not possible to use the session keys from TLS at the application layer. Furthermore, this solution would only solve the problem when HTTP Digest is used over one hop, and would leave the problem of using HTTP Digest via multiple hops (e.g., via proxy servers) unsolved.
2.基本的なセキュリティプロトコルで使用されるキーは、何らかの形でトンネリングされた認証プロトコルで使用されるキーにバインドされています。しかし、これは基本的なセキュリティプロトコルの現在の実装に問題を引き起こします。例えば、アプリケーション層でTLSからセッションキーを使用することは不可能です。さらに、この解決策は、未解決のHTTPダイジェスト(プロキシサーバを介して、例えば)1つのホップにわたって使用され、複数のホップを介してHTTPダイジェストを使用することの問題を残すであろう問題を解決するだろう。
3. Authentication credentials are used in a cryptographically different way for each media and/or access network. However, it may be difficult to know which underlying media is used below the application.
3.認証証明書は、各メディアおよび/またはアクセスネットワークの暗号異なる方法で使用されています。しかし、根本的なメディアは、アプリケーションの下に使用されているかを知ることが困難な場合があります。
4. Authentication credentials are used in a cryptographically different way for each application.
4.認証証明書は、アプリケーションごとに暗号異なる方法で使用されています。
This document specifies a new algorithm version for HTTP Digest AKA (i.e., "AKAv2"). "AKAv2" specifies a cryptographically different way to use AKA credentials in use cases that are based on either HTTP Digest authentication or UMTS authentication (cf. approach 4 above). The only difference to "AKAv1" is that, in addition to an AKA response RES, the AKA related session keys, IK and CK, are also used as the password for HTTP Digest. AKAv2 is immune to the man-in-the-middle attack described above. However, if AKAv2 is used in some environment, both with and without some underlying security, such as TLS, the problem still exists.
このドキュメントでは、HTTPダイジェストAKA(すなわち、「AKAv2」)のための新しいアルゴリズムのバージョンを指定します。 「AKAv2は、」HTTPダイジェスト認証またはUMTS認証(上記参照手法4)のいずれかに基づいて使用する場合にはAKA資格証明を使用する暗号別の方法を指定します。唯一の違いは「AKAv1は」AKA応答RES、AKA関連セッション鍵、IKおよびCKに加えて、HTTPダイジェストのパスワードとして使用されている、ということです。 AKAv2は、上記のman-in-the-middle攻撃を受けません。 AKAv2がTLSなど、いくつかの基本的なセキュリティととせずに、両方の、いくつかの環境で使用されている場合は、問題がまだ存在しています。
New HTTP Digest AKA algorithm versions can be registered with IANA, based on Expert Review. Documentation of new algorithm versions is not mandated as RFCs. However, "AKAv2" is documented as an RFC because the use of different AKA algorithm versions includes security implications of which the implementors should be aware. The extension version and security implications are presented in this document.
新しいHTTPダイジェストAKAアルゴリズムのバージョンは、専門家レビューに基づいて、IANAに登録することができます。新しいアルゴリズムのバージョンのドキュメントは、RFCとして義務付けられていません。異なるAKAアルゴリズムのバージョンの使用は、実装者が知っておくべきのセキュリティへの影響が含まれているためしかし、「AKAv2は、」RFCとして文書化されています。拡張バージョンとセキュリティへの影響は、この文書で提示されています。
This chapter explains the terminology used in this document.
この章では、本書で使用される用語を説明します。
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [3].
この文書のキーワード "MUST"、 "MUST NOT"、 "REQUIRED"、、、、 "べきではない" "べきである" "ないもの" "ものとし"、 "推奨"、 "MAY"、および "OPTIONAL" はあります[3]で説明されるように解釈されます。
AKA
赤
Authentication and Key Agreement.
認証とキー合意。
AKA is a challenge-response based mechanism that uses symmetric cryptography. AKA can be run in a UMTS IM Services Identity Module (ISIM) or in UMTS Subscriber Identity Module (USIM), which reside on a smart-card-like device that also provides tamper resistant storage of shared secrets.
AKAは対称暗号を使用してチャレンジ・レスポンスベースのメカニズムです。 AKAは、共有秘密の耐タンパ記憶装置を提供スマートカードのようなデバイス上に存在する、UMTS IMサービス識別モジュール(ISIM)またはUMTS加入者識別モジュール(USIM)で実行することができます。
CK
CK
Cipher Key. An AKA session key for encryption.
暗号鍵。暗号化のためのAKAセッションキー。
CK'
CK」
Cipher Key. HTTP Digest AKAv2 session key for encryption. CK' is derived from CK using a pseudo-random function.
暗号鍵。暗号化のためのHTTPダイジェストAKAv2セッションキー。 CK」は、擬似ランダム関数を使用して、CKから誘導されます。
IK
私
Integrity Key. An AKA session key for integrity check.
完全鍵。整合性チェックのためのAKAセッションキー。
IK'
I '
Integrity Key. HTTP Digest AKAv2 session key for integrity check. IK' is derived from IK using a pseudo-random function.
完全鍵。整合性チェックのためのHTTPダイジェストAKAv2セッションキー。 IK」は、擬似ランダム関数を使用して、IKから誘導されます。
ISIM
ISIM
IP Multimedia Services Identity Module. Sometimes ISIM is implemented using USIM.
IPマルチメディアサービス識別モジュール。時にはISIMは、USIMを使用して実装されます。
RES
RES
Authentication Response. Generated by the ISIM.
認証応答。 ISIMによって生成されます。
PRF
PRF
Pseudo-random function that is used to construct the AKAv2 password and related session keys IK' and CK'. In this document, PRF is presented in the format KD(secret, data), denoting a keyed digest algorithm (KD) performed to the data ("data") with the secret ("secret").
AKAv2パスワードと関連するセッション鍵IK「とCK」を構築するために使用される擬似ランダム関数。この文書では、PRFはキーイングダイジェストアルゴリズム(KD)を示す、フォーマットKD(秘密データ)に提示されている秘密(「秘密」)とデータ(「データ」)に行きました。
SIM
SIM
Subscriber Identity Module. GSM counter part for ISIM and USIM.
加入者識別モジュール。 ISIMおよびUSIM用GSMカウンタ部。
UMTS
UMTS
Universal Mobile Telecommunications System.
ユニバーサル移動体通信システム。
USIM
USIM
UMTS Subscriber Identity Module. UMTS counter part for ISIM and SIM.
UMTS加入者識別モジュール。 UMTSは、ISIMとSIMの一部に対抗します。
XRES
XRES
Expected Authentication Response. In a successful authentication, this is equal to RES.
予想される認証応答。認証の成功で、これはRESに等しいです。
In general, the Digest AKAv2 operation is identical to the Digest AKAv1 operation described in [6]. This chapter specifies the parts in which Digest AKAv2 is different from Digest AKAv1 operation. The notation used in the Augmented BNF definitions for the new and modified syntax elements in this section is as used in SIP [5], and any elements not defined in this section are as defined in [6].
一般的に、ダイジェストAKAv2動作[6]に記載のダイジェストAKAv1動作と同一です。この章では、ダイジェストAKAv2ダイジェストAKAv1操作とが異なる部分を指定します。このセクションの新規および変更構文要素の増大しているBNFの定義で使用される表記法は、SIPに使用される[5]及び[6]で定義されるように、このセクションで定義されていない任意の要素です。
In order to direct the client into using AKAv2 for authentication instead of other AKA versions or other HTTP Digest algorithms, the AKA version directive of [6] shall have the following new value:
代わりに、他のAKAバージョンまたは他のHTTPダイジェストアルゴリズムの認証にAKAv2を用いにクライアントを向けるために、[6]のAKAバージョンディレクティブは、次の新しい値を持たなければなりません。
aka-version = "AKAv2"
別名バージョン=「AKAv2」
The AKA version directive is used as a part of the algorithm field as defined in [6].
[6]で定義されるようにAKAバージョンディレクティブはアルゴリズムフィールドの一部として使用されます。
Example: algorithm=AKAv2-MD5
例:アルゴリズム= AKAv2-MD5
The client shall use base64 encoded [1] parameters PRF(RES||IK||CK, "http-digest-akav2-password") as a "password" when calculating the HTTP Digest response directive for AKAv2.
クライアントはAKAv2ためのHTTPダイジェスト応答指令を算出する際に、[1] "パスワード" としてPRF(RES || IK || CK、 "HTTPダイジェスト-akav2パスワード")をパラメータbase64エンコードを使用しなければなりません。
The server shall use base64 encoded [1] parameters PRF(XRES||IK||CK, "http-digest-akav2-password") as a "password" when checking the HTTP Digest response or when calculating the "response-auth" of the "Authentication-Info" header.
サーバは、「応答-AUTH」を算出する際にHTTPダイジェスト応答をチェックするとき、または[1]「パスワード」としてPRF(XRES || IK || CK、「HTTPダイジェスト-akav2パスワード」)をパラメータbase64エンコードを使用しなければなりません「認証-INFO」ヘッダの。
The pseudo-random function (PRF) used to construct the HTTP Digest password is equal to HMAC [2] using the hash algorithm that is used in producing the digest and the checksum. For example, if the algorithm is AKAv2-MD5, then the PRF is HMAC_MD5.
HTTPダイジェスト・パスワードを構築するために使用される擬似ランダム関数(PRF)は、[2]ダイジェストとチェックサムの生成に使用されるハッシュアルゴリズムを使用して、HMACに等しいです。アルゴリズムはAKAv2-MD5である場合、例えば、その後、PRFはHMAC_MD5あります。
The string "http-digest-akav2-password" included in the key derivation is case sensitive.
キー導出に含まれる文字列「HTTPダイジェスト-akav2パスワード」大文字と小文字を区別します。
Even though the HTTP Digest AKA framework does not specify the use of the session keys IK and CK for confidentiality and integrity protection, the keys may be used for creating additional security within HTTP authentication or some other security mechanism. However, the original session keys IK and CK MUST NOT be directly re-used for such additional security in "AKAv2". Instead, session keys IK' and CK' are derived from the original keys IK and CK in the following way:
HTTPダイジェストAKAフレームワークは、機密性と完全性保護のためのセッション鍵IKとCKの使用を指定しない場合でも、キーはHTTP認証またはいくつかの他のセキュリティ・メカニズムの中に追加のセキュリティを作成するために使用することができます。しかし、元のセッション鍵IKとCKは、直接「AKAv2」で、このような追加のセキュリティのために再使用することはできません。代わりに、セッション鍵IK「とCK」は、次のように元のキーIKとCKから導出されています。
IK' = PRF(IK, "http-digest-akav2-integritykey")
IK「= PRF(IK、 "HTTPダイジェスト-akav2-integritykey")
CK' = PRF(CK, "http-digest-akav2-cipherkey")
CK」= PRF(CK、 "HTTPダイジェスト-akav2-cipherkey")
Any application using the HTTP authentication framework is allowed to use these masked session keys. The unmasked session keys MAY also be re-used in some other context if application-specific strings other than "http-digest-akav2-integritykey" or "http-digest-akav2-cipherkey" are used to mask the original session keys.
HTTPの認証フレームワークを使用するすべてのアプリケーションは、これらのマスクされたセッションキーを使用することを許可されています。マスクされていないセッションキーも他のいくつかの文脈で再利用されるかもしれない「HTTPダイジェスト-akav2-integritykey」または「HTTPダイジェスト-akav2-cipherkey」以外のアプリケーション固有の文字列は、元のセッションキーをマスクするために使用されている場合。
The pseudo-random function (PRF) used to construct the HTTP Digest session keys is equal to HMAC [2] using the hash algorithm that is used in producing the digest and the checksum. For example, if the algorithm is AKAv2-MD5, then the PRF is HMAC_MD5. The algorithm MUST be used in the HMAC format, as defined in [2].
HTTPダイジェストセッションキーを構築するために使用される擬似ランダム関数(PRF)は、[2]ダイジェストとチェックサムの生成に使用されるハッシュアルゴリズムを使用して、HMACに等しいです。アルゴリズムはAKAv2-MD5である場合、例えば、その後、PRFはHMAC_MD5あります。 [2]で定義されるようなアルゴリズムは、HMAC形式で使用されなければなりません。
The strings "http-digest-akav2-integritykey" and "http-digest-akav2- cipherkey" included in the key derivation are case sensitive.
文字列「HTTPダイジェスト-akav2-integritykey」と鍵導出に含まれている「HTTPダイジェスト-akav2- cipherkeyは、」大文字と小文字が区別されます。
This document does not introduce any changes to the operations of HTTP Digest or HTTP Digest AKA. Examples defined in [6] apply directly to AKAv2 with the following two exceptions:
このドキュメントでは、HTTPダイジェストやHTTPダイジェストAKAの操作への変更を導入しません。で定義されている例は、[6]次の2つの例外を除きAKAv2に直接適用されます。
1. The algorithm directive has a prefix "AKAv2" instead of "AKAv1".
1.アルゴリズムディレクティブは、代わりに「AKAv1」の接頭辞「AKAv2」を持っています。
2. The HTTP Digest password is derived from base64 encoded PRF(RES|| IK||CK, "http-digest-akav2-password") or PRF(XRES||IK||CK, "http-digest-akav2-password") instead of (RES) or (XRES) respectively.
2. HTTPダイジェスト・パスワードは、PRF(RES || IK || CK、 "HTTPダイジェスト-akav2パスワード")又はPRF(XRES || IK || CK、「HTTPダイジェスト-akav2パスワードをbase64エンコード由来します「)の代わりに(RES)又は(XRES)のそれぞれ。
3. The optional session keys are derived from PRF(IK, "http-digest-akav2-integritykey") and PRF(CK, "http-digest-akav2-cipherkey") instead of IK and CK respectively.
3.任意のセッション鍵をそれぞれ代わりIKとCKのPRF(IK、 "HTTPダイジェスト-akav2-integritykey")とPRF(CK、 "HTTPダイジェスト-akav2-cipherkey")から誘導されます。
Note that the password in "AKAv1" is in binary format. The "AKAv2" password is base64 encoded [1].
「AKAv1」のパスワードがバイナリ形式であることに注意してください。 "AKAv2" パスワードはbase64エンコードである[1]。
The rules for a user agent for choosing among multiple authentication schemes and algorithms are as defined in [6], except that the user agent MUST choose "AKAv2" if both "AKAv1" and "AKAv2" are present.
「AKAv1」および「AKAv2」の両方が存在する場合、ユーザエージェントは、「AKAv2」を選択しなければならないことを除いて、[6]で定義されるように、複数の認証方式及びアルゴリズムの中から選択するためのユーザーエージェントのためのルールです。
Since HTTP Digest is known to be vulnerable for bidding-down attacks in environments where multiple authentication schemes and/or algorithms are used, the system implementors should pay special attention to scenarios in which both "AKAv1" and "AKAv2" are used. The use of both AKA algorithm versions should be avoided, especially if the AKA generated sessions keys or some other additional security measures to authenticate the clients (e.g., client certificates) are not used.
HTTPダイジェストので、複数の認証方式および/またはアルゴリズムが使用されている、システムの実装は、「AKAv1」と「AKAv2」の両方が使用されているシナリオに特別な注意を払う必要がある環境での入札ダウン攻撃に脆弱であることが知られています。両方のAKAアルゴリズムのバージョンの使用はAKAは、セッションキーまたは使用されていないクライアント(例えば、クライアント証明書)を認証するために、他のいくつかの追加のセキュリティ対策を生成した場合は特に、避けるべきです。
Even though "AKAv2" uses the additional integrity (IK) and confidentiality (CK) keys as a part of the HTTP Digest AKA password, these session keys may still be used for creating additional security within HTTP authentication or some other security mechanism. This recommendation is based on the assumption that algorithms used in HTTP Digest, such as MD5, are sufficiently strong one-way functions, and, consequently, HTTP Digest responses leak no or very little computational information about IK and CK. Furthermore, the session keys are masked into IK' and CK' before they can be used for session protection.
「AKAv2は」HTTPダイジェストAKAパスワードの一部として追加の整合性(IK)と機密性(CK)キーを使用していても、これらのセッションキーは、まだHTTP認証またはいくつかの他のセキュリティ・メカニズムの中に追加のセキュリティを作成するために使用することができます。この勧告は、MD5などHTTPダイジェストに使用されるアルゴリズムの仮定に基づいており、従って、HTTPダイジェスト応答はIKとCK約ないか非常に少ない計算情報を漏洩しない、十分に強い一方向関数であり、。彼らはセッションの保護に使用することができる前に、さらに、セッションキーはIK「とCK」内にマスクされています。
Reference [8] describes a "man-in-the-middle" attack related to tunnelled authentication protocols. The attack can occur in an EAP context or any similar contexts where tunnelled authentication is used and where the same authentication credentials are used without protection in some other context or the client fails to authenticate the server.
参考文献[8]でトンネリングの認証プロトコルに関連のある "man-in-the-middle" 攻撃について説明します。攻撃は、EAPのコンテキストまたはトンネリングされた認証が使用されている、どこに同じ認証資格情報が他のいくつかの文脈で保護せずに使用したり、クライアントがサーバを認証するために失敗している任意の同様の状況で発生する可能性があります。
For example, the use of TLS with HTTP Digest authentication (i.e., TLS for server authentication, and subsequent use of HTTP Digest for client authentication) is an instance of such scenario. HTTP challenges and responses can be fetched from and to different TLS tunnels without noticing their origin. The attack is especially easy to perform if the client fails to authenticate the server. If the same HTTP credentials are used with an unsecured connection, the attack is also easy to perform.
たとえば、HTTPダイジェスト認証でTLSの使用は、(すなわち、サーバ認証、クライアント認証のためのHTTPダイジェストのその後の使用のためのTLS)は、そのようなシナリオの例です。 HTTPのチャレンジとレスポンスは、その起源に気付かずに、別のTLSトンネルに取り込むことができます。攻撃は、クライアントがサーバを認証するために失敗した場合に実行することが特に容易です。同じHTTPの資格情報が保護されていない接続で使用している場合、攻撃も行うことは容易です。
This is how the "man-in-the-middle" attack works with HTTP Digest and TLS if the victim (i.e., the client) fails to authenticate the server:
これは、被害者が(すなわち、クライアント)がサーバを認証に失敗した場合、「男-in-the-middle」攻撃は、HTTPダイジェストおよびTLSでどのように動作するかです:
1. The victim contacts the attacker using TLS. If the attacker has a valid server certificate, the client may continue talking to the attacker and use some HTTP authentication compatible protocol, such as the Session Initiation Protocol (SIP).
1.被害者の連絡先TLSを使用して、攻撃者。攻撃者が有効なサーバー証明書を持っている場合、クライアントは、攻撃者に話を続けると、そのようなセッション開始プロトコル(SIP)など、いくつかのHTTP認証互換性のあるプロトコルを使用することができます。
2. The attacker contacts a real proxy/server also using TLS and an HTTP-authentication-compatible protocol. The proxy/server responds to the attacker with the HTTP Authentication challenge.
2.実際のプロキシ/サーバはまた、TLSを使用して攻撃者の連絡先とHTTP認証互換プロトコル。プロキシ/サーバは、HTTP認証チャレンジで、攻撃者に応答します。
3. The attacker forwards the HTTP Authentication challenge from the proxy/server to the victim. If the victim is not careful, and does not check whether the identity in the server certificate in TLS matches the realm in the HTTP authentication challenge, it may send a new request that carries a valid response to the HTTP Authentication challenge.
3.攻撃者は、被害者へのプロキシ/サーバーからのHTTP認証チャレンジを転送します。被害者が注意しないで、TLSでサーバー証明書のIDがHTTP認証チャレンジでレルムを一致するかどうかを確認していない場合は、HTTP認証チャレンジに対する有効な応答を運ぶ新しい要求を送信することができます。
4. The attacker may use the response with the victims HTTP Digest username and password to authenticate itself to the proxy/server.
4.攻撃者は、プロキシ/サーバーに対して自身を認証するために、犠牲者HTTPダイジェストユーザ名とパスワードを使用して応答を使用することができます。
The man-in-the-middle attack is not possible if the client compares the identities in the TLS server certificate and the HTTP Digest authentication challenge. Note that with HTTP Basic, the client would send the password to the attacker.
クライアントがTLSサーバー証明書とHTTPダイジェスト認証チャレンジにアイデンティティを比較した場合、中間者攻撃を行うことはできません。 HTTP Basicで、クライアントが攻撃者にパスワードを送信することに注意してください。
Another variant of the "man-in-the-middle" attack is the so-called "interleaving attack". This attack is possible if the HTTP Digest authentication credentials are used in several contexts, and in one of them without protection.
「男-in-the-middle」攻撃の他の変形は、いわゆる「インターリーブ攻撃」です。この攻撃は、HTTPダイジェスト認証の資格情報は、いくつかのコンテキストで使用された場合に可能であり、そのうちの一つで保護なし。
This is how the attack could proceed:
これは、攻撃が進む可能性がどのようです:
1. The attacker establishes a TLS tunnel to the proxy/server using one-way server authentication. The attacker sends a request to the proxy/server.
1.攻撃者は、一方向のサーバ認証を使用してプロキシ/サーバにTLSトンネルを確立します。攻撃者は、プロキシ/サーバに要求を送信します。
2. The proxy/server challenges the attacker with the HTTP Digest challenge.
2.プロキシ/サーバは、HTTPダイジェスト挑戦で、攻撃者に挑戦します。
3. The attacker challenges the victim in some other context using the challenge carried in the HTTP Digest challenge. The HTTP Digest challenge needs to be modified to the format used in the protocol of this other context.
3.攻撃者は、HTTPダイジェスト挑戦で運ば挑戦を使用して、いくつかの他のコンテキストでは、被害者に挑戦します。 HTTPダイジェストチャレンジは、この他のコンテキストのプロトコルで使用されるフォーマットに変更する必要があります。
4. The victim responds with a response.
4.被害者は応答で応答します。
5. The attacker uses the response from the other context for authentication in HTTP Digest.
5.攻撃者は、HTTPダイジェストに認証のための他のコンテキストからの応答を使用します。
6. The proxy/server accepts the response, and delivers the service to the attacker.
6.プロキシ/サーバが応答を受け付け、攻撃者にサービスを提供しています。
In some circumstances, HTTP Digest AKAv1 may be vulnerable for the interleaving attack. In particular, if ISIM is implemented using USIM, the HTTP Digest AKAv1 should not be used with tunneled security protocols unless the AKA-related session keys, IK and CK, are somehow used with the solution.
いくつかの状況では、HTTPダイジェストAKAv1インターリーブ攻撃の脆弱性であってもよいです。 ISIMは、USIMを使用して実装されている場合、特に、HTTPダイジェストAKAv1をAKA関連セッション鍵、IKおよびCKない限り、トンネリング、セキュリティプロトコルで使用されるべきではなく、何らかの形で溶液で使用されています。
HTTP Digest AKAv2 is not vulnerable to this interleaving attack, and it can be used with tunneled security protocols without using the related AKA session keys.
HTTPダイジェストAKAv2は、このインターリーブ攻撃に対して脆弱ではありません、それは、関連AKAセッションキーを使用せずにトンネル化セキュリティプロトコルで使用することができます。
AKAv1 passwords should only be used as one-time passwords if the entropy of the used RES value is limited (e.g., only 32 bits). For this reason, the re-use of the same RES value in authenticating subsequent requests and responses is not recommended. Furthermore, algorithms such as "MD5-sess", which limit the amount of material hashed with a single key by producing a session key for authentication, should not be used with AKAv1.
使用RES値のエントロピー(例えば、32ビットのみ)に限られている場合AKAv1パスワードのみワンタイムパスワードとして使用されるべきです。このため、後続の要求と応答の認証で同じRES値の再使用は推奨されません。また、認証のためのセッションキーを生成することによって、単一の鍵でハッシュされる材料の量を制限するような「MD5-のSES」などのアルゴリズムは、AKAv1で使用すべきではありません。
Passwords generated using AKAv2 can more securely be used for authenticating subsequent requests and responses because the concatenation of AKA credentials (i.e., RES||IK||CK) makes the passwords significantly longer, and the pseudo-random function heuristically provides an entropy equal to the length of this string, or the length of the PRF output, whichever is the shortest. The user agent does not need to assume that AKAv2 passwords are limited to one-time use only, and it may try to re-use the AKAv2 passwords with the server. However, note that AKAv2 passwords cannot be re-used with the HTTP Digest AKAv2 algorithm because such an authentication challenge will automatically generate a fresh password. AKAv2 passwords can be used with other HTTP Digest algorithms, such as "MD5".
AKA認証情報(即ち、RES || IK || CK)の連結は、有意に長いパスワードを行い、擬似ランダム関数は、ヒューリスティックに等しいエントロピーを提供するのでAKAv2を使用して生成されたパスワードをより確実に後続の要求および応答を認証するために使用することができますこの文字列の長さ、又は短い方PRF出力、の長さ。ユーザエージェントはAKAv2パスワードは1回だけの使用に限定されていることを前提とする必要はありません。また、サーバとAKAv2パスワードを再利用しようとするかもしれません。しかし、そのような認証チャレンジが自動的に新鮮なパスワードを生成しますので、AKAv2パスワードはHTTPダイジェストAKAv2アルゴリズムで再使用できないことに注意してください。 AKAv2パスワードは、「MD5」などの他のHTTPダイジェストアルゴリズムと共に使用することができます。
The underlying AKA protocol (e.g., UMTS AKA) has been designed to keep CK and IK confidential, but will typically send RES in the clear. We note that, even if (by some unfortunate misuse of AKA) RES values were revealed, the inclusion of RES in PRF(RES||IK||CK) is still beneficial, as it makes pre-calculated dictionaries of IK||CK values rather useless (though such dictionaries are infeasible for typical sizes of IK and CK).
基礎となるAKAプロトコル(例えば、UMTS AKA)は、機密CKとIKを保つように設計されていますが、一般的に明確でRESを送信します。我々は、RES値を明らかにしても(AKAのいくつかの不幸な誤用による)場合、それはIK || CKの予め計算された辞書を作るように、PRFでRES(RES || IK || CK)の包含は、依然として有益であることに注意します値(例えば、辞書はIKとCKの典型的なサイズのために不可能であるが)、むしろ役に立ちません。
This document specifies a new aka-version, "AKAv2", to the aka-version namespace maintained by IANA. The procedure for allocation of new aka-versions is defined in [6].
この文書は、IANAによって維持別名・バージョンの名前空間に、新しい別名・バージョン、「AKAv2」を指定します。新しい別名・バージョンの割り当てのための手順は、[6]で定義されています。
To: ietf-digest-aka@iana.org
と: いえtfーぢげstーあか@いあな。おrg
Subject: Registration of a new AKA version
件名:新しいAKAバージョンの登録
Version identifier: "AKAv2"
バージョン「AKAv2」を識別
Contacts for further information: Vesa.Torvinen@turkuamk.fi, jari.arkko@ericsson.com, or mats.naslund@ericsson.com
詳細についての連絡先:Vesa.Torvinen@turkuamk.fi、jari.arkko@ericsson.com、またはmats.naslund@ericsson.com
[1] Freed, N. and N. Borenstein, "Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies", RFC 2045, November 1996.
[1]フリード、N.とN. Borenstein、 "マルチパーパスインターネットメールエクステンション(MIME)第一部:インターネットメッセージ本体のフォーマット"、RFC 2045、1996年11月。
[2] Krawczyk, H., Bellare, M., and R. Canetti, "HMAC: Keyed-Hashing for Message Authentication", RFC 2104, February 1997.
[2] Krawczyk、H.、ベラー、M.、およびR.カネッティ、 "HMAC:メッセージ認証のための鍵付きハッシュ化"、RFC 2104、1997年2月。
[3] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[3]ブラドナーのは、S.は、BCP 14、RFC 2119、1997年3月の "RFCsにおける使用のためのレベルを示すために"。
[4] Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S., Leach, P., Luotonen, A., and L. Stewart, "HTTP Authentication: Basic and Digest Access Authentication", RFC 2617, June 1999.
[4]フランクス、J.、ハラム・ベイカー、P.、Hostetler、J.、ローレンス、S.、リーチ、P.、Luotonen、A.、およびL.スチュワート、 "HTTP認証:基本とダイジェストアクセス認証" 、RFC 2617、1999年6月。
[5] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, June 2002.
[5]ローゼンバーグ、J.、Schulzrinneと、H.、カマリロ、G.、ジョンストン、A.、ピーターソン、J.、スパークス、R.、ハンドレー、M.、およびE.学生、 "SIP:セッション開始プロトコル" 、RFC 3261、2002年6月。
[6] Niemi, A., Arkko, J., and V. Torvinen, "Hypertext Transfer Protocol (HTTP) Digest Authentication Using Authentication and Key Agreement (AKA)", RFC 3310, September 2002.
[6]ニエミ、A.、Arkko、J.、およびV. Torvinen、RFC 3310、2002年9月 "認証および鍵合意(AKA)を使用してハイパーテキスト転送プロトコル(HTTP)ダイジェスト認証"。
[7] 3rd Generation Partnership Project, "Security Architecture (Release 4)", TS 33.102, December 2001.
[7]第3世代パートナーシッププロジェクト、 "セキュリティアーキテクチャは、(リリース4)"、TS 33.102、2001年12月。
[8] Asokan, N., Niemi, V., and K. Nyberg, "Man-in-the-Middle in Tunnelled Authentication Protocols", Cryptology ePrint Archive, http://eprint.iacr.org Report 2002/163, October 2002.
[8] Asokan、N.、ニエミ、V.、およびK.ニベルグ、 "のman-in-the-middleトンネル化認証プロトコルで"、暗号学ePrintのアーカイブ、http://eprint.iacr.org 163分の2002レポート、 2002年10月。
[9] Puthenkulam, J., Lortz, V., Palekar, A., and D. Simon, "The Compound Authentication Binding Problem", Work in Progress, March 2003.
[9] Puthenkulam、J.、Lortz、V.、Palekar、A.、およびD.シモン、 "問題を結合化合物認証"、進歩、2003年3月に作業。
Authors' Addresses
著者のアドレス
Vesa Torvinen Turku Polytechnic Ylhaistentie 2 Salo FIN 24130 Finland
VESA Torvinenトゥルク工科Ylhaistentie 2ギガバイト24130サロフィンランド
Phone: +358 10 5536210 EMail: vesa.torvinen@turkuamk.fi
電話番号:+358 10 5536210 Eメール:vesa.torvinen@turkuamk.fi
Jari Arkko Ericsson Hirsalantie 1 Jorvas FIN 02420 Finland
ヤリArkkoエリクソンHirsalantie 1 FIN 02420 Jorvasフィンランド
Phone: +358 40 5079256 EMail: jari.arkko@ericsson.com
電話番号:+358 40 5079256 Eメール:jari.arkko@ericsson.com
Mats Naeslund Ericsson Torshamnsgatan 23 Stockholm SE 16480 Sweden
マットNaeslundエリクソンTorshamnsgatan 23ストックホルムSE 16480スウェーデン
Phone: +46 8 58533739 EMail: mats.naslund@ericsson.com
電話:+46 8 58533739 Eメール:mats.naslund@ericsson.com
Full Copyright Statement
完全な著作権声明
Copyright (C) The Internet Society (2005).
著作権(C)インターネット協会(2005)。
This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.
この文書では、BCP 78に含まれる権利と許可と制限の適用を受けており、その中の記載を除いて、作者は彼らのすべての権利を保有します。
This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
この文書とここに含まれている情報は、基礎とCONTRIBUTOR「そのまま」、ORGANIZATION HE / SHEが表すまたはインターネットソサエティおよびインターネット・エンジニアリング・タスク・フォース放棄すべての保証、明示または、(もしあれば)後援ISに設けられています。黙示、情報の利用は、特定の目的に対する権利または商品性または適合性の黙示の保証を侵害しない任意の保証含むがこれらに限定されません。
Intellectual Property
知的財産
The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.
IETFは、本書またはそのような権限下で、ライセンスがたりないかもしれない程度に記載された技術の実装や使用に関係すると主張される可能性があります任意の知的財産権やその他の権利の有効性または範囲に関していかなる位置を取りません利用可能です。またそれは、それがどのような権利を確認する独自の取り組みを行ったことを示すものでもありません。 RFC文書の権利に関する手続きの情報は、BCP 78およびBCP 79に記載されています。
Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.
IPRの開示のコピーが利用できるようにIETF事務局とライセンスの保証に行われた、または本仕様の実装者または利用者がそのような所有権の使用のための一般的なライセンスまたは許可を取得するために作られた試みの結果を得ることができますhttp://www.ietf.org/iprのIETFのオンラインIPRリポジトリから。
The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.
IETFは、その注意にこの標準を実装するために必要とされる技術をカバーすることができる任意の著作権、特許または特許出願、またはその他の所有権を持ってすべての利害関係者を招待します。 ietf-ipr@ietf.orgのIETFに情報を記述してください。
Acknowledgement
謝辞
Funding for the RFC Editor function is currently provided by the Internet Society.
RFC Editor機能のための基金は現在、インターネット協会によって提供されます。