linux-um archives
 help / color / mirror / Atom feed
From: Blaisorblade <blaisorblade_spam@yahoo.it>
To: Bodo Stroesser <bstroesser@fujitsu-siemens.com>
Cc: Jeff Dike <jdike@addtoit.com>,
	user-mode-linux-devel@lists.sourceforge.net
Subject: Skas0 security problems (was: Re: [uml-devel] skas mode on a non-skas host)
Date: Tue, 30 Nov 2004 20:02:17 +0100	[thread overview]
Message-ID: <200411302002.17224.blaisorblade_spam@yahoo.it> (raw)
In-Reply-To: <41ACB90C.7070209@fujitsu-siemens.com>

On Tuesday 30 November 2004 19:16, Bodo Stroesser wrote:
> Blaisorblade wrote:
> > On Tuesday 30 November 2004 13:11, Bodo Stroesser wrote:
> >>Jeff Dike wrote:
> >>>Prompted by some questions from Blaisorblade about whether something
> >>> like skas mode might be implemented on unpatched hosts, I went ahead
> >>> and did exactly that.

> >>>The basic idea is that in place of /proc/mm and PTRACE_FAULTINFO, we
> >>> have a couple of extra pages in the userspace process to hold code that
> >>> we are going to use to make it change its address space and to handle
> >>> segfaults so addresses and access modes can be reported back to the
> >>> kernel process.

> >>>The end result is something that is very close to skas mode, just as
> >>>secure, loses two pages of address space to UML rather than .5G, should
> >>>be almost as fast, and runs on a stock host kernel.

(From Bodo):

> >>Looks like a very good idea!
> >>But, please, be careful regarding security. If I understand the code
> >> right, the stubs always are readable and executable, but not writable
> >> for the user code. Thus, we have to ensure, that no one can singlestep a
> >> syscall that resides there.

> >>Unfortunatly, if IIRC, the generic kernel code doesn't
> >>support more than one fixaddr range.

> > Yes, I think. But why do you need it to be a fixaddr range? I guess you
> > just need to mark it as reserved, right? The copy_from_user check, i.e.
> > address_ok, can easily be fixed like we want. The cost is not relevant
> > either, since a SKAS copy_from_user requires manually walking the page
> > tables.
> >
> > But it's a different thing: you haven't got the requirement to map it at
> > a fixed address in the kernel space, and it's the only purpose that only
> > fixmap can accomplish.
>
> I agree. But no matter, which method is choosen, the relevant thing is to
> make copy_from_user() work on this area.
>
> >>And it isn't possible to join the
> >>stubs and vsyscall in a common area. So the obvious way to handle the
> >> stubs with the same method as vsyscall won't work.

> >>Since this is a security
> >>issue, I decided not to CC the list.

> > I hope that nobody is running that on production systems,

I.e. "I hope" means that nobody should at all being running it on production, 
since it's a bad idea...

> > so I hope it's 
> > a different case here. However, for now

> For now, I agree.

> But SKAS0 by design can be as safe as SKAS, so IMHO, we 
> should try do have the same security in both.
Yes, that is *just* for now. I meant that this kind of security issue is 
different.

In this case, publicising it, since we are speaking of beta-quality code, is a 
good idea. In fact, this time, I'm CC:ing the list.

Publicising a vulnerability on production code, instead, is different, 
especially when it comes to posting exploits for testing.

> >>By the way: Could you please shift the assembler-parts to sys-i386/XXX?

> >>Bodo

-- 
Paolo Giarrusso, aka Blaisorblade
Linux registered user n. 292729
http://www.user-mode-linux.org/~blaisorblade


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. 
http://productguide.itmanagersjournal.com/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

      parent reply	other threads:[~2004-11-30 18:59 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-11-29 22:50 [uml-devel] skas mode on a non-skas host Jeff Dike
     [not found] ` <Pine.LNX.4.58.0411291623340.5077@sparrow>
2004-11-30 16:10   ` Blaisorblade
2004-11-30 17:20     ` Gerd Knorr
     [not found] ` <200411301912.21155.blaisorblade_spam@yahoo.it>
     [not found]   ` <41ACB90C.7070209@fujitsu-siemens.com>
2004-11-30 19:02     ` Blaisorblade [this message]

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=200411302002.17224.blaisorblade_spam@yahoo.it \
    --to=blaisorblade_spam@yahoo.it \
    --cc=bstroesser@fujitsu-siemens.com \
    --cc=jdike@addtoit.com \
    --cc=user-mode-linux-devel@lists.sourceforge.net \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox