From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935369AbdJQXQF (ORCPT ); Tue, 17 Oct 2017 19:16:05 -0400 Received: from out4-smtp.messagingengine.com ([66.111.4.28]:52049 "EHLO out4-smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933132AbdJQXQD (ORCPT ); Tue, 17 Oct 2017 19:16:03 -0400 X-ME-Sender: Date: Wed, 18 Oct 2017 10:15:59 +1100 From: "Tobin C. Harding" To: Steven Rostedt Cc: kernel-hardening@lists.openwall.com, Linus Torvalds , Kees Cook , Paolo Bonzini , Tycho Andersen , "Roberts, William C" , Tejun Heo , Jordan Glover , Greg KH , Petr Mladek , Joe Perches , Ian Campbell , Sergey Senozhatsky , Catalin Marinas , Will Deacon , Chris Fries , Dave Weinstein , Daniel Micay , Djalal Harouni , linux-kernel@vger.kernel.org Subject: Re: [PATCH v2] printk: hash addresses printed with %p Message-ID: <20171017231559.GD8001@eros> References: <1508215972-7769-1-git-send-email-me@tobin.cc> <20171017093119.6dd98919@gandalf.local.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20171017093119.6dd98919@gandalf.local.home> X-Mailer: Mutt 1.5.24 (2015-08-30) User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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" 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 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. We still have %pa[pd] to see to as well obviously. thanks for the review, Tobin.