“没人”用户可以在哪个目录中写入?


10

nobody用户可以在标准的现成的Ubuntu发行版中写入哪些目录中?

我已经知道/tmp哪个是drwxrwxrwt,但是默认情况下是否还有其他用户可以写的地方?


/var/tmp一。
muru

Answers:


16

在我的系统列表上运行检查:

$ sudo find / -xdev -type d \( \( -user nobody -o -group nogroup \) -o -perm -777 \)
/tmp
/tmp/.X11-unix
/tmp/.ICE-unix
/var/tmp
/var/metrics
/var/spool/samba
/var/crash

其中,我想/tmp/var/tmp/var/crash在场所有的Ubuntu的安装,因为它们在上市文件系统层次标准/tmp我认为其中的两个目录是基于会话的目录,因此可以忽略它们。我认为/var/spool/samba在新的Ubuntu系统上不会出现这种情况/var/metrics。我不确定该目录的用途。

关于find命令的注释:

  • -xdev排除其他文件系统(这样我就可以跳过/proc/sys我的主目录等)
  • -type d 将检查限制为目录
  • \( -user nobody -o -group nogroup \)-应该是所有者nobody,还是group应该是nogroup。我们使用方括号对这种情况进行分组,并检查其他可能性,
  • -perm -777-每个人都有所有权限,再次使用OR(-o)加入。代替-perm -777,您可以-perm -2按照Random832的建议简单地检查对他人的写权限。

我真的想对find命令的整体形式有一些想法;)
heemayl 2015年

3
@heemayl我添加了find我使用的命令的说明。
muru

1
这不是-perm -002吗?这样,您无需检查每个人是否拥有所有许可,而只是检查世界范围内的许可
Random832

@ Random832 -perm -2在列表中又添加了一个/var/lib/php5,它具有令人惊讶的模式rwx-wx-wt。接得好!
muru

1
@muru IIRC意味着任何人都可以在目录中创建文件,并且可以打开他们知道的文件,但无法列出目录。
Random832
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.