Messages in this thread | | | Date | Sat, 20 Nov 2010 11:05:46 +0000 | From | "Richard W.M. Jones" <> | Subject | Re: [PATCH] kernel: make /proc/kallsyms mode 400 to reduce ease of attacking |
| |
Sorry for being late to join this thread.
I thought I'd also mention that if you can insert a small amount of shell code into the kernel, it's trivial to search kernel memory for the symbol table and derive anything else you want from that.
I wrote some proof of concept code to do this a few years ago[1]. I'm pretty sure you could compress this down to a few bytes of assembler.
(Plus I don't think that removing pointers is a good idea anyway -- it just breaks userspace tools, and any real world system is going to be running a well-known kernel that can be downloaded from some mirror somewhere)
Rich.
[1] It's a poor example, but in here is code that searched for ksyms and kallsyms in 32 bit i386 kernels (files virt_mem_ksyms.ml and virt_mem_kallsyms.ml). http://git.annexia.org/?p=virt-mem.git;a=tree;f=lib;hb=HEAD
-- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones virt-df lists disk usage of guests without needing to install any software inside the virtual machine. Supports Linux and Windows. http://et.redhat.com/~rjones/virt-df/
| |