我一直在试图locking我的服务器上的一些安全漏洞,我已经到了tmp文件夹的地步。 他们两个都会存储其他资源使用的文件,而且还多读一点我发现/ tmp可以保存一些涉及服务器本身的数据,而不是/ var / tmp。
我的问题是,保护对/ tmp和/ var / tmp的写访问有什么影响。 我已经尝试确保/ var / tmp,直到现在没有什么不好的事情发生。
是否安全阻止/ tmp和否认可能会损坏我的服务器的保存文件,或可能有一种types的垃圾邮件或类似的东西影响我的安全? 如果我允许在我的服务器上访问这些文件夹,这个漏洞有什么漏洞,比如说可以使用777权限进行写入(就像默认情况下那样)
谢谢
/tmp和/var/tmp 应该是世界可写的,这样所有程序/用户都可以在那里创build他们的临时文件。 粘性位确保只有所有者(当然是根)可以移动/重命名/删除文件(参见chmod(1) )。 当然,应用程序仍然可以对文件设置不安全的权限,允许对错误的用户进行读或写访问,但这取决于应用程序,与这些目录上的权限无关。
/tmp和/var/tmp是历史上众所周知的程序可以存储临时文件的位置。 但是,为了正常运行,它们必须是世界可写的(并且是粘性的 )。 这个方法很有效,但是它也会带来一系列潜在的安全问题,其中一个程序编写另一个程序将要读取的临时文件,从而导致第二个程序出现意料之外的不良行为。
第一个“修复”是为了让所有程序都编写临时文件来使用系统调用来生成随机文件名 。 这类作品,但它依赖于(1)实际使用它的程序; (2)具有安全的RNG; 和(3)运气。
在Fedora项目中,有一个系统服务每个都使用一个独立的私人临时目录,只能访问该服务。 每个程序都会看到并使用/tmp但实际上它们是由系统pipe理的命名空间绑定挂载 。 非常聪明的解决scheme,我怀疑其中一个很快就会出现在其他Linux发行版中。