Re: [sipcore] Eric Rescorla's Discuss on draft-ietf-sipcore-sip-push-21: (with DISCUSS and COMMENT) - The DISCUSS issues

Christer Holmberg <christer.holmberg@ericsson.com> Mon, 07 January 2019 10:11 UTC

Return-Path: <christer.holmberg@ericsson.com>
X-Original-To: sipcore@ietfa.amsl.com
Delivered-To: sipcore@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8A8BD130DE7 for <sipcore@ietfa.amsl.com>; Mon, 7 Jan 2019 02:11:54 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.365
X-Spam-Level:
X-Spam-Status: No, score=-4.365 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.065, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=ericsson.com header.b=dvr+85AD; dkim=pass (1024-bit key) header.d=ericsson.com header.b=fZC4a0H+
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 P9hS-7jWHpAg for <sipcore@ietfa.amsl.com>; Mon, 7 Jan 2019 02:11:52 -0800 (PST)
Received: from sessmg23.ericsson.net (sessmg23.ericsson.net [193.180.251.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B421C130DE3 for <sipcore@ietf.org>; Mon, 7 Jan 2019 02:11:51 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; d=ericsson.com; s=mailgw201801; c=relaxed/relaxed; q=dns/txt; i=@ericsson.com; t=1546855909; x=1549447909; h=From:Sender:Reply-To:Subject:Date:Message-ID:To:CC:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=T//3ZUrpfgDBCrkwAOtBGzSBPMBHZ+/Gr5Hnv1XqEs4=; b=dvr+85ADsTcpdF9RkcIUhIV0AtbsIrNCogy4BHKfGEjKSgd0cPwQIsvnU8Sd6kLx G+M+CXJwp8pRKZ0OPTiLBkH48wumAsCvV1oO3nTAbri5Yy2dAd1Y3ra8UVXl1VjW DhLqQ7aTuagddUiJ//hKOWoB8MONRhh0jXVouBfDcUI=;
X-AuditID: c1b4fb2d-d9dff7000000062f-e8-5c3325e5136d
Received: from ESESBMB502.ericsson.se (Unknown_Domain [153.88.183.115]) by sessmg23.ericsson.net (Symantec Mail Security) with SMTP id C4.40.01583.5E5233C5; Mon, 7 Jan 2019 11:11:49 +0100 (CET)
Received: from ESESSMR501.ericsson.se (153.88.183.108) by ESESBMB502.ericsson.se (153.88.183.115) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1466.3; Mon, 7 Jan 2019 11:11:48 +0100
Received: from ESESSMB503.ericsson.se (153.88.183.164) by ESESSMR501.ericsson.se (153.88.183.108) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1466.3; Mon, 7 Jan 2019 11:11:48 +0100
Received: from EUR03-AM5-obe.outbound.protection.outlook.com (153.88.183.157) by ESESSMB503.ericsson.se (153.88.183.164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1466.3 via Frontend Transport; Mon, 7 Jan 2019 11:11:48 +0100
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=T//3ZUrpfgDBCrkwAOtBGzSBPMBHZ+/Gr5Hnv1XqEs4=; b=fZC4a0H+EJpbg7KxwJf1D3bewGRxH48MZXtfpkYBSG7RumOoQSyF9Djv4gefvAfs6J2mUiSV1lOQCwmSQ4QEYgAbUdVp7qrBf4D3SYXZ6roIB9oGmBRngkRUKvBPxMviwB8TkJo2h7nBXHO8gmxmpAqlLCHI/Wg5WLwkKStHqBM=
Received: from HE1PR07MB3161.eurprd07.prod.outlook.com (10.170.245.23) by HE1PR07MB4156.eurprd07.prod.outlook.com (20.176.166.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1516.4; Mon, 7 Jan 2019 10:11:47 +0000
Received: from HE1PR07MB3161.eurprd07.prod.outlook.com ([fe80::852a:3f04:e342:cf55]) by HE1PR07MB3161.eurprd07.prod.outlook.com ([fe80::852a:3f04:e342:cf55%3]) with mapi id 15.20.1516.010; Mon, 7 Jan 2019 10:11:47 +0000
From: Christer Holmberg <christer.holmberg@ericsson.com>
To: Eric Rescorla <ekr@rtfm.com>, The IESG <iesg@ietf.org>
CC: "br@brianrosen.net" <br@brianrosen.net>, "br@brianrosen.net" <br@brianrosen.net>, "sipcore@ietf.org" <sipcore@ietf.org>, "draft-ietf-sipcore-sip-push@ietf.org" <draft-ietf-sipcore-sip-push@ietf.org>, "sipcore-chairs@ietf.org" <sipcore-chairs@ietf.org>
Thread-Topic: Eric Rescorla's Discuss on draft-ietf-sipcore-sip-push-21: (with DISCUSS and COMMENT) - The DISCUSS issues
Thread-Index: AQHUpnFl9lNhpj/JG0GaYltri4PGog==
Date: Mon, 07 Jan 2019 10:11:47 +0000
Message-ID: <HE1PR07MB316119D1A9FCD7CE4159021A93890@HE1PR07MB3161.eurprd07.prod.outlook.com>
References: <154681733718.17024.3190954246737206843.idtracker@ietfa.amsl.com>
In-Reply-To: <154681733718.17024.3190954246737206843.idtracker@ietfa.amsl.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=christer.holmberg@ericsson.com;
x-originating-ip: [37.33.31.219]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; HE1PR07MB4156; 6:XA9YXWJW1amQ708RIOmupMtbPPAeAz0eWw5/HT2VfvQOxczA1fvmrJ3H6aHBaflgtvqIY4+5+Bu9sNavGy+FI12hL4LsH34NJXcu2gjHKswus7Q+1BoUH6AS5XXasEZ9IhZ2RSBgUcWxQA+msCRyrkgO7S1sN+JfNbEQ0gU/DiHcof9C/x+rNyV6KNp12h/QC4Abf/hQkFzK+bs6uDA7DPj/lK8v3orzdkvU+bWgQuZfXw8ziod+QMYkwSePRFxbfqIBVR2nVXGjPfJHHMWvAy28kpbWXzAKVAWY1KE0rgOeBr1ONcOB72urt5NNCRRlD+b73dTpvBkHX8BvmULcPVirvafRie8snCsWeQTZcg/xyIadfrjGusaahSfkILNnc43YxL0VUiXl7dUY2dQTnsDn0bum9oFx4RYF7wj9rRD/DZTalsPm4tEMTUa8qstEOLD7niMpDeqvAZVXACz8zw==; 5:cONFbARn6MdRlTNOiXqe/vww1dVOkobU5zjVagmcrDDJtJmd1pSI8RGxw7FiHICoET2E17ltj/p7L35lw2hSb3dkUj/3V+D/F+WAHoyIrTURdmu97NAA/iNWKFvT+Wp0NXGeOd6nJgaQy63SfHOf/9zH83Cif1JzJ2MgwNLUALAgLNA5YHn/Q9SJmu8w8IA3LDoKGgkHHMUTh55ZnqafNw==; 7:oJzkcQNDlkFpDIH0wM0y0w6Z5rpVpx44hwxLch0sxoLHSmypuz5jEdMnEXHQnF34XuHi8GKXBKX4R8OtAMJMIoJAOS18fezKH6Psg4DTzSA0Fke7lGtRS9gt2BnM80aSS4iykwyS1bK13JV4T8kCDA==
x-ms-exchange-antispam-srfa-diagnostics: SOS;
x-ms-office365-filtering-correlation-id: 540514c9-e989-417e-ff4f-08d67488887e
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600109)(711020)(2017052603328)(7153060)(7193020); SRVR:HE1PR07MB4156;
x-ms-traffictypediagnostic: HE1PR07MB4156:
x-microsoft-antispam-prvs: <HE1PR07MB4156C1CB364DB0D38C4EAC3293890@HE1PR07MB4156.eurprd07.prod.outlook.com>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(3230021)(908002)(999002)(5005026)(6040522)(8220060)(2401047)(8121501046)(3231475)(944501520)(52105112)(3002001)(93006095)(93001095)(10201501046)(6041310)(20161123564045)(20161123558120)(20161123560045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(201708071742011)(7699051)(76991095); SRVR:HE1PR07MB4156; BCL:0; PCL:0; RULEID:; SRVR:HE1PR07MB4156;
x-forefront-prvs: 0910AAF391
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(396003)(366004)(346002)(376002)(39860400002)(136003)(199004)(189003)(6436002)(106356001)(97736004)(966005)(81166006)(81156014)(53936002)(105586002)(345774005)(33656002)(8676002)(7696005)(316002)(9686003)(76176011)(6506007)(6306002)(66066001)(54896002)(19627405001)(6246003)(6606003)(8936002)(236005)(229853002)(14454004)(1015004)(2906002)(5660300001)(186003)(6116002)(26005)(3846002)(110136005)(478600001)(99286004)(71200400001)(71190400001)(25786009)(4326008)(102836004)(74316002)(606006)(54906003)(68736007)(55016002)(44832011)(11346002)(446003)(486006)(256004)(476003)(14444005)(7736002)(86362001); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR07MB4156; H:HE1PR07MB3161.eurprd07.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: ppk4fT/22qw4tTWAc+9BK9gmMH1h/D2wKUL5e6AGnCkM1w0sC1GuiqeiRGdj532Krbn5RFAnzzxiJBZuK8vrblnljL7kJ0zhyKmSzE7/0w1rr9+JhDC/WWtqxxGfghAuIYiF7WsdG0S+Cvn/p/rDohe18HHUY+eKcfumhjSsFaL71E9QjyOsF7B6hBhArNIW4b1JZbOw70zoiJh/xCNx5pmFs9wu023NXXO+CKVfzR5CWd8Xe4w+WlKLDX4DCcr2rxMYVSdklsk+4QneESou/K8JnXh1qY9ZIYmsg8llCXK4xpJHYpT4c0pMY6E83nea
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_HE1PR07MB316119D1A9FCD7CE4159021A93890HE1PR07MB3161eurp_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: 540514c9-e989-417e-ff4f-08d67488887e
X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Jan 2019 10:11:47.2761 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR07MB4156
X-OriginatorOrg: ericsson.com
X-Brightmail-Tracker: H4sIAAAAAAAAA02SbUhTURjHO/fe3V1Xg+PSfDQ0W0VvaNYkRlbUh8A+WH0MGeSqS5q62b1q KVgz7QUlcfmS05GaY4YKhWkLimRLixmkmYWKUTHNyjJtzDRN83os+vZ7/v//83LgcLSqQxbC JRnSecGgT1GzCsZy1CFGDG/Q6KKujsi1w+/KWe1FbyOlvT36Qq6tmDXT2mveWlrrm2pm97Gx 7yZ/y2NttmkqtsRzmT5Cxyt2n+RTkjJ5YdveBEVinmWSTWs7f27cUYBMqDWxAPlxgKOh7pOb KkAKToXbEdS03JORwoegcrqf/ld0199kSFFHwWO3bdFhcDENl+atLHHMFAw+dC/1fEDQ6Z1Z cDiOxVoonNsqbQzAu+DLzJvFUTS+QsFMrpORjJU4C5yNbYiEssH6Ik9OOBJ6rcWLGQavh+9N FkaaqcQ6eF91RpJVOA68+ZO0xH74ENgtuYutCK+Cn51NlMQ0DoKBoWqKvBqD7VEXTTgQPnvm ZCSvh7aG90t6OJSa3CzhUOipLkTSzYAvymHE1s4QIwLGy8qWGuKg5a6JIqFuBF33S+TE2ALf 654gwsnQ+/umnIRe0jBRNEAVo6jK/y4kbISKiTGZxErsD27LEEP0SOgrK2UJbwV77ShNOAIq 5lzM/3oNkjegQJEXxdRTOzSRvJB0QhSNhkgDn96MFj6Xs2Um4gFqHN3vQphD6hVK7VqNTiXT Z4pZqS4EHK0OUKYMb9eplCf1Wdm8YDwmZKTwogut5hh1kHJW5a9T4VP6dD6Z59N44a9LcX4h JhR/oO9CdH99TlF+9aWNqeWmNfMbu7pO9/36snyzwrJjzPhtVYjrZWhH8Fi2vV/xNmvqzvPB s6meWUfw8hNhfr+WyRrGfE7NzunjX61hOT2a4MO5O61G1avkH3sOFq0bkCV8mJrzGARz+C1f 8+uYp6Xxrc9uVDliaq7Hpg11m+0fN2WoGTFRv30LLYj6P+hXgUpYAwAA
Archived-At: <https://mailarchive.ietf.org/arch/msg/sipcore/buBgvoRB_XOXMHDklUuscoRTZvQ>
Subject: Re: [sipcore] Eric Rescorla's Discuss on draft-ietf-sipcore-sip-push-21: (with DISCUSS and COMMENT) - The DISCUSS issues
X-BeenThere: sipcore@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: SIP Core Working Group <sipcore.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/sipcore>, <mailto:sipcore-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/sipcore/>
List-Post: <mailto:sipcore@ietf.org>
List-Help: <mailto:sipcore-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/sipcore>, <mailto:sipcore-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 07 Jan 2019 10:11:55 -0000

Hi,


Thank You for the review! In this reply I'll try to address the DISCUSS issues. The COMMENT issues will be addressed in a separate reply.

DETAIL
S 5.3.2.
>>      request) addressed towards a SIP UA, if the Request-URI of the
>>      request contains a pn-provider, a pn-prid and a pn-param (if required
>>      for the specific PNS provider) SIP URI parameter, the proxy requests
>>      a push notification towards the UA, using the PRID included in the
>>      pn-prid SIP URI parameter and the PNS identified by the pn-provider
>>      SIP URI parameter.
>
>Maybe I'm missing something, but this seems like it leaves open the
>possibility for the PRID to not match the rest of the URI. E.g.,
>suppose that a@example.com and b@example.com both register with the
>same proxy/registrar pair with PRIDa and PRIDb respectively. What
>stops the registrar from generating (or forwarding) a call to
>a@example.com, PRIDb? And what happens if that happens?

Since no a@example.com:PRIDb binding has been registered, the registrar will not generate such URI.

---

S 5.3.2.
>>      also present (and has not expired) in the REGISTER response, the
>>      proxy can forward the SIP request towards the UA, using normal SIP
>>      procedures.  If the contact of the REGISTER request does not match
>>      the Request-URI of the SIP request to be forwarded, or if the contact
>>      was not present in the REGISTER response, the proxy MUST reject the
>>      SIP request with a 404 (Not Found) response.  This can happen if the
>
>How does this happen? I.e., how does the the REGISTER get correlated
>with the SIP request to be forwarded in order to execute this
>requirement?

There could be cases where e.g. the PRID values match, but the rest of the contact don't.

But, I don't think that is relevant. What matters is that the contacts DO match, AND that the contact is present in the REGISTER response. The rest will be handled by the timeout procedures.

So, I think something like the following would be enough:

   "If the contact of the REGISTER request was not present in the
     REGISTER response, the proxy MUST reject the SIP request with a
     404 (Not Found) response."

In addition, we could add a note below the timeout paragraph:

   "If the proxy does not receive the REGISTER request from the UA within
   a given time after the proxy has requested the push notification, the
   proxy MUST reject the request with a 480 (Temporarily Unavailable)
   response.  The time value is set based on local policy.

   NOTE: In case a UA sends a binding-refresh REGISTER request that does not contain the
   previously registered contact at the same time the registrar forwards a SIP request
   towards a UA using the previously registered contact in the Request-URI, the proxy
   will not be able to match the contact with the Request-URI. This will trigger a timeout
   response.

---

S 6.1.
>>      and be able to find and retrieve that information when it receives a
>>      mid-dialog request.  This section defines such mechanism.  The UA and
>>      proxy procedures in this section are applied in addition to the
>>      generic procedures defined in this specification.
>>
>>   6.1.  SIP UA Behavior
>
>This section needs some kind of diagram that explains what the
>mechanism is. I've read it a bunch of times, and I still don't
>understand it.

I think it would more or less be a copy of the diagram in Section 1. I could either reference, or copy/paste that diagram.

---

S 6.2.1.
>>      generated key as the value to the associated 2xx REGISTER response.
>>
>>      The PURR value MUST be generated in such a way so that it cannot be
>>      used to retrieve information about the user or associate it with
>>      registrations.  It can be generated e.g., by utilizing a
>>      cryptographically secure random function.
>
>This seems to weak. I assume you also don't want it to be possible to
>determine that two PURRs correspond to the same user. Also who must be
>able to use it in this way. Presumably the proxy can?
>
>Why is this not a requirement for say PRID?

The PURR value will reach the remote user. The PRID will only reach the registrar.

---

S 13.
>>      specification.  Web push permits the sending of a push message
>>      without a payload without encryption.
>>
>>   13.  Security Considerations
>>
>>      Different mechanisms exist for authenticating and authorizing devices
>
>You need to discuss the security implications of knowledge of the push
>parameters (principally PRID). What happens if an attacker learns
>them?

Based on the sec-dir review, I did some modifications/additions to the security considerations. They can be seen in the following pull request:

https://github.com/cdh4u/draft-sip-push/pull/31


Regarding your comment, I have tried to address that with the following suggested text:

            "Typically, the PNS requires the SIP proxy requesting push notifications to be
            authenticated and authorized by the PNS. In some cases the PNS also require
            the SIP application (or the SIP application developer) to be identified in order for the
            application to request push notifications. Unless the PNS authenticates and authorizes the PNS,
            a malicious middleman that managed to get access to the parameters transported in the SIP signalling
            might be able to request push notifications towards a UA. Which such push notifications will not
            have any security related impacts, they will impact the battery life of the UA and trigger
            unnecessary SIP traffic."

Regards,

Christer