Re: [rtcweb] IP handling: Using mDNS names for host candidates

Justin Uberti <juberti@google.com> Tue, 12 June 2018 15:39 UTC

Return-Path: <juberti@google.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 D4B6E130E6A for <rtcweb@ietfa.amsl.com>; Tue, 12 Jun 2018 08:39:38 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -18.209
X-Spam-Level:
X-Spam-Status: No, score=-18.209 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, ENV_AND_HDR_SPF_MATCH=-0.5, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, T_DKIMWL_WL_MED=-0.01, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5, USER_IN_DEF_SPF_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.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 IL5bqxznSKHd for <rtcweb@ietfa.amsl.com>; Tue, 12 Jun 2018 08:39:35 -0700 (PDT)
Received: from mail-io0-x234.google.com (mail-io0-x234.google.com [IPv6:2607:f8b0:4001:c06::234]) (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 370DF130E61 for <rtcweb@ietf.org>; Tue, 12 Jun 2018 08:39:35 -0700 (PDT)
Received: by mail-io0-x234.google.com with SMTP id r24-v6so28573926ioh.9 for <rtcweb@ietf.org>; Tue, 12 Jun 2018 08:39:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Wtt4Q5D57fpJrkfF7WLrkNHrPgJPIOodf4E78XV0ncM=; b=XcG3uzIprRJqpgPPonEOlj8zZqjr6m5rtTmoGv2Xs9S9JsFNtCAcEKaaEXDCux4w2o MUhuuAhPI7qO5sDdaX0AHifpPLxxMN0D5QDssV9QiKEMmnHsiw/JWiyNBByU1mGLhHTJ /bI/nUH/qcQ2pEkUkQ3x8L4WuyhR99amCf5JxCLomH7yEm+1w6U0dNxeWlOEpei5eEpQ 6mY7RNfE4HZREhKHfYjm4At3ZmJxU1Rf/oZifdMW37ZZyLi+q363XBmJ8gEPuT46xi1m qHfdW+eZXeHtKqgRm23Cfd7Wo7Z9qcxdGgUTNUwqKaHrMAFQz/g4EHMQDgXyXghXW68g UkoA==
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=Wtt4Q5D57fpJrkfF7WLrkNHrPgJPIOodf4E78XV0ncM=; b=Ku/1OgNp5NHDCQ4U6p7IJmtIQtmGeFwYk5Q5MRokDOwosND0jjS0tNOOP8tR+S5a7H eq2Ke/Mjk1/F+1z7cgFdF+FjE/8JsBqXRq5KrIJMVMY9uGDu0021MIFTpQUZtjm8DZP5 /othblJskiC2dqELEpDuM2Lgii0mB2U9Cif9nHHLCzW0PiqX2h/4ItmicB7JmtS+lg0A KuzY5p898EbxttWBOuQp8bYdBNOQSo6360DEwKO5twR1cYguKNkDQB2ELgzC7VRpYwqP lNpnfL7PyjChFlDGMqO5qye3ggOQG27KNJ56TcSVXlNflzfgSUNiFYvt2lfrujtmBjgP e61A==
X-Gm-Message-State: APt69E2Un9sPEqJebpMAj4Ok0LRFxJDQ2vVEWqLMbKHcbWc/iB06DWtx Wzhomuf+WJuHcsUSnVGRDKd9x5YLAcWIX13Lndj79g==
X-Google-Smtp-Source: ADUXVKJKZSFRczNxE8ahyi1Zsl7qjWMPLujxUgB3fnIENEz+YcnltdF3ntJyI7zx3W0tjQJPGXndtNNHH4khg1cn94k=
X-Received: by 2002:a6b:3245:: with SMTP id y66-v6mr944236ioy.87.1528817974072; Tue, 12 Jun 2018 08:39:34 -0700 (PDT)
MIME-Version: 1.0
References: <CAOJ7v-2FQ3yfyfmFY8MT17nTFUvsNyixKuXXeT-Rq7zVQKBMnA@mail.gmail.com> <436903fe-1ec7-e595-7733-0cc2f9c3a53d@gmail.com>
In-Reply-To: <436903fe-1ec7-e595-7733-0cc2f9c3a53d@gmail.com>
From: Justin Uberti <juberti@google.com>
Date: Tue, 12 Jun 2018 08:39:21 -0700
Message-ID: <CAOJ7v-0Wk2O=mE_Dtyu3h=EargHNAdQpmk9J6pLm65icLQEiCw@mail.gmail.com>
To: Lennart Grahl <lennart.grahl@gmail.com>
Cc: RTCWeb IETF <rtcweb@ietf.org>, yfablet@apple.com
Content-Type: multipart/alternative; boundary="00000000000045f3fd056e73ac1f"
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtcweb/_5pE11JnUDUJx2ym55fOMiYOv2o>
Subject: Re: [rtcweb] IP handling: Using mDNS names for host candidates
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.26
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: <https://mailarchive.ietf.org/arch/browse/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, 12 Jun 2018 15:39:39 -0000

On Tue, Jun 12, 2018 at 4:15 AM Lennart Grahl <lennart.grahl@gmail.com>
wrote:

> On 12.06.2018 02:40, Justin Uberti wrote:
> > The Safari team has come up with a clever approach to avoid disclosing
> > private IP addresses for host candidates. As discussed in this WebKit bug
> > <https://bugs.webkit.org/show_bug.cgi?id=174500>, the technique works as
> > follows:
> >
> >    1. Register a random UUID-based mDNS name when ICE gathering starts
> >    2. Replace the private IP address by a "{UUID}.local" string in each
> >    host candidate (and set raddr to 0.0.0.0 for other candidates)
> >    3. The other party will do mDNS resolution on any candidate having a
> >    .local suffix, similar to how hostnames in candidates are handled in
> RFC
> >    5245, Section 15.1.
> >
> > This technique is relevant to the IP handling document, as it addresses
> one
> > of the lesser problems (private IP disclosure) from the overall problem
> > statement. While I don't think this will have a large impact on the
> > document, including the default mode selection, incorporating this
> > technique would result in some moderate changes:
> >
> >    - Section 5.1 would mention concealing private IPs in the default case
> >    as an explicit goal.
> >    - In Section 6, Mode 2 would change from handling out private IPs to
> >    handing out mDNS names.
>
> IMHO that would create a large gap between mode 1 and 2. Instead, I
> would suggest using mDNS *in addition* to mode 2 and 3. For mode 2 this
> would mean that only the default private IP is being transmitted but all
> other interfaces are hidden by UUID-based hostnames. For mode 3, all
> private IPs are hidden by UUID-based hostnames.
>

I don't see a clear benefit of doing that. If you have the mDNS hostnames,
you don't need the private IPs.

Or, looking at it a different way, if mode 3 is as you describe, why would
we ever use mode 2?

>
> >    - This document would have to describe the technique or point to
> another
> >    document that describes the technique. mmusic-ice-sip-sdp, Section 4.1
> >    <
> https://tools.ietf.org/html/draft-ietf-mmusic-ice-sip-sdp-20#section-4.1>
> > seems
> >    like a good option, as it already covers how to handle DNS names in
> ICE
> >    candidates.
>
> Since this will be useful for ORTC as well, I would not tie that to an
> SDP-specific document.
>

ORTC already depends on this document (it explains ICE restarts, amongst
other things), so I don't see this as an issue. The nice thing about this
document is that it's nearing last call, but we still have time to make
edits like the ones suggested.

>
> > This is a significant improvement and I think we will want to incorporate
> > this suggestion. Is this something we could do as part of this WGLC, or
> > should we look for another option?
> I haven't seen a better solution than mDNS so far to prevent IPs from
> leaking and I would appreciate having this to fix the following issues:
>
> - Allowing browsers to use stricter modes by default without significant
> drawbacks,
> - establishing direct connections even in case no "consent" has been
> given because the devices are in fact in the same network segment (with
> the exception of mode 4), and
> - use cases where gUM cannot be applied and no other way of expressing
> consent has been provided (which is the status quo).
>

Noted. Thanks.