Re: [stir] Comments on draft-stir-callback

Jonathan Rosenberg <jdrosen@jdrosen.net> Wed, 21 March 2018 19:43 UTC

Return-Path: <jdrosen@jdrosen.net>
X-Original-To: stir@ietfa.amsl.com
Delivered-To: stir@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E669212785F for <stir@ietfa.amsl.com>; Wed, 21 Mar 2018 12:43:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.788
X-Spam-Level:
X-Spam-Status: No, score=-1.788 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, HTML_MESSAGE=0.001, T_DKIM_INVALID=0.01, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=neutral reason="invalid (public key: not available)" header.d=jdrosen.net
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 EdgxzYJaRcn5 for <stir@ietfa.amsl.com>; Wed, 21 Mar 2018 12:43:23 -0700 (PDT)
Received: from ecbiz193.inmotionhosting.com (ecbiz193.inmotionhosting.com [173.205.124.208]) (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 681321275AB for <stir@ietf.org>; Wed, 21 Mar 2018 12:43:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=jdrosen.net ; s=default; h=Content-Type:Cc:To:Subject:Message-ID:Date:From:References: In-Reply-To:MIME-Version:Sender:Reply-To:Content-Transfer-Encoding:Content-ID :Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To: Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe :List-Post:List-Owner:List-Archive; bh=cgU5fG/IDmQwlFqCqcMKl+ywOy5WHdrYiuAVWJ/LmJo=; b=skCLF32DiObIu6aERYk4hoOmqr UUXEXGGUzWQqEabe0aCq7sZub53KdaO4CLBoNoNRWoDvUPuz45WDhhQb8QJzBFNcZllYmf+puAUNq w6bkZKR2S/gM2cHgjXdRmvPISh9ANs4qL7xQogcPmAWcFc/9Ptw6EgPVO/VMUf4cbzxFJjAnlanr4 bF1xK9M9fhaQnxsA6iU0VRSnErCd4JZUdyYfGJYH/8aBkAU56jfcNOI/JrBviscGRgXEYzRQ3gha7 SOBbpQuAzFMAhuJkc3xpKYNWTtplU1zMV+EV1xOFfnsrNLxCyIW8V32fPHyVuXJOHeJp68rQM/znK Rc1lG26g==;
Received: from mail-oi0-f45.google.com ([209.85.218.45]:44101) by ecbiz193.inmotionhosting.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.89_1) (envelope-from <jdrosen@jdrosen.net>) id 1eyjdf-003Ajv-Np for stir@ietf.org; Wed, 21 Mar 2018 15:43:21 -0400
Received: by mail-oi0-f45.google.com with SMTP id 23-v6so5339929oir.11 for <stir@ietf.org>; Wed, 21 Mar 2018 12:43:11 -0700 (PDT)
X-Gm-Message-State: AElRT7FGtnUXfgjTWjCGHWQ5D5j+s3wSWZBeS36J1q+YZE2rANzcn74s BVXBnttOqzAgRGbesPodyp2hhfRaLZ2ajNlRHQ8=
X-Google-Smtp-Source: AG47ELu2oou8fdQ1T1V3UQgpaPcqlSzQGo0Fmf4RE1+SOOCx9p/0A33BISmFeRmsktDjYp9i71VQ/CFBiZ1/DjnNPoA=
X-Received: by 10.202.90.138 with SMTP id o132mr11700928oib.11.1521661391419; Wed, 21 Mar 2018 12:43:11 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.74.165.132 with HTTP; Wed, 21 Mar 2018 12:43:10 -0700 (PDT)
In-Reply-To: <D6C415C7.2C225%christer.holmberg@ericsson.com>
References: <D6C415C7.2C225%christer.holmberg@ericsson.com>
From: Jonathan Rosenberg <jdrosen@jdrosen.net>
Date: Wed, 21 Mar 2018 19:43:10 +0000
X-Gmail-Original-Message-ID: <CA+23+fFVf63dMp9gz4O85rd-ZpbbZ9fCviyMybtehd4rSWx9pA@mail.gmail.com>
Message-ID: <CA+23+fFVf63dMp9gz4O85rd-ZpbbZ9fCviyMybtehd4rSWx9pA@mail.gmail.com>
To: Christer Holmberg <christer.holmberg@ericsson.com>
Cc: "stir@ietf.org" <stir@ietf.org>
Content-Type: multipart/alternative; boundary="001a113d2bd8b43fd80567f1669b"
X-OutGoing-Spam-Status: No, score=-1.0
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - ecbiz193.inmotionhosting.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - jdrosen.net
X-Get-Message-Sender-Via: ecbiz193.inmotionhosting.com: authenticated_id: jdrosen+jdrosen.net/only user confirmed/virtual account not confirmed
X-Authenticated-Sender: ecbiz193.inmotionhosting.com: jdrosen@jdrosen.net
X-Source:
X-Source-Args:
X-Source-Dir:
Archived-At: <https://mailarchive.ietf.org/arch/msg/stir/uiVIi_3czNKcyPiPum6k8acrX8s>
Subject: Re: [stir] Comments on draft-stir-callback
X-BeenThere: stir@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Secure Telephone Identity Revisited <stir.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/stir>, <mailto:stir-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/stir/>
List-Post: <mailto:stir@ietf.org>
List-Help: <mailto:stir-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/stir>, <mailto:stir-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 21 Mar 2018 19:43:26 -0000

