Re: [patch] Add basic sanity checks to the syscall execution patch

From: pageexec
Date: Fri Sep 05 2008 - 12:24:56 EST


On 5 Sep 2008 at 17:42, Ingo Molnar wrote:

> * pageexec@xxxxxxxxxxx <pageexec@xxxxxxxxxxx> wrote:
>
> > there's that adage about history being repeated by those not knowing it ;)
> > for details see the series based around bypassing Vista's PatchGuard at:
> >
> > http://uninformed.org/?v=3
> > http://uninformed.org/?v=6
> > http://uninformed.org/?v=8
>
> i think Linux is fundamentally different here as we have the source
> code, and could apply the randomization technique i mentioned:

how's that supposed to work for the binary distros, i.e., the majority of
end users? and who would look at all the bugreports from such kernels?

> > > [ It would be nice to have a 'randomize instruction scheduling'
> > > option for gcc, to make automated attacks that recognize specific
> > > instruction patterns less reliable. ]
>
> and every box where it matters we could have a _per box_ randomized
> kernel image in essence, with non-essential symbols thrown away, and
> with a few checks inserted in random locations - inlined and in essence
> unrecognizable from the general entropy of randomization.
>
> Not that a randomizing compiler which inserts true, hard to eliminate
> entropy would be easy to implement. But once done, the cat and mouse
> game is over and the needle is hidden in the hay-stack. At least as long
> as transparent rootkits are involved.
>
> a successful attack that wants to disable the checks

why do you assume that an attacker wants to do that? it's equally possible,
and there's even academic research on this in addition to the underground
cracking scene, that one simply hides the modifications from the checker.

from marking your patched code as unreadable to executing it from a different
place than what the checker checks, there're many ways to trick such checkers.
as far as reality goes, it's never been game over ;).

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/