Re: [Captive-portals] Review of draft-wkumari-capport-icmp-unreach-01

David Bird <dbird@google.com> Sun, 02 April 2017 21:04 UTC

Return-Path: <dbird@google.com>
X-Original-To: captive-portals@ietfa.amsl.com
Delivered-To: captive-portals@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 938EF128AB0 for <captive-portals@ietfa.amsl.com>; Sun, 2 Apr 2017 14:04:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RP_MATCHES_RCVD=-0.001, 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=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 9wtzLtrtnNJB for <captive-portals@ietfa.amsl.com>; Sun, 2 Apr 2017 14:04:11 -0700 (PDT)
Received: from mail-qk0-x232.google.com (mail-qk0-x232.google.com [IPv6:2607:f8b0:400d:c09::232]) (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 BD7C2129329 for <captive-portals@ietf.org>; Sun, 2 Apr 2017 14:04:10 -0700 (PDT)
Received: by mail-qk0-x232.google.com with SMTP id d10so101080989qke.1 for <captive-portals@ietf.org>; Sun, 02 Apr 2017 14:04:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=3PqHJaqqe3cXkAzxzCeG0PSId+C83+r2j8Xo/LsG89s=; b=ku+iFU730OOf/miarULOr0TQ7wjw/2iyM0X6rUirgIuAPodONkqdcCDm1N8JaJA08p ycMKlkfB7ORHKGI/8yFtpNXqQmhHJwvlgHLdZa1uVU6fwpnYW6JlwlBnt5Z/pwsFu/HC 5DNVfAZabwkSFLG0ZA6tEFdvzHI1TvrTc5FVp53B/7qwdRwMXXWDjXXowRMAv5eYdwJ5 bCktsBG6V8jDLDhdfJuANstlK8fwQwz9j0OvUCbzRkeZwsz/VI3XjYvG4sTTuEmX85vh C2QEWh4dnyq7jlVQZ32p6IHU9LSf28YiO1RowQTr4axG2Bkgj1FRiamlHqrC/t+5gXSg vERw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=3PqHJaqqe3cXkAzxzCeG0PSId+C83+r2j8Xo/LsG89s=; b=q6Ym03+Z1uQIO/soRfAdv4lVKLisNxf+wS+ozk1D+gEV6Rvix3LTf0xYbu8oQHdcEy yfIwcAPq7XuRyXcTAHddgRRj6JgYfAlIOI9s9cQ3tOCetdjSHNRJY4y3YCGl3eUnaktO 2IzCzGCdx7vwvN0eTe8LoHT5dZM6ndMTqMiX9UINGLRR8HZ3tLgo2lnLmAC0cVb9Ds2y VDLvuKM3GPc4sxKkEtIz1pNuXFEn/aO56FhshYqrd4/KOqvULYAsdVtPtMA6vq0U55j8 h5jwp2d+pR6gjOfoUC3XB1bwnmS7T0t1uUsgIz39cuVodcscwRnUtm79I5m/2MmPhAfM 4aIQ==
X-Gm-Message-State: AFeK/H1M4uHDzXUezbv9j4Qcqgkp/nPmjCaeb6QUY34sGBEjrn6hWwXfw2xK6pL9xD6eSu1yoE2xNGWmGZVAQF4r
X-Received: by 10.55.76.194 with SMTP id z185mr12283046qka.281.1491167049715; Sun, 02 Apr 2017 14:04:09 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.12.128.233 with HTTP; Sun, 2 Apr 2017 14:04:09 -0700 (PDT)
In-Reply-To: <20170402190447.7209037.92389.5290@sandvine.com>
References: <CABkgnnXkDSnn2C3cFtdcsX+chDMqnbZO9t5pp4dVMaVLQPXAig@mail.gmail.com> <CADo9JyXScL4sDtx13pPAanfAoBj0mE4f9D-pGRXDcmKqPz4K+Q@mail.gmail.com> <20170402190447.7209037.92389.5290@sandvine.com>
From: David Bird <dbird@google.com>
Date: Sun, 02 Apr 2017 14:04:09 -0700
Message-ID: <CADo9JyWMfjHqh-xi9kvCnXZTw_7WBaZ4eMNFi4hUD+v8OiKgPg@mail.gmail.com>
To: Dave Dolson <ddolson@sandvine.com>
Cc: Martin Thomson <martin.thomson@gmail.com>, "draft-wkumari-capport-icmp-unreach@ietf.org" <draft-wkumari-capport-icmp-unreach@ietf.org>, "captive-portals@ietf.org" <captive-portals@ietf.org>
Content-Type: multipart/alternative; boundary="001a114a896a4d0237054c356246"
Archived-At: <https://mailarchive.ietf.org/arch/msg/captive-portals/sOfin4AeFq0cUK-A1xi6rXOB1t8>
Subject: Re: [Captive-portals] Review of draft-wkumari-capport-icmp-unreach-01
X-BeenThere: captive-portals@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Discussion of issues related to captive portals <captive-portals.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/captive-portals>, <mailto:captive-portals-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/captive-portals/>
List-Post: <mailto:captive-portals@ietf.org>
List-Help: <mailto:captive-portals-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/captive-portals>, <mailto:captive-portals-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 02 Apr 2017 21:04:14 -0000

I don't disagree that ICMP should only be meant for signaling... each field
needs to be considered separately.

Session-ID : this bit of information is actually helping a UE determine
authenticity [Marin's suggestion of the UE 'sampling' a few packets to
random IPs and ports (to build a bit of entropy) and expect capport ICMP
responding with a consistent SessionID].

The Validity and Delay together help clarify a few things to the UE, like
how often or when it should expect ICMP Dest Unreach (e.g. NAS sets
Validity to 5s and does not repeated send ICMP back to the UE for the same
tuple, while using Delay to indicate a soon to change SessionID).

The PolicyID (probably poorly named) is meant as a 'hint' -- to help the
portal know *something* about the reason you were sent to the portal -- be
http redirect, rate limiting reasons, etc. This value shouldn't have much
value, can be site specific, and it just informational.



On Sun, Apr 2, 2017 at 12:04 PM, Dave Dolson <ddolson@sandvine.com> wrote:

> David,
> Thanks.
> I see you have added more information to the ICMP packet. This of course
> makes validating the ICMP message more important, whereas if the ICMP
> packet were only a trigger to visit the API, it would be the API that
> implements the security.
>
> ‎My opinion has been that the ICMP message should only say "unreachable
> because captive portal", which makes the ICMP risk only a DoS concern -- no
> different than ICMP today -- which if a real concern should be addressed
> for the ICMP protocol in general.
>
>
> David Dolson
> Sandvine
> *From: *David Bird
> *Sent: *Saturday, April 1, 2017 8:18 PM
> *To: *Martin Thomson
> *Cc: *draft-wkumari-capport-icmp-unreach@ietf.org;
> captive-portals@ietf.org
> *Subject: *Re: [Captive-portals] Review of draft-wkumari-capport-icmp-
> unreach-01
>
> I've updated the draft to -02 - sorry for not doing so sooner.
>
> Contributors (and co-authors) welcome!
>
>
> On Sat, Apr 1, 2017 at 1:40 PM, Martin Thomson <martin.thomson@gmail.com>
> wrote:
>
>> (As a contributor only.)
>>
>> David, Warren,
>>
>> Looking at this draft, I think that there are a few fairly major
>> changes that this could benefit from.
>>
>> # Extension payload
>>
>> The presence of the extension is sufficient signaling for this channel.
>>
>> If we accept that there will be a protocol for asking the portal for
>> basic information about connectivity, the UE/device/etc can query that
>> interface for expiration time.
>>
>> The warning bit seems dangerous in this context given that it
>> establishes a non-backwards-compatible behaviour.  To an entity that
>> doesn't understand this extension, ICMP Unreachable means that the
>> packet was not forwarded.  I don't think that an extension can safely
>> change this.
>>
>> The one obvious caveat for this comment is if we determine that RFC
>> 7710 is insufficient for advertisement of the captive portal URL.  In
>> that case, we might consider adding the URL to the ICMP message.  I
>> don't see any evidence that this is necessary yet, and that would
>> compound the next issue, but it's something to consider.
>>
>> # Security considerations
>>
>> There is a fairly direct path between this message and a user visiting
>> the site identified.  Now, it is well-accepted that it is easy to
>> cause a user to visit any site, but nonetheless this needs to be
>> discussed.  We can also offer some suggestions for reducing the use of
>> this message by arbitrary endpoints.  For example, a device that
>> receives this message might not act immediately, but instead trigger
>> portal detection routines before opening a browser.  Those routines
>> might involve sending more packets and looking for more ICMP
>> unreachable packets.
>>
>> For this reason, I think that we should mandate the use of RFC 4884
>> and a minimum size for the echo of the dropped packet.
>>
>
>