[rtcweb] What is consent?

Martin Thomson <martin.thomson@gmail.com> Tue, 11 September 2012 00:30 UTC

Return-Path: <martin.thomson@gmail.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 834AB21F8701 for <rtcweb@ietfa.amsl.com>; Mon, 10 Sep 2012 17:30:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.599
X-Spam-Level:
X-Spam-Status: No, score=-3.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id T2viQ9fQL4+2 for <rtcweb@ietfa.amsl.com>; Mon, 10 Sep 2012 17:30:09 -0700 (PDT)
Received: from mail-lb0-f172.google.com (mail-lb0-f172.google.com [209.85.217.172]) by ietfa.amsl.com (Postfix) with ESMTP id BA79221F84B6 for <rtcweb@ietf.org>; Mon, 10 Sep 2012 17:30:08 -0700 (PDT)
Received: by lbky2 with SMTP id y2so14811lbk.31 for <rtcweb@ietf.org>; Mon, 10 Sep 2012 17:30:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=O/KxgWowQNsibc9Geg5d4uUn8E1o1lVOpEBXR7hRqj4=; b=iCHpxZuyHnZXsN7Zcskyc0bqa9SzmY5cE7O8b5ceHcqMViZcj8zdk2CzXRZstdTyKW 9DGCoSd9hJk6WOXvg1ViDRM5f5A0/es0tgwUmuNq5eXLpzSSc28CHI837Fw8qvxyH9Ba pbYZdbqw+DKbMSS9znTBmjSOkai6CGaTmNaJVXBcU43YfwDeRbz8dGCNz9e6rLWxLHPU lpI3ZtRGD9msMB+hyjNYXMklofrDywNmKE8IQretpJebQdg8i2PhFb2vJszVvatxF0l6 QlNZUR867mLIijv+6s/GHB3GgoA0NEFMCTxFsFX3ybIa5wD5vsE6bVx88gkjEBNTA6gx pDNQ==
MIME-Version: 1.0
Received: by 10.112.38.228 with SMTP id j4mr5478776lbk.111.1347323407499; Mon, 10 Sep 2012 17:30:07 -0700 (PDT)
Received: by 10.112.1.36 with HTTP; Mon, 10 Sep 2012 17:30:07 -0700 (PDT)
Date: Mon, 10 Sep 2012 17:30:07 -0700
Message-ID: <CABkgnnXAPZ5BN=CUwYdEpHKbCLBxctqpONL==QWf_WwgrNEK_A@mail.gmail.com>
From: Martin Thomson <martin.thomson@gmail.com>
To: Eric Rescorla <ekr@rtfm.com>, rtcweb@ietf.org
Content-Type: text/plain; charset="UTF-8"
Subject: [rtcweb] What is consent?
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, 11 Sep 2012 00:30:10 -0000

What specific properties of a STUN Binding request does the browser
use to determine that the peer has consented to receive packets?

>From what I can infer, it's simply the existence of a response.  That
is insufficient.

-security says:
   [...]  ICE provides this verification as
   well, by using the STUN credentials as a form of per-session shared
   secret.  Those credentials are known to the Web application, but
   would need to also be known and used by the STUN-receiving element to
   be useful.

But that's not strictly correct.  The Binding response necessarily
does not include MESSAGE-INTEGRITY, which is the critical tie to
per-session credentials.

What then would prevent the browser from mistaking a response from a
STUN server as consent?

The STUN server doesn't need to check MESSAGE-INTEGRITY and USERNAME
is systematically ignored where it is not used, so we can't rely on
the server doing something helpful for itself.  I imagine that
stunserver.org could be made safe because it doesn't provide
FINGERPRINT in responses (it's 3489 compliant, not 5389).  But what a
5389 STUN server?

Hopefully, I'm just missing something.  But this has been bugging me.

--Martin