Re: [multipathtcp] MPTCP backup flag attack via MP_PRIO message

Zhiyun Qian <zhiyunq@cs.ucr.edu> Thu, 20 July 2017 15:55 UTC

Return-Path: <qzy888@gmail.com>
X-Original-To: multipathtcp@ietfa.amsl.com
Delivered-To: multipathtcp@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 185AC12EC32 for <multipathtcp@ietfa.amsl.com>; Thu, 20 Jul 2017 08:55:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.45
X-Spam-Level:
X-Spam-Status: No, score=-1.45 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25, FREEMAIL_FORGED_FROMDOMAIN=0.199, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=no 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 oE_pY9tp3_8A for <multipathtcp@ietfa.amsl.com>; Thu, 20 Jul 2017 08:54:58 -0700 (PDT)
Received: from mail-ua0-x22d.google.com (mail-ua0-x22d.google.com [IPv6:2607:f8b0:400c:c08::22d]) (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 7ACF512F268 for <multipathtcp@ietf.org>; Thu, 20 Jul 2017 08:54:56 -0700 (PDT)
Received: by mail-ua0-x22d.google.com with SMTP id 80so26432125uas.0 for <multipathtcp@ietf.org>; Thu, 20 Jul 2017 08:54:56 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-transfer-encoding; bh=FH382q/Fjnq1MSB8b24nINcZqQVZQYDbIz6UYibn2dE=; b=omY+PAvuNQRQlSIPCdOpTTvaU6H6QtP6ZRaff6ew2/V5VXSSaMfI4ZQuTN6FqXfitF 6B4H2hisKfQtUkTHP3ambNQXLALUrFgO2UrrUivuulsvX7gFPmOP/pePzTRXOTV+fol7 IDl02e1r4lGWwOhttdgBf88SjIqAzzLbXTzJOl5QhdqQG6Z2eQXrlWdupWfAGzzmZ1yM Fxp+epz4vC+5zw+UNDnXoXc0C7lTr37YeO0TSVKmLUKeKJ7aNcQnkSITdIwHqm5IkGxS Ytz7yhULasCKQr4cCmYydGmZurSBy5Fjem1Z2u9arbLgrdDZ5iM1W1RjKx3FrPMiVJW/ az6w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc:content-transfer-encoding; bh=FH382q/Fjnq1MSB8b24nINcZqQVZQYDbIz6UYibn2dE=; b=Pg6pbucv1MjdNsLHD2toq5jgTvBTdEeXceLG2eU40X/e9YDZdUVm3Qb0DqLLviORXY eASMv1LXIrjXR7azdq0UiKvia1XSFethdfCOhYT4V3x9yH30GpxgPOJnpRog7uqvlX4R 8go8FQc1EP19scnYK8bQdylm2ghCZyt0EjVCIAU+KCJQnwWQbCqlRYT+xPJAyHPdgf8e RivIzOom6aAsJYxCO+fayDX+apuaqSgD8HyrhQKxjlFtbfErCpgjbI8gjGPF1AtHo3Lj IQZ9Hl2V1DTGPfqJeThukfgr95VhEET/fRrK5o9htUxX7M9o0lZouc/7yzeTMwPnc7JR ybFQ==
X-Gm-Message-State: AIVw110zg1oI6elVhRNYYvRadDm5w9bhv8cZF9x6Gnv7G7FIDRzhJc4K v2zxjun9+vSXsEHM2jH0/cyx6VMxbw==
X-Received: by 10.31.150.143 with SMTP id y137mr2397291vkd.154.1500566095512; Thu, 20 Jul 2017 08:54:55 -0700 (PDT)
MIME-Version: 1.0
Sender: qzy888@gmail.com
Received: by 10.103.149.65 with HTTP; Thu, 20 Jul 2017 08:54:54 -0700 (PDT)
In-Reply-To: <D13C88F7-2CB6-4D84-9FAD-DA10FEE7546C@gmail.com>
References: <800c331f808d608354fc00be24283cb6.squirrel@webmail.cs.ucr.edu> <742E211F-F754-4149-88E2-3BE51645F49D@gmail.com> <c0929925-1b3a-e36c-511d-bda3da312a71@uclouvain.be> <20170720152058.GJ3049@Chimay.local> <D13C88F7-2CB6-4D84-9FAD-DA10FEE7546C@gmail.com>
From: Zhiyun Qian <zhiyunq@cs.ucr.edu>
Date: Thu, 20 Jul 2017 08:54:54 -0700
X-Google-Sender-Auth: 4EKRB7RdBrlwy8ojlF8VkvdYNwU
Message-ID: <CALvgte9Nz4aBHCOVF5Kjv2G5wUt7WAgC4XXp+dAyjOR0ZdQ6Rw@mail.gmail.com>
To: Alan Ford <alan.ford@gmail.com>
Cc: Christoph Paasch <cpaasch@apple.com>, Olivier Bonaventure <Olivier.Bonaventure@uclouvain.be>, multipathtcp@ietf.org, Zubair <zubair-shafiq@uiowa.edu>, Franck Le <fle@us.ibm.com>, Alex Liu <alexliu@cse.msu.edu>, Ali Munir <munirali@msu.edu>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/multipathtcp/NH4urp1tFnsiEWLrQaiTydI0jQA>
Subject: Re: [multipathtcp] MPTCP backup flag attack via MP_PRIO message
X-BeenThere: multipathtcp@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Multi-path extensions for TCP <multipathtcp.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/multipathtcp/>
List-Post: <mailto:multipathtcp@ietf.org>
List-Help: <mailto:multipathtcp-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/multipathtcp>, <mailto:multipathtcp-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 20 Jul 2017 15:55:00 -0000

I thought MP_PRIO message may theoretically be useful if subflow A is
congested already so it needs to use subflow B to signal the fact that
subflow A will become a backup.

Best,
-Zhiyun


On Thu, Jul 20, 2017 at 8:33 AM, Alan Ford <alan.ford@gmail.com> wrote:
> Comments inline...
>
> On 20 Jul 2017, at 16:20, Christoph Paasch <cpaasch@apple.com> wrote:
>
> On 20/07/17 - 17:05:40, Olivier Bonaventure wrote:
>
> Alan,
>
>
> Please bear in mind that the goal of MPTCP with respect to security, as
> discussed in the original architectural design in RFC6182, is to provide a
> security model no worse than TCP. So whilst this attack would be possible,
> it can only be done by an on-path attacker, and if succeeded would allow the
> on-path attacker to intercept all traffic. Which would be the same for a
> single-path TCP connection on the same path.
>
> As a side point, the same kind of attack could be launched via REMOVE_ADDR
> messages, but this would not succeed since this is specified with some
> protection - ensuring the subflow is really unavailable through the use of
> TCP keepalive signals. This same protection cannot be used against the
> MP_PRIO since the referenced subflow is not unavailable.
>
> If the WG considered this risk worth addressing, we could look at adding a
> nonce + signature to MP_PRIO.
>
>
> Since the attacker is on path, this does not help if the attacker is on the
> first path.
>
>
> That scenario has always been out of scope. If an attacker has observed the
> initial exchange, all bets are off, and we are only as secure as single-path
> TCP.
>
> We discuss several solutions in a forthcoming paper [ICNP2017], but a
> simple approach to cope with this attack would be to reconsider the
> utilisation of the address identifier in the MP_PRIO option. This
> option allows a host to set/change the priority of all the subflows
> associated to a given address identifier on another subflow. It could
> have use cases, such as sending MP_PRIO over a WiFi subflow to put the
> cellular subflow in backup mode without sending a packet over the
> cellular interface, but this looks like an edge case. Looking at the
> attack that we have identified, the working group should evaluate the
> removal of the address identifier in rfc6824bis. If the MP_PRIO option
> does not include an address identifier, then it becomes impossible for
> an attacker who is on-path of a given subflow to change the priority
> of the other subflows.
>
>
> Remove the address identifier from the MP_PRIO seems a safe solution to me.
> I do not see a benefit in sending MP_PRIO on another subflow than the one
> that you want to affect.
>
>
> +1
>
> As far as I know, there is no implementation that relies on the address-ID
> in the MP_PRIO to signal the priorities.
>
>
> So the main reason for this was to permit the signalling of backup for a
> subflow which was also signalled via ADD_ADDR. ADD_ADDR does not have a ‘B’
> bit in it, so the priority would be signalled separately.
>
> We could add the prio bit to ADD_ADDR to resolve this issue. However, this
> limits extensibility in MP_PRIO e.g. with other signals which have been
> suggested in the past ("backup but do not open”, use for differing traffic
> types, etc).
>
> Regards,
> Alan
>
>