我正在编写一个perl脚本来改变亮度。我必须在文件'brightness‘中写入设置为只读的文件。我想使用SUID位,所以我就这么做了。
$> sudo chown root:root brightness
$> sudo chmod 4755 brightness
$> ls -l brightness
-rwsr-xr-x 1 root root 698 Apr 15 23:22 brightness
$> ./bightness -20
No open bightness
$> sudo ./brightness -20
Done为什么普通用户不能使用?
提前谢谢。
发布于 2013-04-16 20:43:25
SUID不适用于普通的perl脚本。您要么必须使用包装器,要么使用suidperl。此外,SUID脚本还强制使用-T标志。
http://www.perlmonks.org/?node_id=130671
注意,在SUID模式下运行脚本是不安全的!
http://www.perlmonks.org/?node=perlsec
发布于 2013-04-17 06:38:46
这太疯狂了:/我只使用原生perl..
我在Archlinux上找不到suidperl,包装器看起来不稳定,不是吗?
https://stackoverflow.com/questions/16035067
复制相似问题