All of lore.kernel.org
 help / color / mirror / Atom feed
From: Harry Butterworth <harry@hebutterworth.freeserve.co.uk>
To: Hollis Blanchard <hollisb@us.ibm.com>
Cc: Xen-devel <xen-devel@lists.xensource.com>
Subject: Re: xend leaks/bugs/etc
Date: Mon, 18 Apr 2005 17:49:10 +0100	[thread overview]
Message-ID: <1113842950.7086.128.camel@localhost> (raw)
In-Reply-To: <1113840962.9390.3.camel@localhost.localdomain>

On Mon, 2005-04-18 at 11:16 -0500, Hollis Blanchard wrote:
> On Mon, 2005-04-18 at 10:45 -0500, Anthony Liguori wrote:
> > Hollis Blanchard wrote:
> > 
> > >On Mon, 2005-04-18 at 10:15 -0500, Anthony Liguori wrote:
> > >  
> > >>This is a very big problem.  One very difficult issue to address is
> > >>how to deal with very hostile domains that may attempt DoS attacks by 
> > >>flooding their own console.
> > >
> > >This isn't really a xend issue. I'm not sure this *can* be addressed,
> > >and I believe other hypervisors have this problem as well.
> > >  
> > I'm not sure I agree.  Since Xen only provides shared-memory and event 
> > channels, the tools control how frequently they look at shared-memory 
> > (so a tool can throttle itself).  The only possible DoS venue should be 
> > the event channels.  The tools should simply be able to unbind from 
> > event channels that are considered hostile.
> 
> And how exactly would you distinguish between a hostile domain and a
> mission-critical-yet-chatty domain? Or would you indiscriminately drop
> console data from all overly talkative domains?
> 

The above are just quota issues. It ought to be possible to throttle
inter-domain notification to meet a quota. The quotas can be
configurable. A mission critical yet chatty domain must be configured
with a high quota and it gets to starve other less critical domains when
it wants.

The problems with the existing xend code are less subtle.  On the order
of failing to check parameters passed from domains or failing to cope
with domains that issue protocol requests out of sequence.  Basically,
as far as I can tell, the current xend code just assumes that the
communication it is handling will follow the expected good path and the
behaviour of xend if things do not go to plan is substantially
undefined.

I guess it's possible that this has all been carefully thought through
but it certainly isn't obvious from reading the code: the state machines
for handling the device channel set-up protocol are coded implicitly in
the chaining of message handling functions, it's very hard to say what
the behaviour is under receipt of erroneous or malicious sequences of
messages from front or back end domains.

Harry

  reply	other threads:[~2005-04-18 16:49 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-17 15:42 xend leaks/bugs/etc Ian Pratt
2005-04-18  6:00 ` Allen Short
2005-04-18 14:32   ` Harry Butterworth
2005-04-18 15:15     ` Anthony Liguori
2005-04-18 15:27       ` Hollis Blanchard
2005-04-18 15:45         ` Anthony Liguori
2005-04-18 16:16           ` Hollis Blanchard
2005-04-18 16:49             ` Harry Butterworth [this message]
2005-04-18 18:01             ` Anthony Liguori
2005-04-18 17:53               ` Hollis Blanchard
2005-04-20  7:10                 ` Jacob Gorm Hansen
2005-04-20 14:16                   ` Anthony Liguori
2005-04-21 22:58                     ` Jacob Gorm Hansen
2005-04-22  0:21                       ` Anthony Liguori
2005-04-18 15:58       ` Harry Butterworth
2005-04-18 21:33       ` Mike D. Day
  -- strict thread matches above, loose matches on Subject: below --
2005-04-18 23:12 Ian Pratt
2005-04-20  7:54 ` Jacob Gorm Hansen
2005-04-20 14:34   ` Hollis Blanchard
2005-04-16 18:08 Allen Short

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=1113842950.7086.128.camel@localhost \
    --to=harry@hebutterworth.freeserve.co.uk \
    --cc=hollisb@us.ibm.com \
    --cc=xen-devel@lists.xensource.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.