On Fri, 30 Nov 2018, Ted Lemon wrote:

Separately, on the topic of provisioning, the right answer here is to just say 
that the whitelist is installed with the provisioning profile, and not 
recommend a UI flow.   It's the recommendation for the UI
flow that I'm objecting to.

There is no "recommendation". There is a MAY clause:

   To determine this, an
   implementation MAY interactively ask the user when a VPN profile is
   installed or activated to confirm this.  Alternatively, it MAY
   provide a special override keyword in its provisioning configuration
   to ensure non-interactive agreement can be achieved only by the party
   provisioning the VPN client, who presumbly is a trusted entity by the
   end-user.

It seems our views differ here, which I would say is covered by the MAY
not being a SHOULD/MUST or RECOMMEND.

 This is a bad security practice that is slowly falling into disfavor.   I 
admit I'm ahead of the curve on this, but the writing is on the wall, and 
again, I'm not asking for
ponies here.

I disagree and find your reasoning a little conflicting. Your proposal
is to always leave the user uninformed, ensuring that all users might
not be aware of anything. This gives individuals who would recognise
"do you agree to whitelist gmail.com" for VPN provider Cheap Access Inc
no more notification to stop installing the provisioning changes.

I explained big company's like Apple already do this when installing a
Root CA as part of a provisioning step, and it seems logical to do the
same for DNSSEC based trust anchors as we do for WebPKI based trust
anchors.

 I agree that if you are going to use the whitelist method, you need to install 
it somehow.

I am glad we agree there :)

 I do not agree that you need to advise implementors to do something which, 
while presently common,
is actually a bad practice.

I hope my explanation above about not recommending it but not forbidding
it either is good enough for both of us.

Paul

On Fri, Nov 30, 2018 at 10:53 AM Paul Wouters <p...@nohats.ca> wrote:
      On Thu, 29 Nov 2018, Ted Lemon wrote:

      > On Thu, Nov 29, 2018 at 12:31 AM Paul Wouters <p...@nohats.ca> wrote:
      >       How could the use case be more constrained without breaking 
functionality?
      >
      > I discussed this in detail in several previous posts, e.g.:

      > https://mailarchive.ietf.org/arch/msg/dnsop/97xk8Zm1NGpyadZ8lsL3MhRtYGk
      > https://mailarchive.ietf.org/arch/msg/dnsop/hkRowALa5yT4IoSmqCpdZg4e78I

      Well, you argued for changing things so much that it breaks
      functionality :) And you would require the VPN client to have
      some kind of DNSSEC resolving capability before the tunnel is
      setup. And if those checks need to be done during tunnel setup
      then there is also a significant delay that would affect on-demand
      tunnels.

      I especially disagree with your text:

              I think that we should let the field tell us before figuring out 
how to solve that problem.

      > I explained this in the previous posts.   I would be happy (really!) to 
help improve the text, but it would be a significant change, and I'm getting the 
impression from
      > Warren that he would like to not do that..

      More specifically, the enterprise use case should not be further changed
      to a more manual problem. In our previous discussions, both with the list
      and the Security AD, we made it clear that this is as far as we can go
      without destroying the enterprise use case. That is, let the provisioning
      provide the list of names for override, give software a chance to warn,
      and treat it otherwise as trusted enterprise provisioning. It is up to
      the implementations on how or where they would support internal trust
      anchors. For example a phone OS could limit this via "enterprise managed"
      phone modes only and not allow "emailed profiles" to have these trust
      points.

      >> Have you ever installed a Configuration Profile on iOS device? If your 
profile contains a VPN profile which contains a PkCS12 it will warn (entity 
installing this
      >> can monitor all your traffic) and show you the root CA.
      >
      > Yes.   That's a very bad UI flow.   It means that I can just hand you a 
configuration profile to install, and you can install it easily.   And you will 
install it—you're
      > installing it because you want to get something, and when you're presented with "ok" or 
"cancel," it's going to be very clear to you that "ok" will get you whatever it
      > is that you want, and "cancel" will not get you what you want.   So 
even offering the user this choice has created a gigantic attack surface..   I think of UIs 
like this
      > as "social engineering enablement UIs."

      Well, this is where rubber meets the road. There is nothing I can come
      up with that will be rejected by the people who want to see dancing
      hamsters or playful kittens. An enterprise can hand out phones that
      are restricted with respect to provisioning and they can control it
      as they see fit. If such an enterprise wants to support BYOD, they
      can choose to forbid these trust anchors on those phones and/or
      limit those VPN connections in other ways.

      If you let random internet companies install profiles with various
      kinds of super powers, no RFC in the world will stop them.

      Paul



      >  
      >       The idea of the text is that this can be similarly done and 
warning you about the domains whitelisted. That would help if it suddenly lists 
gmail.com or
      >       yahoo.com. I believe this adds value and is better than not 
presenting the whitelist. Ignorant users will just click click click regardless 
and knowledgeable
      >       users can go “wait a minute”
      >
      >
      > I assume that knowledgable users will do the right thing if given the 
right information; often these dialogs do not actually give the right information. 
  But it's the
      > ignorant users I actually care about, because there are probably three 
or four orders of magnitude more of them.   As a knowledgable user, UIs like this 
actually create
      > a lot of stress for me, because they never actually tell me what 
they're going to do, and yet I know that if they are doing something other than 
what I hope they are
      > doing, clicking "yes" will create a new attack surface on my device.   So I usually click 
"no," even though it's probably okay to click "yes."   If we want devices to be
      > more secure, we have to come up with UI flows that get the user what they need without 
forcing them to choose between "win and get hacked" and "lose and don't get
      > hacked."
      >
      >




_______________________________________________
DNSOP mailing list
DNSOP@ietf.org
https://www.ietf.org/mailman/listinfo/dnsop

Reply via email to