Re: [patch 0/5] Support for sanitization flag in low-level page allocator

Rik van Riel
2009-05-30T14:09:35Z

Peter Zijlstra wrote:
> On Sat, 2009-05-30 at 13:42 +0200, pageexec@freemail.hu wrote:
>>> Why waste time on this?
>> e.g., when userland executes a syscall, it 'can run kernel code'. if that kernel
>> code (note: already exists, isn't provided by the attacker) gives unintended
>> kernel memory back to userland, there is a problem. that problem is addressed
>> in part by early sanitizing of freed data.
>
> Right, so the whole point is to minimize the impact of actual bugs,
> right? So why not focus on fixing those actual bugs? Can we create tools
> to help us find such bugs faster? We use sparse for a lot of static
> checking, we create things like lockdep and kmemcheck to dynamically
> find trouble.
>
> Can we instead of working around a problem, fix the actual problem?

Do you drive without seatbelts, because the real fix
is to stay out of accidents?

No software is bug free.

Let me repeat that: no software is bug free.

This means your security strategy cannot rely on
software being bug free.

This is why every security strategy is a "belt and
suspenders" thing, where:
1) code is audited to remove as many bugs as possible, and
2) the system is configured in such a way that the impact
of the remaining bugs is limited

For example, if you check your own system you will find
that system daemons like bind and httpd run with limited
privileges. This is done because, again, no software is
bug free and you want to limit the damage that can be done
after a bug is exploited.

--
All rights reversed.