Re: [sipcore] draft-ietf-sipcore-digest-scheme comments

Rifaat Shekh-Yusef <rifaat.ietf@gmail.com> Sat, 18 May 2019 18:37 UTC

Return-Path: <rifaat.ietf@gmail.com>
X-Original-To: sipcore@ietfa.amsl.com
Delivered-To: sipcore@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2469A1200E6 for <sipcore@ietfa.amsl.com>; Sat, 18 May 2019 11:37:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id rbv5NKQjTocf for <sipcore@ietfa.amsl.com>; Sat, 18 May 2019 11:37:51 -0700 (PDT)
Received: from mail-it1-x135.google.com (mail-it1-x135.google.com [IPv6:2607:f8b0:4864:20::135]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1F6B812003E for <sipcore@ietf.org>; Sat, 18 May 2019 11:37:51 -0700 (PDT)
Received: by mail-it1-x135.google.com with SMTP id i10so17011809ite.0 for <sipcore@ietf.org>; Sat, 18 May 2019 11:37:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Tksfom3BiBzGxfPg7w9GsGsrVoGJRlnNTMpYYKK7P78=; b=bUY8hMSOV9JiQvbUZBf/noll/Cdd0vFd9z1cQ+x2+32UJW92qjgNxiDWtH0wlsd3dX ++0khFFkRfKZIAA++e0IH8JAibvwexIjt377YdXn86wYmDxwz3LCpAb/sxke0Km5WFBq pacOqEyVy+AfjtKu25VmODOLIfFTNHBNhPTDpEVuspI9Y2wytqm+CSeffOX1nqiqrwrT 6VNbs1lOd1gXDGpk1SdnO8/D9UssTNyDu7bzQu5/UwDmQCk/I8k+2TF03mQZj9g5lXOw dn8wpmI6p9rx8ssFUTd3KQJADVmL6jy39BEcTHw37TPpvNdQsf9bliCbC4kPJBERUDXe szxA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Tksfom3BiBzGxfPg7w9GsGsrVoGJRlnNTMpYYKK7P78=; b=qd5eft6WRus0uwaF4teKIbNNW8tOm7ZbIsnSiCRgO2sXxmXmdJpl7ajegtumnfFYGQ 0Gbfw7H4mf2bLwuyrpI0ylPZSIpc5/UpxqUm6VxRlU2xqvRv3Ubl0OQHMwHYtcQLKnMv klv0cTxHb4UFYFMwnHc/bB4ufUfJ9rEnxz71ud7eJqbucXvMrAhBXOq/H2Tqt83OOcXK t6EiywyMCnWBYU2e2QJN/w+taqpwYgHcbjKfO9KCajsdBJ4YXjJVjfB9T7WUF2qoShhM xR+FV0SPJs5Tc8wHHHp5FaYglIKLTYpeooErOS3VaZiRkvBE5jd8mGMftVX0TNxY0AoI VeRw==
X-Gm-Message-State: APjAAAUrwo39Wdnl7N5CK+p7jJHYQTJhKESrmzlQHrX587O45UFfGPay jHtLTDtIaOrRpcxMI1C7sP7B2UqYhTWN3S5E8Bf+DFa4
X-Google-Smtp-Source: APXvYqzCv6QJ9l91ppJMtuePMRIyeLFmXTGoIsaitRRtETDeVtjviQD8VcNmOEf98FxVgYwmZw2Uq7fvPUzwwWorDhE=
X-Received: by 2002:a24:e3c6:: with SMTP id d189mr18681362ith.145.1558204670416; Sat, 18 May 2019 11:37:50 -0700 (PDT)
MIME-Version: 1.0
References: <DE595AFF-5DEA-4A32-8527-10B841D6C7C1@edvina.net>
In-Reply-To: <DE595AFF-5DEA-4A32-8527-10B841D6C7C1@edvina.net>
From: Rifaat Shekh-Yusef <rifaat.ietf@gmail.com>
Date: Sat, 18 May 2019 14:37:39 -0400
Message-ID: <CAGL6epLMHoneH6PNgeF5TgJhveh-xWeZSW6XQDBB2Gf5mS9eRQ@mail.gmail.com>
To: "Olle E. Johansson" <oej@edvina.net>
Cc: SIPCORE <sipcore@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000de1c0d05892dcb61"
Archived-At: <https://mailarchive.ietf.org/arch/msg/sipcore/4pRTHCiiSbpG8ekelL6tPRgd-ZQ>
Subject: Re: [sipcore] draft-ietf-sipcore-digest-scheme comments
X-BeenThere: sipcore@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: SIP Core Working Group <sipcore.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sipcore>, <mailto:sipcore-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sipcore/>
List-Post: <mailto:sipcore@ietf.org>
List-Help: <mailto:sipcore-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sipcore>, <mailto:sipcore-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 18 May 2019 18:37:54 -0000

Thanks Olle!

See my replies below.

Regards,
 Rifaat




On Fri, May 17, 2019 at 9:38 AM Olle E. Johansson <oej@edvina.net> wrote:

> Hi!
> Sorry to be late in this discussion.
>
> " This document updates the Digest Access Authentication scheme used by
>    the Session Initiation Protocol (SIP) to add support for secure
>    digest algorithms to replace the broken MD5 algorithm.”
>
> I would suggest changing “for secure” to “for more secure” to be a bit
> humble.
> In XXX years, the schemes suggested here will be less secure than now.
> The good thing is that we don’t have to update this document every time
> IANA adds a new algorithm to the registry. :-)
>