I believe its basically a step towards deployment of the full STIR
solution. If you think about it, STIR requires support in the calling SIP
network, the terminating network, and requires a phone-number based
certificate system they can both connect to. WIth callback, it requires
support in the calling SIP network, the terminating network. But thats it -
no new certificate authorities required. Since it requires one less
dependency - and a significant one at that - it would allow quicker
deployment.

To your question on "why INVITE"? yes its a hack. Its based on the
hypothesis that - given the large number of proxies, SBCs and other gunk
that sit in the network, the odds that anything but an INVITE make it
through, seemed low. Architecturally i think OPTIONS is the best match but
does any SBC pass that?

To your specific questions:

1. most forking happens downstream from the proxy of record for the number;
since this request is handled by that proxy I dont think this is likely.
Can you think of a case were forking would happen upstream from the
proxy/agent which owns the number?

2. SDP is mandated because, per above, seems likely SBCs and other
middle-boxy SIP things will expect to see it in an INVITE.

3.good catch on receiver sending 200 OK. clearly in such cases a BYE would
be generated right away.

Thx,
Jonathan R.



On Wed, Mar 14, 2018 at 7:53 AM, Christer Holmberg <
christer.holmberg@ericsson.com> wrote:

> Hi,
>
>
>
> On a high-level, for a “temporary solution”, I think this would take quite
> a bit of effort to deploy. Shouldn’t the focus be on getting the
> "certificate systems" up and running?
>
>
>
> Also, how does this relate to activities like SHAKEN?
>
>
>
>
> Anyway, assuming this would be needed, I have some comments on the
> protocol parts.
>
>
>
> First, even though I do consider myself more pragmatic than purist, I
> think usage of INVITE, and the usage of error response codes to return the
> verification result, is a really ugly hack.
>
>
>
> Second, there are also some operational issues with using INVITE:
>
>    1. Good old forking: The callback/verifying INVITE might get forked,
>    and the terminating agent may receive a non-471/472 response.
>    2. SDP: The draft requires SDP in the INVITE, but at the same time
>    says that it’s not used for anything. If so, why is it mandated? Because
>    offerless INVITEs might get rejected? SDP in INVITE might trigger media
>    resources etc to be reserved.
>    3. Section 7.3 talks about attacks by the agent receiving the
>    callback/verifying INVITE, but it does not cover the case where the agent
>    would send a 200 OK response – which would establish a session and could
>    trigger charging. Alternatively, the attacker could remove the option-tag
>    and forward the request somewhere. All this without the originally called
>    party knowing anything. The terminating agent can of course terminate such
>    “call" as soon as it gets the 200 OK, but it may already have triggered
>    some charging etc.
>
>
> Third, did the authors consider other mechanisms? For example, is there a
> reason e.g., SUB/NOT couldn’t be used for this? It would have none of the
> INVITE issues above (yes, a SUB can also get forked, but the client will
> receive NOT from each remote peer).
>
>
>
> Finally, it seems like the callback request (whatever SIP method is used)
> contains the called party in the From header field. Is there a technical
> reason why that is needed, or is it just for convenience?
>
>
>
> Thanks!
>
>
>
> Regards,
>
>
>
> Christer
>
> _______________________________________________
> stir mailing list
> stir@ietf.org
> https://www.ietf.org/mailman/listinfo/stir
>
>


-- 
Jonathan Rosenberg, Ph.D.
jdrosen@jdrosen.net
http://www.jdrosen.net