Re: [spring] John Scudder's Discuss on draft-ietf-spring-segment-routing-policy-17: (with DISCUSS and COMMENT)
Ketan Talaulikar <ketant.ietf@gmail.com> Tue, 22 March 2022 18:31 UTC
Return-Path: <ketant.ietf@gmail.com>
X-Original-To: spring@ietfa.amsl.com
Delivered-To: spring@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 226CE3A0F40; Tue, 22 Mar 2022 11:31:00 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.006
X-Spam-Level:
X-Spam-Status: No, score=-2.006 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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=0.1, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham 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 PAk3T-QICKJV; Tue, 22 Mar 2022 11:30:53 -0700 (PDT)
Received: from mail-vs1-xe36.google.com (mail-vs1-xe36.google.com [IPv6:2607:f8b0:4864:20::e36]) (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 B8E9E3A0FD7; Tue, 22 Mar 2022 11:30:50 -0700 (PDT)
Received: by mail-vs1-xe36.google.com with SMTP id a127so11781183vsa.3; Tue, 22 Mar 2022 11:30:50 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=So5Jr8zg6Qr0NQvgCAj5GsHX9aDRAEzRPvfC8GuOSZE=; b=DHldJkzcH/1tl2ES0oF6LZ8qDcrDDuTrY08x8vbYjE7mArhAyLRnVCyFz0m+9f/HAy 5FCG6scFYP9sb3KYT6e1q2a0+u6s1w9G0AsC4WzNvbog8VFUyd45OMESDCrQb0IslXQ+ YvUVxYvr0oQk/Nszopo/wsD28/5XCAI1Kcxoex9a8ceOI6rac9O828wXefvDS1ZOoQv5 nuZksE/OriFoj7HG5JiMyke3/hYHYVZt1Rch4r6VH3UbWFDj7+1olgtQRY/e4TxHkhBs EGcqdxWtR17j0JWrlm8Uy7/8gc3Y2Kt2wvLzUdlsCB/N1RXTVrs7GpTeDGrQY5zV0vt4 IZpw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=So5Jr8zg6Qr0NQvgCAj5GsHX9aDRAEzRPvfC8GuOSZE=; b=OeVSArdCDNyglVjKWMT+VuABB6CZ49j3YbAA7fbISjmB75HkOKU2P6vOFj2dEhgTMP qFkhpoV97VBnAnUMGjvW8JDqQIIfvLoPS0Cq8k855UzfkDKgqEoDbwYf88Smq2KF9eTp KsRwXS5aoYRtxbZts2yfy6l6/JLoXy/IVySj3Q9aJfZWBn4Y1e4dnwW/XgMss//pDyzB FfNgqv5QiMXyJB7tKOTSvqyFOvN8x335nbBurj2QGpSl8p63uhoZQDVeIKAXtAsJTIX2 VBxt4KDk0l2K9d1LTLvAYaqy1LbtLrBMalHux+lEHIZCV66JvOjVD674fxsEcIShg/O5 mJIg==
X-Gm-Message-State: AOAM5320qbfBQlej7eUvODdJZjTCMv6JsDecXmU9cjrYAcjK84c6byEk 4gwgWzGo8EBYkX12a+13nWAwD+7PjPobQ3pI2pnAWzFX
X-Google-Smtp-Source: ABdhPJwRMSkYweWYnxBVTggdglmpJsESN73RVLLhqnzbvYtWclm6ukaEd+wsV9PbDKCrHJagTplr5tRsP6GUT42gCJ0=
X-Received: by 2002:a05:6102:510c:b0:322:b84a:4212 with SMTP id bm12-20020a056102510c00b00322b84a4212mr10776441vsb.64.1647973849513; Tue, 22 Mar 2022 11:30:49 -0700 (PDT)
MIME-Version: 1.0
References: <164503079307.9996.17286143339105134181@ietfa.amsl.com> <CAH6gdPzo+OAoHHQkJD82OdyO=rth8qPPAcco-8STjucnaXNsew@mail.gmail.com> <A7535E25-8DE8-4CBF-9C25-2F12A4692917@juniper.net> <AF504BCF-E8E3-4971-A297-7B3DA1822857@juniper.net> <CAH6gdPwqsnAndMFgx0f-AJ=w62SvT9kHDQtbci3WxVz8n40TpA@mail.gmail.com> <6E8C015A-C0AE-4775-9B49-09F7DA40B9B2@juniper.net> <CAH6gdPzmfH34cq7XFO9WO=5FYFytoY6DR2Fk+wxjfUJ6hKLa5w@mail.gmail.com> <C2E55EE9-BC36-4F41-834B-3604B8C98A70@juniper.net>
In-Reply-To: <C2E55EE9-BC36-4F41-834B-3604B8C98A70@juniper.net>
From: Ketan Talaulikar <ketant.ietf@gmail.com>
Date: Wed, 23 Mar 2022 00:00:37 +0530
Message-ID: <CAH6gdPyWO8ekPPsWWaH4nhh-B7p9WxZqj3mNdEP3mvio9HRuJw@mail.gmail.com>
To: John Scudder <jgs@juniper.net>
Cc: james.n.guichard@futurewei.com, draft-ietf-spring-segment-routing-policy@ietf.org, SPRING WG <spring@ietf.org>, spring-chairs@ietf.org, The IESG <iesg@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000e6408605dad2cf42"
Archived-At: <https://mailarchive.ietf.org/arch/msg/spring/YAqWYfKELG3sLQr7n6u8_lyGLOc>
Subject: Re: [spring] John Scudder's Discuss on draft-ietf-spring-segment-routing-policy-17: (with DISCUSS and COMMENT)
X-BeenThere: spring@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Source Packet Routing in NetworkinG \(SPRING\)" <spring.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/spring>, <mailto:spring-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/spring/>
List-Post: <mailto:spring@ietf.org>
List-Help: <mailto:spring-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/spring>, <mailto:spring-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Mar 2022 18:31:01 -0000
Thanks John for your inputs and suggestions. Thanks, Ketan On Tue, 22 Mar, 2022, 11:51 pm John Scudder, <jgs@juniper.net> wrote: > Looks good, thanks. I’ve cleared my discuss, thanks for your work on this. > > —John > > On Mar 22, 2022, at 2:11 PM, Ketan Talaulikar <ketant.ietf@gmail.com> > wrote: > > > > Hi John, > > Thanks for your guidance with the text. Very much appreciated - especially > in the middle of the busy IETF week. > > I've just posted an update to the draft with slight modifications to your > text (so as to cover both sec 2.1 and 2.6 and suggest the use of the > well-defined identifiers as a mitigation approach instead of relying solely > on the symbolic names. > > > https://datatracker.ietf.org/doc/html/draft-ietf-spring-segment-routing-policy-22 > <https://urldefense.com/v3/__https://datatracker.ietf.org/doc/html/draft-ietf-spring-segment-routing-policy-22__;!!NEt6yMaO-gk!TPdw7ZdqeCRS2htB1JCtU9oqzfUS0akoP3b2FGoZfrye6NBL-A_CpxzRhVlz1g$> > > Please let us know if this addresses your concerns. > > Thanks, > Ketan > > > On Tue, Mar 22, 2022 at 11:20 PM John Scudder <jgs@juniper.net> wrote: > >> Hi Ketan, >> >> Thanks as always for your quick reply. >> >> > On Mar 22, 2022, at 4:54 AM, Ketan Talaulikar <ketant.ietf@gmail.com> >> wrote: >> > >> > >> > Hi John, >> > >> > I dug into my emails and you are right that while we had a discussion >> on point 4 (i.e. security considerations associated with the use of >> symbolic names), it was not concluded. My apologies for the same. >> > >> > It might be helpful to place a context on why the draft uses symbolic >> names in the first place. The closest analogies that come to my mind are >> tunnels (different types - TE, IPinIP, IPsec) and MPLS LSPs (or paths). >> These constructs have had symbolic names associated with them for a long >> time now - both for local use on routers (some implementation-specific - >> others specified by IETF) >> >> Sure. Anything local to the router isn’t related to my concern, which is >> specific to the opportunity for a remote attacker to mislead someone on the >> local router. I hope it’s clear by now that I have no issue with >> associating a symbolic name with a SR Policy (or any other thing), as such. >> >> > and also signaled via routing protocols. >> >> Now that you point it out, I do see a few such, e.g. the >> SYMBOLIC-PATH-NAME in RFC 8231. That particular example has arguably >> different threat properties since the relationship between a PCE and its >> clients isn’t mediated through other routers; the trust relationship is >> clearer and the “remote attacker” is not so very remote. But I imagine >> there are other examples to be found, and I don’t want to split hairs on >> this detail. >> >> > Operators are therefore quite familiar with their usage and hence their >> introduction in the SR Policy construct. I don't believe the WG would want >> to take the option of their removal (it was a suggested option). >> >> I didn’t really expect you to; I was just laying out some points in the >> solution space. >> >> > Then we get to option of adding specific text to the draft (in the >> security considerations?) that would discuss your concerns. Such text may >> be addressed to implementators and/or operators. As mentioned above, the >> use of symbolic names for constructs similar to SR Policy name and SR >> Policy Candidate Path name is not "new" for both sets of readers. >> Therefore, I am not sure if we need to cover or add anything new in this >> document and I could not find text that I could borrow from other RFCs or >> point to other RFCs. e.g., >> https://www.rfc-editor.org/rfc/rfc8231.html#section-7.3.2 >> <https://urldefense.com/v3/__https://www.rfc-editor.org/rfc/rfc8231.html*section-7.3.2__;Iw!!NEt6yMaO-gk!TPdw7ZdqeCRS2htB1JCtU9oqzfUS0akoP3b2FGoZfrye6NBL-A_Cpxzu_nJ4ug$> >> > >> > I did look at RFC9003 but its context is very different. From your >> DISCUSS comment, I see that your concern is that a string does not have any >> sanity checking - the operator is free to use any text. >> >> Correct. As long as you assume good will on the part of “the operator” >> it’s all good. If you start thinking in terms of an attacker in some >> distant part of the network injecting a policy, it becomes potentially >> concerning. >> >> > I agree. Do we want implementations to restrict something? Do we want >> to give some naming guidelines or precautions to the operators? >> >> I don’t think the concern is addressable on the origination side, since >> it assumes a bad actor to begin with, and they’re not going to be bothered >> by what we write in an RFC. That was why in my suggestion I was thinking in >> terms of display conventions. I’m not super excited by my own idea, though, >> because it reminds me uncomfortably much of the disclaimer my IT department >> slaps on every incoming email, “[External Email. Be cautious of content]”. >> It’s not particularly actionable, and it’s annoying. :-( >> >> > In a previous response, your suggestions for the text for operators >> were (somewhat?) of the nature - "beware the name of the SR Policy may not >> actually be correct or may be misleading because someone might have hacked >> into the network". I am not sure if something of that nature helps. If the >> names stop being meaningful then they are no more relevant? Isn't the >> security aspect to be taken care of here is to prevent hacking? Something >> beyond the scope of this draft? >> >> “Security is everyone’s responsiblity.” >> >> > I'll admit that I am running out of ideas on what would be a meaningful >> text to add to address your concerns. Would appreciate some text suggestion >> that is relevant to this specific context. >> >> In the end, maybe it’s true that there’s not much to be done, which >> sucks, but that’s life. But even if we throw our hands in the air and say >> “nothing to be done”, which is I think where we’re getting to, I don’t >> think there would be any harm in putting a sentence or two in the Security >> Considerations such as you mention just above. Something along the lines of, >> >> “In Section 2.1 we mention that a symbolic name MAY be signaled along >> with a candidate path. While the value of symbolic names for display >> clarity is indisputable, as with any unrestricted freeform text received >> from external parties, there can be no absolute assurance that the >> information the text purports to show is accurate or even truthful. For >> this reason, users of implementations that display such information would >> be well-advised not to rely on it without question. Furthermore, >> implementations that display such information might wish to display it in >> such a fashion as to differentiate it from known-good information. (Such >> display conventions are inherently implementation-specific; one example >> might be use of a distinguished text color or style for information that >> should be treated with caution.)” >> >> Let’s be honest, the “oooh be careful” text provides about as much >> protection as wet tissue paper, and displaying the string in magenta not a >> whole lot more than that — but it’s still better to disclose the cocnern >> than not to. >> >> Regards, >> >> —John >> >> > Thanks, >> > Ketan >> > >> > On Tue, Mar 22, 2022 at 2:54 AM John Scudder <jgs@juniper.net> wrote: >> >> Hi Ketan, >> >> >> >> You asked "whether the responses and draft updates address [my] >> concerns”. I’d say that while I’m not completely happy about certain things >> (e.g., I remain unconvinced that the companion IDR doc shouldn’t be a >> normative reference) I don’t need to continue holding a DISCUSS on them: >> we’ve had a discussion, we don’t completely agree, these things happen. On >> point 4 however, I don’t think our discussion has concluded. At least, if >> you replied to this, I missed it: >> >> >> >> > On Feb 16, 2022, at 2:42 PM, John Scudder <jgs= >> 40juniper.net@dmarc.ietf.org> wrote: >> >> > >> >> >> 4. In §2.1 you talk about the signaling of symbolic names for >> candidate paths. >> >> >> Although you are careful to say that such symbolic names are only >> used for >> >> >> presentation purposes, it seems to me they still could be >> considered a new >> >> >> potential source of vulnerability, since a string that has no >> sanity-checking >> >> >> whatsoever applied by the protocol can display literally anything >> to an >> >> >> operator viewing it. Shouldn’t this be addressed in your Security >> >> >> Considerations? (For an example of a related Security >> Considerations, see RFC >> >> >> 9003. It’s probably not the best example, but it’s the one I had at >> my >> >> >> fingertips…) >> >> >> >> >> >> KT> RFC9003 uses UTF-8 while this document uses printable ASCII. As >> such, I am not aware of security issues around printable ASCII - please do >> point me to any references. >> >> > >> >> > You’re thinking too much like a protocol designer. The kind of >> concern I’m thinking about has to do with using the string as a vector to >> put some words in front of an operator, as part of a larger social >> engineering attempt. I don’t have a detailed attack scenario to paint for >> you, but a quick sketch is along the lines of >> >> > >> >> > - Attacker manages to inject a candidate path with the name >> “Big_Bank_Low_Latency” >> >> > - ProTip: the candidate path does not actually terminate at Big_Bank >> >> > - Attacker then phones NOC, feigns urgency, asks NOC to redirect >> Big_Bank traffic onto that path >> >> > >> >> > You get the idea, I hope. >> >> >> >> More snipped, but this is the meat of it. In case you haven’t looked >> at RFC 9003’s security section, here’s a snip from it: >> >> >> >> As BGP Shutdown Communications are likely to appear in syslog >> output, >> >> there is a risk that carefully constructed Shutdown Communication >> >> might be formatted by receiving systems in a way to make them appear >> >> as additional syslog messages. >> >> >> >> (FWIW, I didn’t contribute that text.) >> >> >> >> Please don’t obsess about “syslog” in the example above, it’s not >> central to the point, just like UTF-8 vs ASCII isn’t central. The point, >> again, is that by introducing a way for an attacker to cause a target >> system to display arbitrary strings, it would seem reasonable to wonder if >> that creates an opportunity for mischief that doesn’t ordinarily exist in >> our protocols, involving misleading people looking at the displayed string >> in a user interface. >> >> >> >> There are various ways this concern could be mitigated (if we were to >> come to agreement that it’s even a concern). One would be to remove the >> “signal arbitrary strings” idea; this is clearly the solidest way to do it. >> Another would be to mandate (or strongly suggest) that symbolic names >> gleaned from something other than configuration be displayed in such a way >> as to make the operator aware of their status. At a minimum, one might add >> a paragraph or two identifying the concern. I’m sure there are other things >> that could be contemplated. >> >> >> >> Regards, >> >> >> >> —John >> > >> > >
- [spring] John Scudder's Discuss on draft-ietf-spr… John Scudder via Datatracker
- Re: [spring] John Scudder's Discuss on draft-ietf… James Guichard
- Re: [spring] John Scudder's Discuss on draft-ietf… Ketan Talaulikar
- Re: [spring] John Scudder's Discuss on draft-ietf… John Scudder
- Re: [spring] John Scudder's Discuss on draft-ietf… Ketan Talaulikar
- Re: [spring] John Scudder's Discuss on draft-ietf… Ketan Talaulikar
- Re: [spring] John Scudder's Discuss on draft-ietf… John Scudder
- Re: [spring] John Scudder's Discuss on draft-ietf… John Scudder
- Re: [spring] John Scudder's Discuss on draft-ietf… Robert Raszuk
- Re: [spring] John Scudder's Discuss on draft-ietf… Ketan Talaulikar
- Re: [spring] John Scudder's Discuss on draft-ietf… John Scudder
- Re: [spring] John Scudder's Discuss on draft-ietf… Ketan Talaulikar
- Re: [spring] John Scudder's Discuss on draft-ietf… John Scudder
- Re: [spring] John Scudder's Discuss on draft-ietf… Ketan Talaulikar