我正在使用 chkroot 扫描我的系统并且它给了我权限被拒绝错误
/proc/23746/fd/0: Permission denied
/proc/23746/fd/1: Permission denied
/proc/23746/fd/2: Permission denied
/proc/23746/fd/3: Permission denied
/proc/23746/fd/5: Permission denied
/proc/23746/fd/8: Permission denied
/proc/23746/fd/11: Permission denied
[/proc/23746/fd]# ls -liah
/bin/ls: cannot read symbolic link 0: Permission denied
/bin/ls: cannot read symbolic link 1: Permission denied
/bin/ls: cannot read symbolic link 2: Permission denied
/bin/ls: cannot read symbolic link 3: Permission denied
/bin/ls: cannot read symbolic link 5: Permission denied
/bin/ls: cannot read symbolic link 8: Permission denied
/bin/ls: cannot read symbolic link 11: Permission denied
total 0
1489109001 dr-x------ 2 root root 0 Oct 8 10:46 ./
1489108994 dr-xr-xr-x 4 root root 0 Oct 8 10:46 ../
1489141760 lrwx------ 1 root root 64 Oct 8 10:48 0
1489141761 lrwx------ 1 root root 64 Oct 8 10:48 1
1489141771 lr-x------ 1 root root 64 Oct 8 10:48 11
1489141762 lrwx------ 1 root root 64 Oct 8 10:48 2
1489141763 lrwx------ 1 root root 64 Oct 8 10:48 3
1489141765 lr-x------ 1 root root 64 Oct 8 10:48 5
1489141768 l-wx------ 1 root root 64 Oct 8 10:48 8
我该怎么做才能修复它们
答案1
当我尝试检查我自己的用户进程的文件描述符时,我也看到了这一点。据我所知,这是 /proc 文件系统中安全漏洞的一种廉价解决方法,它允许您绕过权限通过 /proc/$pid/fd 打开文件。似乎他们只是让 root 拥有 proc 中的所有文件描述符。
我可以在 ubuntu 上顺利做到这一点,但不行在 CentOS 上。
你可以在这里读到它: http://lwn.net/Articles/359286/
答案2
正如 @JellicleCat 在评论中所说,如果您在 Docker 容器中(像我一样),只需转到主机的终端。容器进程属于它。
答案3
没关系:您无法访问不属于您的进程的资源(除非您是 root 用户)