Messages in this thread | | | From | Linus Torvalds <> | Date | Wed, 4 Oct 2017 10:28:13 -0700 | Subject | Re: [kernel-hardening] [RFC V2 4/6] lib: vsprintf: default kptr_restrict to the maximum value |
| |
On Wed, Oct 4, 2017 at 10:08 AM, Linus Torvalds <torvalds@linux-foundation.org> wrote: > > So I honestly doubt the value of kptr_restrict. Any *sane* policy > pretty much has to be in the caller, and by thinking about what you > print out. IOW, things like proc_pid_wchan().
Looking at /proc/kallsyms is actually a prime example of this.
IOW, the old "open /proc/kallsyms as a normal user, then make it stdin for some suid-root program that can be fooled to output it probably works on it.
So kptr_restrict ends up being entirely the wrong thing to do there.
The only value in kptr_restrict ends up being as a complete hack, where you say "I trust nobody" and make %p almost entirely useless.
And as mentioned, that will just make people use %x instead, or randomly sprinkle the new "I didn't really mean this" modifiers like the already discussed pr_debug() case.
So even when kptr_restrict "works", it ends up just fighting itself. And most of the time it just doesn't work.
Linus
| |