Re: [rtcweb] Continuing to assert username/password (Re: FW: Adopting draft-muthu-behave-consent-freshness?)

"Tirumaleswar Reddy (tireddy)" <tireddy@cisco.com> Tue, 17 September 2013 17:40 UTC

Return-Path: <tireddy@cisco.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A1C9B11E8533 for <rtcweb@ietfa.amsl.com>; Tue, 17 Sep 2013 10:40:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.099
X-Spam-Level:
X-Spam-Status: No, score=-9.099 tagged_above=-999 required=5 tests=[AWL=0.900, BAYES_00=-2.599, J_CHICKENPOX_72=0.6, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id C-VOdErUAUVa for <rtcweb@ietfa.amsl.com>; Tue, 17 Sep 2013 10:40:32 -0700 (PDT)
Received: from rcdn-iport-7.cisco.com (rcdn-iport-7.cisco.com [173.37.86.78]) by ietfa.amsl.com (Postfix) with ESMTP id 99D7B11E82B7 for <rtcweb@ietf.org>; Tue, 17 Sep 2013 10:40:30 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=5248; q=dns/txt; s=iport; t=1379439631; x=1380649231; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=dRJppFvTgcWjIE0Wx/1d9jagGPV1nUhW+ANk/2HA5n4=; b=T7h9xzxCm/w9a7t3gC/Hr3LeXyubqN2P+9uZzFtRBKVA0sAD1pO6o5uN MqCjrHSyxFLlyFMnrlg96OK4RZ1UYFytper90lABTuCz7kOgf90LH/lsM VlqK+YYtkFFGchXuvTRaVv684Zru992ol5oPj29wwYu5sL7GmSZXb+CLX 0=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AgUFAMSTOFKtJXG8/2dsb2JhbABagweBCsEigR4WdIIlAQEBAwE6PwwEAgEIEQMBAQEBCg4GBQQHMhQIAQgCBA4FCBECh2IGujqPNgYrBwYSgwaBAAOUH5VQgWaBPoFqJBw
X-IronPort-AV: E=Sophos;i="4.90,925,1371081600"; d="scan'208";a="260938961"
Received: from rcdn-core2-1.cisco.com ([173.37.113.188]) by rcdn-iport-7.cisco.com with ESMTP; 17 Sep 2013 17:40:22 +0000
Received: from xhc-aln-x09.cisco.com (xhc-aln-x09.cisco.com [173.36.12.83]) by rcdn-core2-1.cisco.com (8.14.5/8.14.5) with ESMTP id r8HHeCL0027829 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Tue, 17 Sep 2013 17:40:22 GMT
Received: from xmb-rcd-x10.cisco.com ([169.254.15.33]) by xhc-aln-x09.cisco.com ([173.36.12.83]) with mapi id 14.02.0318.004; Tue, 17 Sep 2013 12:40:17 -0500
From: "Tirumaleswar Reddy (tireddy)" <tireddy@cisco.com>
To: Harald Alvestrand <harald@alvestrand.no>
Thread-Topic: [rtcweb] Continuing to assert username/password (Re: FW: Adopting draft-muthu-behave-consent-freshness?)
Thread-Index: AQHOs4C/clq2b3F4c0Cq3gToydiwV5nJqo4AgAB1y4CAABEQ4A==
Date: Tue, 17 Sep 2013 17:40:16 +0000
Message-ID: <913383AAA69FF945B8F946018B75898A1907975B@xmb-rcd-x10.cisco.com>
References: <E92E67B176B8B64D8D3A8F5E44E9D8F41FF743A0@xmb-aln-x05.cisco.com> <52381402.8070400@alvestrand.no> <913383AAA69FF945B8F946018B75898A190793B0@xmb-rcd-x10.cisco.com> <52383E19.2070107@alvestrand.no>
In-Reply-To: <52383E19.2070107@alvestrand.no>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.65.78.174]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Continuing to assert username/password (Re: FW: Adopting draft-muthu-behave-consent-freshness?)
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtcweb>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 17 Sep 2013 17:40:37 -0000

