All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Hopwood <david.nospam.hopwood@blueyonder.co.uk>
To: xen-devel@lists.xensource.com
Subject: Re: HT Vulnerability CAN-2005-0109
Date: Thu, 02 Jun 2005 17:41:39 +0100	[thread overview]
Message-ID: <429F36C3.4060301@blueyonder.co.uk> (raw)
In-Reply-To: <200506011501.23079.mark.williamson@cl.cam.ac.uk>

Mark Williamson wrote:
> Sorry I've taken so long to respond!
> 
>>>>It's clear that it is very exploitable.
>>>
>>>On a real world system?
>>
>>Yes.
> 
> I'd be more convinced by a record of a successful exploit on a less restricted 
> workload.  A simplified example for exposition of the problem can still be 
> provided.

Note that Adi Shamir also independently came up with an exploit for this
problem (reported at the Cryptographer's Panel at the RSA security conference
in February 2005), although I don't know the details. See Olin Sibert's
RISKS post at <http://catless.ncl.ac.uk/Risks/23.88.html#subj4>.

>>I think the FreeBSD fix implements the approach suggested in the paper of
>>not scheduling threads with different privileges on the same HT processor.
> 
> For now I think they've just disabled HT (by default) whilst figuring out what 
> the best fix is for the long term.

Yes, you're right:
<ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-05:09/htt5.patch>

>>In Xen, this would correspond to only giving any particular domain a whole
>>HT processor. I'm not sure how that would affect performance; it could
>>result in only one thread of an HT processor being used in some cases, but
>>OTOH cache utilization might improve in others.
> 
> Yeah, I'd agree with that.  HT is always a bit of a mixed bag wrt performance
> 
> I suspect it's actually more useful from a performance PoV to give a domain 
> two HT threads so it at least has the option of doing some clever scheduling 
> (rather than two domains that don't know about each other).  Ideally, we'd 
> export CPU topology info to the domains so that they can be aware of this (I 
> don't know if we do this right now?  Linux Scheddomains would be able to use 
> this).

I would think that as long as "cpuid" works (or is replaced by a hypercall),
a domain running an HT-aware OS should be able to figure this out in the same
way it does for real hardware.

> The other option is to give one thread to a domU and the other thread to a 
> driver domain (e.g. dom0).  This is safe (in the sense it doesn't make things 
> any worse) since domains that control real hardware can abuse DMA to read 
> memory anyway (plus at the moment they have the ability to map domain memory 
> directly).

However, the domU could spy on the driver domain in that case. How significant
this is depends on what device it is, and whether the driver domain is running
any code vulnerable to side channel analysis.

-- 
David Hopwood <david.nospam.hopwood@blueyonder.co.uk>

  reply	other threads:[~2005-06-02 16:41 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-05-18 14:43 HT Vulnerability CAN-2005-0109 Nils Toedtmann
2005-05-18 14:48 ` Mark Williamson
2005-05-18 23:09   ` David Hopwood
2005-05-19  2:46     ` Mark Williamson
2005-05-19 10:33       ` Nils Toedtmann
2005-05-19 17:45       ` David Hopwood
2005-06-01 14:01         ` Mark Williamson
2005-06-02 16:41           ` David Hopwood [this message]
2005-06-03 13:38             ` Mark Williamson
  -- strict thread matches above, loose matches on Subject: below --
2005-05-18 15:27 Jonathan S. Shapiro
2005-05-18 16:44 ` Mark Williamson
2005-05-18 16:53   ` Jonathan S. Shapiro
2005-05-18 17:14     ` Mark Williamson
2005-05-19 10:59 Ian Pratt
2005-05-19 12:55 ` Nils Toedtmann

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=429F36C3.4060301@blueyonder.co.uk \
    --to=david.nospam.hopwood@blueyonder.co.uk \
    --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.