From: "Daniel P. Berrange" <berrange@redhat.com>
To: Jason Wang <jasowang@redhat.com>
Cc: Shaun Reitan <shaun.reitan@ndchost.com>,
qemu-devel@nongnu.org, Markus Armbruster <armbru@redhat.com>
Subject: Re: [Qemu-devel] [PATCH] Add ability to provide ifname when using netdev bridge or tap helper
Date: Wed, 17 Jan 2018 10:58:51 +0000 [thread overview]
Message-ID: <20180117105851.GG19227@redhat.com> (raw)
In-Reply-To: <05429a58-4013-c6ad-853c-73037086366d@redhat.com>
On Wed, Jan 17, 2018 at 06:53:30PM +0800, Jason Wang wrote:
>
>
> On 2018年01月17日 18:31, Daniel P. Berrange wrote:
> > On Tue, Jan 16, 2018 at 03:18:24PM -0800, Shaun Reitan wrote:
> > > This patch replaces the patch I sent yesturday. This one fixes
> > > a bug in my original code as well as corrects a few styling
> > > issues. Hopfully this one comes out correct! Sorry for the
> > > inconvienece.
> > > When currently using -netdev bridge or -netdev tap with a helper
> > > you are unable to set an ifname. This patch adds that ability so
> > > that you can now specify an ifname.
> > I really don't think users should be allowed to override the
> > ifname when using the setuid bridge helper. This allows an
> > unprivileged users to create tap devices that may confuse the
> > sysadmin, and/or network mgmt scripts.
>
> Ok, I drop it from my queue.
>
> >
> > eg consider the user asks for a tap device called eth1. To the
> > sysadmin the user's tap device now looks like a physical NIC.
> > This can be even worse if the host does physical NIC hotplug,
> > or uses SRIOV. eg consider the host as eth0 -> eth7 for SRIOV
> > NICs, and eth3 is given to a guest. Now a user uses the setuid
> > helper to ask for a TAP called eth3. When the SRIOV device is
> > later released by the guest it will end up called eth8, as the
> > TAP device occupies eth3. In bad cases this could even cause
> > the host mgmt layer to configure bogus addresses on the eth3
> > TAP device instead of the SRIOV device.
>
> It looks to me that mgmt should not assume the type or location of device
> just from its name. Ethtool should be used to do this.
Yes, a well written tool, or a prudent administrator should be careful
and validate the devices they use, but most have assumptions they make
which could easily be violated here.
> > If we want to allow ifname to be set via the setuid helper, then IMHO,
> > the config file for the helper *must* whitelist the various permitted
> > naming patterns.
>
> Good point but this only work for e.g default helper. Qemu allows 3rd helper
> which can do anything they want.
If anyone writes a custom setuid helper, they are responsible for writing
to in a way that doesn't open security holes, or expose the admin to
intentionally misleading setup. IOW, that is somebody else's problem.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2018-01-17 10:59 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-16 23:18 [Qemu-devel] [PATCH] Add ability to provide ifname when using netdev bridge or tap helper Shaun Reitan
2018-01-17 3:35 ` Jason Wang
2018-01-17 10:31 ` Daniel P. Berrange
2018-01-17 10:39 ` Paolo Bonzini
2018-01-17 13:28 ` Philippe Mathieu-Daudé
2018-01-17 10:53 ` Jason Wang
2018-01-17 10:58 ` Daniel P. Berrange [this message]
2018-01-17 15:26 ` Eric Blake
2018-01-17 18:11 ` Shaun Reitan
2018-01-18 11:53 ` Jason Wang
2018-01-18 21:56 ` Shaun Reitan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180117105851.GG19227@redhat.com \
--to=berrange@redhat.com \
--cc=armbru@redhat.com \
--cc=jasowang@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=shaun.reitan@ndchost.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.