Ok



>
> section 2: "SHA- 256” - remove the extra space. Also, there’s an extra
> quotation mark at the end of the section.
>
> Ok



> Section 2.1:
>
> "Note that [RFC7616
> ] defines a -sess variant for each algorithm; the
>    -sess variants are not used with SIP.”
>
> Is this already forbidden in 3261 or is this new proposed language? If so,
> “are not” should propably
> be something like “MUST not”
>
> I do not think that 3261 forbids the -sess variant, and I do not see the
need to forbid it here either.



> Section 2.2:
>
> Is this an update to 7616 or just an explanation of 7616?
>

No update, just an explanation.


>
> Section 2.4:
>
> "When the UAC receives a response with multiple header fields with the
>    same realm it SHOULD use the topmost header field that it supports,
>    unless a local policy dictates otherwise.”
>
> Why a SHOULD? I would prefer a MUST.
>

I can do that, but the last part of this paragraph states that local policy
can override this recommendations anyway.
So, does it make any difference?


>
> “When the UAC receives a 401 response with multiple WWW-Authenticate
>    header fields with different realms it SHOULD retry and include an
>    Authorization header field containing credentials that match the
>    topmost header field of any one of the realms.”
>
> If you are disallowing multiple Authorization headers for the same realm,
> but with different algorithms I think this should be clearly written. In my
> view, that would be a good thing.
>

This is allowed.


>
>  "8.  Servers MUST be able to properly handle "qop" parameter received
>    in an authorization header field, and clients MUST be able to
>    properly handle "qop" parameter received in WWW-Authenticate and
>    Proxy-Authenticate header fields.  Servers MUST always send a "qop"
>    parameter in WWW-Authenticate and Proxy-Authenticate header field
>    values, and clients MUST send the "qop" parameter in any resulting
>    authorization header field.”
>
> This is not clear. If the servers MUST always send “qop” then we
> add that to SIP 2.0 with no backwards options or compatibility.
> Since you write “clients MUST be able to”… it seems like you
> assume that clients have a choise of whether they use it. I think
> one has to be a bit more clear so developers understands how
> to modify their implementations.
>
> In addition:
> Are we ready to require that all SIP 2.0 compliant software support QOP?
>
>
Here is a quote form RFC3261:

"Use of the "qop" parameter is optional in RFC 2617 for the purposes
of backwards compatibility with RFC 2069; since RFC 2543 was
based on RFC 2069, the "qop" parameter must unfortunately
remain optional for clients and servers to receive."


That is no longer the case with RFC7616.




> I would like to run an online-SIPit when we have software that supports
> this
> so we can test the behaviour, especially looking into downgrade attacks.
>
> Take a look at the security considerations section for more information
about downgrade attacks recommendations.



> And as Dave said, I don’t see any priority in the IANA registry. RFC 7616
> mentions
> “strongest” algorithm. "A user agent MUST choose to use the strongest
> auth-scheme it
>    understands and request credentials from the user based upon that
>    challenge.” and then adds "When the server offers choices of
> authentication schemes using the
>    WWW-Authenticate header field, the strength of the resulting
>    authentication is only as good as that of the of the weakest of the
>    authentication schemes.”
>
> I don’t find any definition of “strong algorithm” in RFC 7616.
>
> See section 3.7
https://tools.ietf.org/html/rfc7616#section-3.7

I will make it clearer.



> Note that this document also suggests that UACs remember the “strongest”
> algorithm used by a specific server/service and refuse a downgrade attack
> - without discussing any implementation issues.
>
>
> Good work. A small step forward!
>
> Cheers,
> /O
>
>
> _______________________________________________
> sipcore mailing list
> sipcore@ietf.org
> https://www.ietf.org/mailman/listinfo/sipcore
>