Re: [rtcweb] Please require user consent for data channels

Eric Rescorla <ekr@rtfm.com> Fri, 17 July 2015 17:58 UTC

Return-Path: <ekr@rtfm.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A766C1ACE2F for <rtcweb@ietfa.amsl.com>; Fri, 17 Jul 2015 10:58:46 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.977
X-Spam-Level:
X-Spam-Status: No, score=-1.977 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham
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 UHULJrmrVSgJ for <rtcweb@ietfa.amsl.com>; Fri, 17 Jul 2015 10:58:44 -0700 (PDT)
Received: from mail-wg0-f43.google.com (mail-wg0-f43.google.com [74.125.82.43]) (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 352A01ACE2E for <rtcweb@ietf.org>; Fri, 17 Jul 2015 10:58:44 -0700 (PDT)
Received: by wgkl9 with SMTP id l9so87758997wgk.1 for <rtcweb@ietf.org>; Fri, 17 Jul 2015 10:58:43 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type; bh=3ffMSN82/SeosWHPl/XzkPpXax9EqV5Bc8mPM3S+wsY=; b=j3UWWkXQTgU/uWNtmCtSYAuXs8EXGlKRrfyCkZiWvQUdeyYVkt9CVhmAl5320QzCGt 4tglo2myuConaIs6t7mG47hvOmF0H7WO93snzy2aj7mhP5qBs7ocsap8EHIRgsvs6AgX 3rNFb0LqRvQWcThoDDRNMuZmYCvOohWuM+p2hpiFDy0FMECnR6Kb8Z3anrR5rjr+TLQe NDlwqEwHW/5dzAnttqU15JFTAjDqlQXhDn5uMn4Lj+0gkAkUSLB8i4/bY9tXGkS5kpFx WAe2kz90Bf5ZI4Cgc5Nl5mc0o0kOTWFQpuRXbOYXiBR0O6Fogt3TfFc/JEFfPQTrIzKv J1OA==
X-Gm-Message-State: ALoCoQnczviVhuf9L/2B0AbVhBZeFigGxqeQbjPHB1uajpi8vU562y4oCUSJvAFAeIbhyHkrq5iY
X-Received: by 10.180.87.168 with SMTP id az8mr18038694wib.53.1437155922983; Fri, 17 Jul 2015 10:58:42 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.27.85.75 with HTTP; Fri, 17 Jul 2015 10:58:03 -0700 (PDT)
In-Reply-To: <CA+65OspX8L1vB_Q5VJ+P3GqJ7Z0H_xyPfzMu-S=FVLv7Ho4TdQ@mail.gmail.com>
References: <CA+65OspMD_PVjk0BXh7t4LtjmFDcDatoeNjFQOO_OVtC-Br+OA@mail.gmail.com> <55A22A1B.4000202@gmail.com> <CA+65OspKCvwFh0GebiuUrhdtaL9zxYKLw04HdKEfewLCWQ+ZpQ@mail.gmail.com> <804017F1-0211-43F0-9CE3-1F51A9C9E705@lurchi.franken.de> <55A4097F.3060106@mozilla.com> <CA+65OspX8L1vB_Q5VJ+P3GqJ7Z0H_xyPfzMu-S=FVLv7Ho4TdQ@mail.gmail.com>
From: Eric Rescorla <ekr@rtfm.com>
Date: Fri, 17 Jul 2015 10:58:03 -0700
Message-ID: <CABcZeBNufDHW9ogVvLHtGcEockW0A_uFCatDniPR7X2EWkPJ+Q@mail.gmail.com>
To: Daniel Roesler <diafygi@gmail.com>
Content-Type: multipart/alternative; boundary="90e6ba181b8246c571051b15f02b"
Archived-At: <http://mailarchive.ietf.org/arch/msg/rtcweb/Y1t9MqsBQ9O_NlLlzxNbe_NMxB8>
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Please require user consent for data channels
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.15
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: Fri, 17 Jul 2015 17:58:46 -0000

On Fri, Jul 17, 2015 at 10:51 AM, Daniel Roesler <diafygi@gmail.com> wrote:

> On Sun, Jul 12, 2015 at 1:15 PM, tim panton <tim@phonefromhere.com> wrote:
> >
> > The problem is that those VPNs are misconfigured.
> >
>
> It appears that both built-in L2TP and PPTP VPN options for OSX cannot
> be configured to hide the real IP address from WebRTC, even if you
> select the option to route all traffic through the VPN[1]. You need to
> install an OpenVPN client like Tunnelblick in order to hide your real
> IP from WebRTC. As soon as I get some time on a Windows box, I'll
> investigate the default behavior there.
>
> [1]: https://i.imgur.com/Hyq1zLz.png
>
> Since this is the behavior for built-in VPN options, and even if you
> select the "send all traffic over VPN" setting, I disagree with the
> sentiment that it's the user's fault or that the VPN has been
> misconfigured. WebRTC should assume default behavior for operating
> system VPN behavior and apply additional security steps to protect the
> user when the operating system falls short. Blaming the operating
> system is no excuse when you know the problem exists and you have the
> means to protect the user.


Rather than trying to decide who's responsibility this is, I suggest it
would be
more productive to ask whether there's some way for the browser to determine
whether the VPN has been configured in this way. If there is, then I at
least
would be willing to investigate whether it's possible for the browser to
behave differently in these cases.

For starters, I would ask what netstat -rn shows in these cases.



> On Mon, Jul 13, 2015 at 11:54 AM, Timothy B. Terriberry
> <tterriberry@mozilla.com> wrote:
> >
> > These issues are all detailed in
> > <https://tools.ietf.org/html/draft-ietf-rtcweb-security-arch>. I would
> > encourage those participating in this thread to read that document. We
> could
> > always benefit from additional review.
>
> -------<snip from Section 5.4>-------
>    API Requirement:  The API MUST provide a mechanism to allow the JS to
>       suppress ICE negotiation (though perhaps to allow candidate
>       gathering) until the user has decided to answer the call [note:
>       determining when the call has been answered is a question for the
>       JS.]  This enables a user to prevent a peer from learning their IP
>       address if they elect not to answer a call and also from learning
>       whether the user is online.
> -------</snip from Section 5.4>-------
>
> I'd like to request that "suppress ICE negotiation (though perhaps to
> allow candidate gathering)" be changed to "suppress ICE negotiation
> and candidate gathering". That would be enough to require user consent
> before local and VPN IP addresses are gathered.


This wouldn't address your issue, because this is under *API* control.
the purpose of this section is not to protect the user from the site but
rather to allow the site to provide privacy features for the user.


-Ekr