lkml.org 
[lkml]   [2010]   [Nov]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] kernel: make /proc/kallsyms mode 400 to reduce ease of attacking

    * Marcus Meissner <meissner@suse.de> wrote:

    > On Thu, Nov 04, 2010 at 12:46:48PM +0100, Ingo Molnar wrote:
    > >
    > > * Marcus Meissner <meissner@suse.de> wrote:
    > >
    > > > Hi,
    > > >
    > > > Making /proc/kallsyms readable only for root makes it harder for attackers to
    > > > write generic kernel exploits by removing one source of knowledge where things are
    > > > in the kernel.
    > >
    > > Cc:-ed Linus - i think he argued in favor of such a patch in the past.
    > >
    > > I generally agree with such patches (i have written some myself), but there's a few
    > > questions with this one, which make this limited change ineffective and which make
    > > it harder to implement a fuller patch that makes it truly harder to figure out the
    > > precise kernel build:
    > >
    > > - The real security obstruction effect is very small from this measure alone: the
    > > overwhelming majority of our users are running distro kernels, so the Symbol.map
    > > file (and hence 99% of /proc/kallsyms content) is well-known - unless we also
    > > restrict 'uname -r' from nonprivileged users-ace. Hiding that might make sense -
    > > but the two should be in one patch really.
    >
    > Of course. System.map and others also need to turn to mode 400.

    That is not what I meant, at all.

    It's not the System.map _on the system_.

    It's the SuSE or Fedora kernel rpm package with a System.map in it, which
    package the attacker can download from a hundred mirrors on the internet,
    based on 'uname -r' output.

    You cannot obfuscate the System.map of a distro kernel without obfuscating all
    identification info. (Note that even the pure size of the System.map might tell a
    kernel rpm version from another ...)

    Ingo


    \
     
     \ /
      Last update: 2010-11-04 15:01    [W:0.024 / U:29.756 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site