Xke*_*per 10 linux symlink file-permissions
我写了一个简单的脚本来自动创建一个符号链接.
#!/pseudo
today = "/tmp/" + date("Y-m-d")
exec("ln -sf " + today + " /tmp/today")
Run Code Online (Sandbox Code Playgroud)
很简单; 得到今天的日期并制作符号链接.理想情况下,午夜后运行,-f因此它只是就地更新它.
这很好用!...为我的用户.
xkeeper /tmp$ ls -ltr
drwxrwxrwx xkeeper xkeeper 2014-10-21
lrwxrwxrwx xkeeper xkeeper today -> /tmp/2014-10-21/
xkeeper /tmp$ cd today
xkeeper /tmp/today$ cd ..
Run Code Online (Sandbox Code Playgroud)
请注意,它工作正常,所有权限都是世界可读的,一切看起来都不错.
但如果其他人想要使用这个链接(我们会说,root,但任何其他用户都有这个问题),会发生一些非常奇怪的事情:
root /tmp# cd today
bash: cd: today: Permission denied
Run Code Online (Sandbox Code Playgroud)
我完全不知道为什么会这样.我也试过创建链接ln -s -n -f(不是" --no-dereferencing"很好解释),但出现了同样的问题.
wen*_*zul 12
由于/ tmp通常设置了粘滞位,因此对/ tmp/today的访问被拒绝protected_symlinks.您可以通过设置禁用此保护
sysctl -w fs.protected_symlinks=0
Run Code Online (Sandbox Code Playgroud)
长期存在的一类安全问题是基于符号链接的使用时间检查时间种族,最常见于/ tmp这样的世界可写目录.利用此缺陷的常用方法是在遵循给定符号链接时跨越特权边界(即根进程遵循属于另一个用户的符号链接).有关多年来数百个示例的可能不完整列表,请参阅:http: //cve.mitre.org/cgi-bin/cvekey.cgi?keyword =/tmp
设置为"0"时,符号链接跟随行为不受限制.
设置为"1"时,只有在粘性世界可写目录之外,或者符号链接和跟随符的uid匹配时,或者目录所有者与符号链接的所有者匹配时,才允许遵循符号链接.
这种保护基于Openwall和grsecurity的限制.
欲知详情检查这个.
| 归档时间: |
|
| 查看次数: |
12798 次 |
| 最近记录: |