cle*_*sch 52 linux permissions chmod
如果我想限制secret对共享机器上文件夹的访问,我真的需要chmod对文件夹进行递归吗?
chmod -R g=,o= secret
Run Code Online (Sandbox Code Playgroud)
还是chmod放在文件夹上就足够了?
chmod g=,o= secret
Run Code Online (Sandbox Code Playgroud)
有什么实际区别?
xen*_*oid 74
对于目录,“读取”访问允许您列出内容,“执行”访问允许您遍历目录以打开其子目录之一(文件或子目录)。所以如果你删除:
当然,如果您进行递归更改,则对顶级目录的访问权限的意外非递归重置会产生较小的后果。
G-M*_*ca' 46
不用说,如果您在两天前创建了一个文件(使用公开可读模式),而昨天有人阅读了该文件,或者复制了该文件,那么今天您无法将该文件设为私有。
xenoid 说(有点简单),如果你从你的目录中删除组和其他权限(今天,现在),“它下面的任何东西都变得无法访问,你不需要进行递归更改。” 我同意,如果您chmod适当地使用您的(顶级)目录,
那么将来(即从现在起),除了您自己1 之外,没有人能够进入它。但是有一些问题。
还记得你两天前创建的文件吗?假设你的对手昨天对那个文件做了一个硬链接(而不是复制它)。如果您chmod只是您的(顶级)目录,那么该文件将继续具有您在创建它时分配的公开可读权限,因此坏人将来仍然可以读取它——(可能)即使你随后修改它。如果您执行递归chmod,这将保护文件的权限,
这将影响链接。
坏人仍然可以ls -l对它进行操作,因此他们将能够看到您何时更改它以及它有多大,但他们将无法再次阅读。
假设在您的secret目录下,您有一个 plans目录,并且它也是公开可读的。假设五分钟前,坏人打开一个终端窗口说
cd /home/clemisch/secret/plans
现在,在您执行chmodon 之后secret,坏人的工作目录还在吗?/home/clemisch/secret/plans,他们可以继续列出该目录并访问那里的文件,可能永远。当然,一旦他们cd在别处,或者关闭那个窗口,或者注销,或者机器重新启动,他们就会失去访问权限。
如果您执行递归chmod,这将保护所有文件和所有目录的权限,导致占用者立即失去访问权限。
如果机器是一台只能通过控制台访问的个人计算机,这可能不是一个很大的风险。但是,如果坏人可能在后台留下了一个 screen或 tmux会话,那么他们可以使用这种攻击。而且,如果机器支持ssh
(或其他远程访问;甚至 FTP 就足够了),则可以使用这种攻击。
正如 xenoid 在他们的回答中指出的那样:如果您chmod在secret今天进行递归,然后在后天您不小心
chmod(仅)将顶级目录返回到 755,那么您仍然会受到今天递归的保护chmod- 所有文件和下的目录secret仍然无法读取。(当然,如果你明天创建一个新文件secret,并允许它公开可读,那么当你打开secret目录的权限时它就会暴露。但无论今天是否chmod递归,这都是正确的。 )
mazunki发表评论,“我相信cp有权限。” 我不确定他们的意思,但请考虑这种情况。你想diff在两个文件之间做一个:
secret/plans/the/quick/brown/fox/file1secret/jumps/over/the/lazy/dog/file2但是您不确定这些文件的确切位置,您必须四处寻找它们。你可能很想这样做
cd plans
cd the/quick # looking for file1
cd brown/fox # found it!
cp file1 /tmp
cd ../../../../..
cd jumps/over
cd the # looking for file2
cd lazy/dog # found it!
diff /tmp/file1 file2
Run Code Online (Sandbox Code Playgroud)
如果你这样做,那么/tmp/file1将有相同的保护secret/plans/the/quick/brown/fox/file1——所以这是chmod今天进行递归的另一个原因。
如果坏人五分钟前开了你的秘密文件之一,并保持它打开,他们将能够在未来阅读-潜在的,即使你修改它。好消息是,这是一个有点棘手的攻击——在你执行chmod. 坏消息是这种攻击很难防御——递归 chmod 无济于事。
__________
1,当然还有特权用户?/?进程
PS 你可以稍微缩短你的命令:
chmod go=相当于chmod g=,o=. (当然,这不会使递归chmod更快。)
| 归档时间: |
|
| 查看次数: |
5594 次 |
| 最近记录: |