On Tue, Oct 17, 2017 at 05:13:10PM -0700, Kees Cook wrote: > On Tue, Oct 17, 2017 at 4:15 PM, Tobin C. Harding <m...@tobin.cc> wrote: > > On Tue, Oct 17, 2017 at 09:31:19AM -0400, Steven Rostedt wrote: > >> On Tue, 17 Oct 2017 15:52:51 +1100 > >> "Tobin C. Harding" <m...@tobin.cc> wrote: > >> > >> > Currently there are many places in the kernel where addresses are being > >> > printed using an unadorned %p. Kernel pointers should be printed using > >> > %pK allowing some control via the kptr_restrict sysctl. Exposing > >> > addresses > >> > gives attackers sensitive information about the kernel layout in memory. > >> > > >> > We can reduce the attack surface by hashing all addresses printed with > >> > %p. This will of course break some users, forcing code printing needed > >> > addresses to be updated. > >> > > >> > For what it's worth, usage of unadorned %p can be broken down as follows > >> > > >> > git grep '%p[^KFfSsBRrbMmIiEUVKNhdDgCGO]' | wc -l > >> > >> Does %p[FfSs] leak addresses? Well, I guess it does if they are not > >> found in kallsyms, but otherwise you have: > >> > >> function+0x<offset> > > > > You are correct %pF and %pS print an offset. Does this provide an attack > > vector, > > I didn't think so but I'm no security expert. If they do then we need to > > amend > > those calls also. > > They haven't traditionally been a big deal. If they turn out to be > problematic, we can deal with it then, IMO.
Thanks Kees, Tobin.