Linux系统安全与程序调试实用技巧
1. setuid和setgid位的管理
在构建更安全的系统时,关键之一是识别并关闭那些不需要setuid位开启的程序的该权限。如果你遇到不认识的setuid或setgid程序,可以通过网络搜索来了解它。若有疑问,不妨先关闭其setuid或setgid位,然后观察系统是否出现异常。不过要注意,错误地关闭setuid或setgid位可能会导致你无法访问系统。因此,在操作前要熟悉程序及其权限,并且在使用常规登录测试程序时,保持一个具有超级用户权限的终端窗口打开。
可以使用 sudo 来为有需要的用户分配额外权限,这比给所有人无限制的访问权限要安全得多。
判断一个程序是否开启了setuid或setgid位,可以使用 ls -l 命令查看输出结果。若在权限列的第四列(从左数)看到 s ,则该程序开启了setuid位;若在第七列看到 s ,则开启了setgid位。例如,一个普通的Linux程序不会显示 s :
-rwxrwxr-- 1 fred fred 1001 Dec 13 18:50 myprogram
要开启setuid位,可使用以下命令:
$ chmod u+s myprogram
执行 ls -l 后会显
超级会员免费看
订阅专栏 解锁全文
22万+

被折叠的 条评论
为什么被折叠?



