[PATCH 2/2] mm: restrict access to /proc/meminfo

From: Vasiliy Kulikov
Date: Tue Sep 27 2011 - 13:57:35 EST


/proc/meminfo stores information related to memory pages usage, which
may be used to monitor the number of objects in specific caches (and/or
the changes of these numbers). This might reveal private information
similar to /proc/slabinfo infoleaks. To remove the infoleak, just
restrict meminfo to root. If it is used by unprivileged daemons,
meminfo permissions can be altered the same way as slabinfo:

groupadd meminfo
usermod -a -G meminfo $MONITOR_USER
chmod g+r /proc/meminfo
chgrp meminfo /proc/meminfo

Signed-off-by: Vasiliy Kulikov <segoon@xxxxxxxxxxxx>
CC: Kees Cook <kees@xxxxxxxxxx>
CC: Dave Hansen <dave@xxxxxxxxxxxxxxxxxx>
CC: Christoph Lameter <cl@xxxxxxxxxx>
CC: Pekka Enberg <penberg@xxxxxxxxxxxxxx>
CC: Valdis.Kletnieks@xxxxxx
CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
CC: David Rientjes <rientjes@xxxxxxxxxx>
CC: Alan Cox <alan@xxxxxxxxxxxxxxx>
---
fs/proc/meminfo.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

--
diff --git a/fs/proc/meminfo.c b/fs/proc/meminfo.c
index 5861741..949bdee 100644
--- a/fs/proc/meminfo.c
+++ b/fs/proc/meminfo.c
@@ -187,7 +187,7 @@ static const struct file_operations meminfo_proc_fops = {

static int __init proc_meminfo_init(void)
{
- proc_create("meminfo", 0, NULL, &meminfo_proc_fops);
+ proc_create("meminfo", S_IFREG | S_IRUSR, NULL, &meminfo_proc_fops);
return 0;
}
module_init(proc_meminfo_init);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/