linux/fs/proc
Kalesh Singh 36fbb55631 FROMGIT: procfs: prevent unpriveleged processes accessing fdinfo dir
The file permissions on the fdinfo dir from were changed from
S_IRUSR|S_IXUSR to S_IRUGO|S_IXUGO, and a PTRACE_MODE_READ check was added
for opening the fdinfo files [1].  However, the ptrace permission check
was not added to the directory, allowing anyone to get the open FD numbers
by reading the fdinfo directory.

Add the missing ptrace permission check for opening the fdinfo directory.

[1] https://lkml.kernel.org/r/20210308170651.919148-1-kaleshsingh@google.com

Link: https://lkml.kernel.org/r/20210713162008.1056986-1-kaleshsingh@google.com
Fixes: 7bc3fa0172 ("procfs: allow reading fdinfo with PTRACE_MODE_READ")
Signed-off-by: Kalesh Singh <kaleshsingh@google.com>
Cc: Kees Cook <keescook@chromium.org>
Cc: Eric W. Biederman <ebiederm@xmission.com>
Cc: Christian Brauner <christian.brauner@ubuntu.com>
Cc: Christian König <christian.koenig@amd.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Hridya Valsaraju <hridya@google.com>
Cc: Jann Horn <jannh@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Mark Brown <broonie@kernel.org>

Bug: 151772539
Change-Id: I274b30aa0a5ce8412eae7161d31c6ee955035da9
(cherry picked from commit fc73829fa54b0c7af32d6da7c972eb3390957da4
 git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master)
Signed-off-by: Kalesh Singh <kaleshsingh@google.com>
2021-07-29 15:10:21 -04:00
..
array.c seccomp: Fix CONFIG tests for Seccomp_filters 2021-05-14 09:50:24 +02:00
base.c UPSTREAM: procfs: allow reading fdinfo with PTRACE_MODE_READ 2021-07-12 22:38:16 +00:00
bootconfig.c FROMLIST: bootconfig: Change array value to use child node 2021-06-03 19:56:53 +00:00
cmdline.c
consoles.c
cpuinfo.c proc/cpuinfo: switch to ->read_iter 2020-11-06 10:05:18 -08:00
devices.c
fd.c FROMGIT: procfs: prevent unpriveleged processes accessing fdinfo dir 2021-07-29 15:10:21 -04:00
fd.h
generic.c fs/proc/generic.c: fix incorrect pde_is_permanent check 2021-05-19 10:13:09 +02:00
inode.c proc: wire up generic_file_splice_read for iter ops 2020-11-06 10:05:18 -08:00
internal.h proc: fix lookup in /proc/net subdirectories after setns(2) 2020-12-30 11:53:56 +01:00
interrupts.c
Kconfig
kcore.c
kmsg.c
loadavg.c
Makefile
meminfo.c ANDROID: vendor_hooks: Add hooks for memory when debug 2021-03-19 04:54:07 +00:00
namespaces.c
nommu.c
page.c
proc_net.c proc: fix lookup in /proc/net subdirectories after setns(2) 2020-12-30 11:53:56 +01:00
proc_sysctl.c proc: use kvzalloc for our kernel buffer 2021-03-04 11:38:21 +01:00
proc_tty.c
root.c
self.c proc: don't allow async path resolution of /proc/thread-self components 2021-03-04 11:38:42 +01:00
softirqs.c
stat.c proc/stat: switch to ->read_iter 2020-11-06 10:05:18 -08:00
task_mmu.c ANDROID: mm: page_pinner: use put_user_page at seq_print_vma_name 2021-04-30 09:13:35 -07:00
task_nommu.c
thread_self.c proc: don't allow async path resolution of /proc/thread-self components 2021-03-04 11:38:42 +01:00
uptime.c
util.c
version.c
vmcore.c