Re: [IPsec] Teaser for pitch talk at IETF 108

"Scott Fluhrer (sfluhrer)" <sfluhrer@cisco.com> Wed, 29 July 2020 16:57 UTC

Return-Path: <sfluhrer@cisco.com>
X-Original-To: ipsec@ietfa.amsl.com
Delivered-To: ipsec@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 462023A0CCE for <ipsec@ietfa.amsl.com>; Wed, 29 Jul 2020 09:57:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.62
X-Spam-Level:
X-Spam-Status: No, score=-9.62 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com header.b=GFNJfbLQ; dkim=pass (1024-bit key) header.d=cisco.onmicrosoft.com header.b=aLsE9Xbs
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 TP1gB841egVV for <ipsec@ietfa.amsl.com>; Wed, 29 Jul 2020 09:57:12 -0700 (PDT)
Received: from alln-iport-8.cisco.com (alln-iport-8.cisco.com [173.37.142.95]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 876883A0CC7 for <ipsec@ietf.org>; Wed, 29 Jul 2020 09:57:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=7904; q=dns/txt; s=iport; t=1596041832; x=1597251432; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=nveX8LAI9BUs5H72QQDkJXWl/Gx8WOZOdu9uYqfntXk=; b=GFNJfbLQEo0PR6aiAyf43aud5gY6roSchh4oW6dhRTW47t62VxdeUls/ +e/u4EN8FFBVrO88Me62Zl/+eCEl443cGE6hDgJRPd/9sMByu78esTlzu f9Lp/UCrMJv1lvxtmx61v/KtJAeCtJdsy/5Xwp7ISibKpVtgo1sH5cYw7 Q=;
IronPort-PHdr: 9a23:a5SrqxJ3GxHgdAKqAtmcpTVXNCE6p7X5OBIU4ZM7irVIN76u5InmIFeGv68/kEKMXIHe5vRNlqzavvOoVW8B5MOHt3YPONxJWgQegMob1wonHIaeCEL9IfKrCk5yHMlLWFJ/uX3uN09TFZXiehjTpni/6zcPXBnyZkJ5I+3vEdvUiMK6n+m555zUZVBOgzywKbN/JRm7t0PfrM4T1IBjMa02jBDOpyhF
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0A3AAAEqiFf/5pdJa1GGhsBAQEBAQEBAQUBAQESAQEBAwMBAQFAgTgEAQEBCwGBUVEHb1gvLAqEK4NGA41OigKOX4EugSUDVQsBAQEMAQEjCgIEAQGETAIXgg0CJDYHDgIDAQELAQEFAQEBAgEGBG2FXAyFcQEBAQECARIREQwBATcBBAcEAgEIEQQBAQMCJgICAh8RFQgIAgQOBQgagwWCSwMOIAEOO6N4AoE5iGF2gTKDAQEBBYUSDQuCDgMGgQ4qAYJug1+DdIEIgSYdGoFBP4ERQ4IfLj6BBIEWQgQXgSQBASIVgn8zgi2PXYMToiYkTgqCX48ahWyFGp90nzSSCwIEAgQFAg4BAQWBWgUugVdwFYMkUBcCDY4eDBeDToUUhUJ0AjUCBgEHAQEDCXyOUQGBEAEB
X-IronPort-AV: E=Sophos;i="5.75,410,1589241600"; d="scan'208";a="535101497"
Received: from rcdn-core-3.cisco.com ([173.37.93.154]) by alln-iport-8.cisco.com with ESMTP/TLS/DHE-RSA-SEED-SHA; 29 Jul 2020 16:57:07 +0000
Received: from XCH-ALN-002.cisco.com (xch-aln-002.cisco.com [173.36.7.12]) by rcdn-core-3.cisco.com (8.15.2/8.15.2) with ESMTPS id 06TGv7te000800 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Wed, 29 Jul 2020 16:57:07 GMT
Received: from xhs-rtp-003.cisco.com (64.101.210.230) by XCH-ALN-002.cisco.com (173.36.7.12) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 29 Jul 2020 11:57:06 -0500
Received: from xhs-rtp-001.cisco.com (64.101.210.228) by xhs-rtp-003.cisco.com (64.101.210.230) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 29 Jul 2020 12:57:06 -0400
Received: from NAM10-BN7-obe.outbound.protection.outlook.com (64.101.32.56) by xhs-rtp-001.cisco.com (64.101.210.228) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Wed, 29 Jul 2020 12:57:06 -0400
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZUwZHulFvqWvIfscyXcs4A7BnJ2KG4J4RMxULQptwbypNG1vNdW7nTsqx3LvGF4NPOqeJnIWzAcwL7y+rOhEHjBPE+ZvzRTiH02zexESWNrkkVK6uLFtY0tTENduID8abMmxmTsctKFUzcUwixUi5TwlavGNmeCKhKm0ru23/3pGvU1ozh3ZlvWiEMdzfFNMph6xnrlOLJ6oAsAOVmTDpEXHVsN89H5m5maISri5urFRUu3du9gC96ldNn92p2iYMTTCb8X+VmXV2DsT2Ixdm0OwCYUrN+/vFnv5JLXLJWhe9nBpChPL1t8Z3JxHw7ong7RLWh6ZRp3hH6kYhf3KvQ==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nveX8LAI9BUs5H72QQDkJXWl/Gx8WOZOdu9uYqfntXk=; b=iIUHjsZ+elQkOrIeIa0snq8A/4srKyuyznGb3Ys2RMLrthSRLvzsbWvQMufoZNLSS99k9XJmZ/hWVnZTYG1B1MTIcPupKv0QFUSgYds8djtAjChJWAwy81XuiZtUUAm+ZoYTryUrrqOJVN+E2nE5lJ2QihRmWmAWfcAWIkNmkiPnJLk5xO7Vs4V5zsIIPqHlzRxxk0Raw9OW07UFhfENqQ/sL3I+KWKI6SDk3cwTjZzgwQjHbiYjdZk7Oq1602ZyYrKqyd8C/7vMXfAJnTLDtWF3LsZjKHGAeTQPc0jLxYnnPvB3jeWTAounmZtwbw5iLoUZkBAes63TU+0PYTofnQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cisco.com; dmarc=pass action=none header.from=cisco.com; dkim=pass header.d=cisco.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.onmicrosoft.com; s=selector2-cisco-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=nveX8LAI9BUs5H72QQDkJXWl/Gx8WOZOdu9uYqfntXk=; b=aLsE9Xbs+1NlKXCFIm09ysB9HtrgYzNtkiZtWbLuArKXwirNobVgGuczywTAFG1OukmUz6uY3iYGiR4UdZnfl0H6W5ue2L3F2Uc9Ei/FDVsxyd7hvdolptzX+R6dl/7KUB7q/JbfOg6e/Dl5wiTbXmbKH5p8SqbPu1sutEBMrBc=
Received: from BN7PR11MB2641.namprd11.prod.outlook.com (2603:10b6:406:b1::25) by BN8PR11MB3715.namprd11.prod.outlook.com (2603:10b6:408:85::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3239.17; Wed, 29 Jul 2020 16:57:05 +0000
Received: from BN7PR11MB2641.namprd11.prod.outlook.com ([fe80::5018:edeb:b77d:4d65]) by BN7PR11MB2641.namprd11.prod.outlook.com ([fe80::5018:edeb:b77d:4d65%3]) with mapi id 15.20.3216.034; Wed, 29 Jul 2020 16:57:05 +0000
From: "Scott Fluhrer (sfluhrer)" <sfluhrer@cisco.com>
To: Michael Rossberg <michael.rossberg@tu-ilmenau.de>
CC: 'ipsecme mailing list' <ipsec@ietf.org>
Thread-Topic: [IPsec] Teaser for pitch talk at IETF 108
Thread-Index: AQHWYBKzgiV8IDTYWUmmokuEibQdmKkcrdKAgAGxdYCAADcggIAALvYAgAAEYRA=
Date: Wed, 29 Jul 2020 16:57:04 +0000
Message-ID: <BN7PR11MB2641188310EEA8839E548E98C1700@BN7PR11MB2641.namprd11.prod.outlook.com>
References: <023E45E1-B1AA-4042-A8E3-DD7457235BC7@tu-ilmenau.de> <0fd501d664b6$fcc8c590$f65a50b0$@gmail.com> <20200729100457.GD20687@gauss3.secunet.de> <24353.30727.115426.454334@fireball.acr.fi> <BF92F70B-C62D-4CB2-829B-B2B6808709F9@tu-ilmenau.de>
In-Reply-To: <BF92F70B-C62D-4CB2-829B-B2B6808709F9@tu-ilmenau.de>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: tu-ilmenau.de; dkim=none (message not signed) header.d=none;tu-ilmenau.de; dmarc=none action=none header.from=cisco.com;
x-originating-ip: [173.38.117.78]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: e25e4c84-886d-439e-6f2d-08d833e06c11
x-ms-traffictypediagnostic: BN8PR11MB3715:
x-microsoft-antispam-prvs: <BN8PR11MB37155EA0E7678A2989B42357C1700@BN8PR11MB3715.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:8273;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: JI3W626PwCP41PPKHmsnvdnnUQvDxuqOiDoVC7xy6xOsFBd5U6CmqT9sdf63mH8O2vkypX6G0eKl4ezeLZ+VbIaTluLe5FZJJT1c9dtZwb4WQmgp7KmNCa3LOOSwdZe2Np03JmV+X9FFWKn/PM5bOe9qmqqOt36WvjbYbVaF6luOAJWvED8YG4LTlEi5ugRgPSSTi6BSLkqxG/E4oZRAs5e560QmUwfH6PT9iWHaWw/o+geGhcV6o24if6TeSZfBuzVTwsxxj4sUUj9heGt70JIlBgjvUC4/vuIDbJrfy4bNZ4kNeG40Htfrm2EvznSq5WbVgqS3DYvb7LJg06WST+eLUNyjpoIAVYiyMgPSISz9jQdqPgzH8gembPyHzCL/7d/zrMHVaq3PFzrHxTApfA==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN7PR11MB2641.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFTY:; SFS:(4636009)(39860400002)(396003)(346002)(376002)(366004)(136003)(478600001)(33656002)(83380400001)(9686003)(966005)(6916009)(8936002)(2906002)(4326008)(55016002)(8676002)(71200400001)(5660300002)(6506007)(16799955002)(52536014)(316002)(7696005)(66446008)(64756008)(66556008)(66476007)(76116006)(66946007)(53546011)(26005)(186003)(86362001); DIR:OUT; SFP:1101;
x-ms-exchange-antispam-messagedata: EtHJ7ID6ixgC8mp0b0JThDijwweh30Q0vscN36nX/p8D02ZqUok5Pxgf/+5+eCFvrLRXknwuD9eQe2tSpdWu4tj1ZKsCauu8YqKkylzMyQhlStLdgAPBMu/35P6oA/WbJjPON2CB6bSojozzb3YRlRXyRsKFWK2N7NPc46m8lJV1Od9EdRPkvoVQCww/oXAKj4SeofD5WSvYOafDtduCUBS+aqvNPVtYXRPb3h9hlN10cqAX8K5NoGWoe/bRhbg+y7b01gyQNocxC1otsxCWq7l/38Ita+ir81KI0+74P5CwUysoXps0RJByUNhs6gsw4d4b4bett/Q0XzBdQQKNu95aYRl4gwvHk9zcsdBdII1HlQV4AbA6ZI2YN8SLJai7nen7SEvirTTuuNPETWB8s8lwAG6rgh0IWPI+39uaF2ly9IjdZqoMV1NzEXpdn/coiU7BSYLeT9wRJ130p8iqWRjVXNvPn2AbHJ65UlHI6+2xSbLUk5QUc32XpDJCzKc4nZIBSlb4fI1nMbZ6rgJFfRCEDbdXM9ZnVi+EatHaqdERd/purDfyt6pJvDjXBucLKWn8bkAcD+1Qo1bt2fGvSxjkbuelCJAl4ev21S5tvKNgrvnoQ4R/asWj/WP+HiExrGDgE1iw9nDwoQ0TIMeXVA==
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: BN7PR11MB2641.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e25e4c84-886d-439e-6f2d-08d833e06c11
X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Jul 2020 16:57:05.0538 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5ae1af62-9505-4097-a69a-c1553ef7840e
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: dl5o89iFFjH8OBDiLXGldL4TKZXfClImPuF1g/DGUq96kAO8CTFSKDo/99exfoMlNZXZO/1K8OG3JOJMsa0VZw==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR11MB3715
X-OriginatorOrg: cisco.com
X-Outbound-SMTP-Client: 173.36.7.12, xch-aln-002.cisco.com
X-Outbound-Node: rcdn-core-3.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipsec/GKsCLwrizLV9nne5ksOZab7jN7U>
Subject: Re: [IPsec] Teaser for pitch talk at IETF 108
X-BeenThere: ipsec@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Discussion of IPsec protocols <ipsec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipsec>, <mailto:ipsec-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipsec/>
List-Post: <mailto:ipsec@ietf.org>
List-Help: <mailto:ipsec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipsec>, <mailto:ipsec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 29 Jul 2020 16:57:16 -0000

> -----Original Message-----
> From: IPsec <ipsec-bounces@ietf.org> On Behalf Of Michael Rossberg
> Sent: Wednesday, July 29, 2020 12:10 PM
> To: Tero Kivinen <kivinen@iki.fi>
> Cc: Steffen Klassert <steffen.klassert@secunet.com>; ipsec@ietf.org; Valery
> Smyslov <smyslov.ietf@gmail.com>
> Subject: Re: [IPsec] Teaser for pitch talk at IETF 108
> 
> 
> >> We have already the option to send the high sequence number bits when
> >> a combined mode algorithm is used.
> >>
> >> RFC 4303, Section 2.2.1. says:
> >>
> >> If a combined mode algorithm is employed, the algorithm choice
> >> determines whether the high-order ESN bits are transmitted or are
> >> included implicitly in the computation.
> >
> > We do not have any algorithms that use that feature, and we do not
> > have option to negotiate it in IKEv2.
> >
> > We could add new value for transform type 5 (Extended Sequence
> > Numbers) to say that we use extended sequence number, and that we
> > actually transmit the full extended sequence number.
> 
> That would already help for the case.
> 
> >> We could just give multicast the same option if it wants to use
> >> replay protection.
> >
> > As others have already pointed out earlier, with multicast the upper
> > layer must make care of replays and dropped packets themselves in any
> > case, so doing that also on the IPsec level does not really provide
> > that much more security. I mean if the multicast protocol run over UDP
> > over IPsec simply has internal sequence number inside the UDP, which
> > will then be authenticated by the IPsec that should be good enough for
> > replay protection.
> >
> > There is issue that in that case attacker could do Denial of Service
> > attack against the IPsec, by replaying packets, and then the IPsec
> > gateway would decrypt and forward them.
> 
> Like pointed out in the answer to Valery’s mail. There are possibly more
> issues, as attackers are able to generate new traffic, they can use for
> cryptanalysis (see https://www.aircrack-ng.org/doku.php?id=arp-
> request_reinjection).
> Having anti-replay guarantees is just a reliable foundation. IMHO the case of
> applications being responsible holds just as well for unicast applications. TCP
> takes care of that, still no-one honestly discusses removing replay checks for
> high volume unicast SAs.
> 
> > When using multicast you already need to use SPI, and destination
> > address as your SAD lookup (RFC4303, section 2.1), i.e. use option 2
> > there. On the other hand you could use the SPI, destination address,
> > and source address to find the replay window and largest sequence
> > number used if you want to do anti-replay protection on multicast SAs
> > so that each sender has separate replay windows.
> 
> This still requires to know all possible senders beforehand. Also the SAs will
> still need to agree on an IV subspace and sending an explicit IV per packet.
> 
> >>> And about security. In order to have IV combined with ESN and
> >>> sub-windows identifiers this proposal removes secret salt from the
> >>> nonce. This may have impact on security.
> >>> I'm not a cryptographer, but I believe the impact is not negligible.
> >>> On the last CFRG session a draft draft-wood-cfrg-aead-limits was
> >>> discussed that calculates limits of data to be safely encrypted by
> >>> various AEAD ciphers. The authors claimed that having secret salt in
> >>> the nonce increases this limits in case of multi-user attacks and
> >>> that the results in the draft are calculated for this case. If plain
> >>> AEAD ciphers (with no secret salt) are used the limits are lower.
> >>
> >> A secret salt in the nonce would be a new requirement anyway.
> >> I've checked RFC 4106 (ESP for GCM) and RFC 7634 (ESP for
> >> ChaCha20-Poly1305), both don't require a secret salt.
> >
> > It is true that they do not need secret salt, but they do have
> > unpredictable salt, which is created by the key derivation step. My
> > understanding was that this proposal did get rid of that salt too:
> 
> Like written already: An unpredictable value of 32bit size is of no real value
> from a crypto point of view. One could simply guess the value and have a
> realistic chance of being right after a couple of thousand tries. 

Actually, it does add value from a crypto point of view, at least from a specific attack.  In a multitarget attack, that is, an attack where we assume that the attacker has encrypted packets from a large number of SAs, and his goal is to recover the keys for any one of the encrypted packets, here is what the attacker can do (assuming GCM or ChaCha20-Poly1305); if he has packet encrypted with each SA with the same nonce, he can guess a key, and generate the internal GCM/ChaCha20 keystream based on that key/nonce combination.  He can then scan through all the packets to see if the encryption makes sense (or the ICV tag works out); this can be done far faster than checking each packet individually.  Assuming the packets are encrypted with AES-128, and the attacker has packets from 2**L SAs, then against this attack, we have only 128-L bits of security.

By including 32 bits of unpredictable values, we make this attack 4 billion times harder, and for AES-128, that would give us 160-L bits of security. This doesn't actually add any security against attacks against a single SA, and the salt doesn't actually need to be secret.

> I believe it is
> only in the standard, as with 64 bit sequence numbers there where 32 bits
> left; needing to be filled.

Nope; it was included to increase security.  For 256 bit keys, one can easily argue that this is not needed; however for 128 bit keys, it is considerably more marginal.