> -----Original Message-----
> From: Harald Alvestrand [mailto:harald@alvestrand.no]
> Sent: Tuesday, September 17, 2013 5:04 PM
> To: Tirumaleswar Reddy (tireddy)
> Cc: rtcweb@ietf.org
> Subject: Re: [rtcweb] Continuing to assert username/password (Re: FW: Adopting
> draft-muthu-behave-consent-freshness?)
> 
> On 09/17/2013 12:05 PM, Tirumaleswar Reddy (tireddy) wrote:
> > Hi Harald,
> >
> > Please see inline
> >
> >> -----Original Message-----
> >> From: rtcweb-bounces@ietf.org [mailto:rtcweb-bounces@ietf.org] On Behalf Of
> >> Harald Alvestrand
> >> Sent: Tuesday, September 17, 2013 2:04 PM
> >> To: rtcweb@ietf.org
> >> Subject: [rtcweb] Continuing to assert username/password (Re: FW: Adopting
> >> draft-muthu-behave-consent-freshness?)
> >>
> >> Changing subject line in order to make life easier for those who try to
> >> review comments on the original subject....
> >>
> >> On 09/17/2013 07:10 AM, Ram Mohan R (rmohanr) wrote:
> >>> Hi Please see inline
> >>>
> >>> -----Original Message-----
> >>> From: Jessie <Lijing>, "Huawei)" <lijing80@huawei.com>
> >>> Date: Thursday, 12 September 2013 1:27 PM
> >>> To: "rtcweb@ietf.org" <rtcweb@ietf.org>
> >>> Subject: [rtcweb] FW:  Adopting draft-muthu-behave-consent-freshness?
> >>>
> >>>> Hi all,
> >>>>
> >>>> As a newcomer to RTCWEB, I have some doubts after I have read the draft.
> >>>>
> >>>> 1. in "4.  Solution Overview", may be it would be better to clarify when
> >>>> to send a STUN Binding Request(in the middle of a media session or before
> >>>> sending traffic, during sending traffic or only during silence periods)
> >>>> and which side to send the request(controlling agent or both sides)?
> >>> The introduction section explains when consent is needed. During the
> >>> initial call setup ICE connectivity checks are used. This mechanism
> >>> described in this document is for periodic consent after initial sessions
> >>> is setup.
> >>>
> >>>> 2. in " 7.  Security Considerations", there are the following words. As
> >>>> when one agent receives STUN Binding Request, unlike the processing of
> >>>> indication message, it have to do more processes to send the Response
> >>>> message, I am not sure whether it is appreciate not to authenticate the
> >>>> source and respond directly. Is it more open to malicious attacks?
> >>> I am not clear on what you asking here. The below text just tells that
> >>> there is no need to re-asserting the username/password that was sent
> >>> initially during ICE checks. Are you saying this can lead to attacks ? If
> >>> yes can you explain on what you meant in detail ?
> >> The text below is wrong.
> >>
> >> If, as is commonly the case, an attacker has the ability to inject
> >> packets on the wire with the same IP address as the victim, the attacker
> >> can forge ICE packets.
> >>
> >> If the victim's correspondent checks MESSAGE-INTEGRITY (which implicitly
> >> checks username and password), he will detect that these packets don't
> >> have the correct authorization, and throw them away.
> >>
> >> If the victim's correspondent does not check MESSAGE-INTEGRITY, the
> >> attacker can keep renewing any consent to receive as long as he wants,
> >> even though the victim wanted to stop consenting.
> > Since each endpoint contributes at least 24 bits of randomness to the ice-
> ufrag which provides 48 bits of randomness. It would not be possible for off-
> path attacker to guess those 48 bits to cause the endpoint to perform HMAC-
> SHA1 validation of the MESSAGE-INTEGRITY attribute. Hence my understanding is
> for consent freshness checking MESSAGE-INTEGRITY is not be required, only
> checking IP address and USERNAME attribute looks sufficient to handle off-path
> attacks.
> >
> 
> Are we talking past each other?
> 
> In order to perform HMAC-SHA1 validation of the MESSAGE-INTEGRITY
> attribute, the HMAC-SHA1 function takes two inputs: The key and the message.
> 
>  From RFC 5389 section 15.4:
> 
> For long-term credentials, the key is 16 bytes:
> 
>              key = MD5(username ":" realm ":" SASLprep(password))
> 
> For short-term credentials:
> 
>                            key = SASLprep(password)
> 
> In other words: A successful HMAC that produces a match with the
> MESSAGE-INTEGRITY attribute value means that the producer of the
> MESSAGE-INTEGRITY attribute knows the password, and, if long term
> credentials are used, he knows the username.
> 
> This implicitly reasserts the password (and possibly the username), and
> the words we're discussing:
> 
>    "Once that connection to the remote
>     peer has been established with ICE, the consent to continue sending
>     traffic does not benefit from re-asserting that same username and
>     password, so long as the senders and receiver's IP addresses remain
>     the same (as they usually do)."

Agreed, the above text in the draft needs to be corrected. 

-Tiru.

> 
> don't make any sense to me.
> If they don't make any sense to other people, they do not belong in the
> document.
> 
> 
> 
>