发布时间:2014-09-05 13:28:46作者:知识屋
一、SetUID
问题:为什么普通用户可以修改密码?
【操作: which passwd; ls -l /usr/bin/passwd】
1、SetUID的定义:当一个可执行程序(一般为一个命令)具有SetUID 权限,用户执行这个程序时,将以这个程序的所有者的身份执行。
2、加SetUID权限:
chmod u+s … 或: chmod 4755 … //SetUID=4
示例:
chmod u+s `which touch` && touch test && ls -l test
3、危险!
将命令设置成SetUID是一件很危险的事儿!
比如将vi设置成SetUID,则他可以编辑并保存系统中所有的文件,甚至是系统配置文件!他可以让一个用户瞬间编程超级用户,他可以使你的系统不断的重启,他可以使一个用户不需要密码就可以登录...
或者将kill设置成SetUID...
预防:
find / -perm -4000 -o -perm -2000
查找权限为4000或2000的文件,即具有SetUID,SetGID的文件
4、取消SetUID权限:
chmod u-s... 或 chmod 755...
二、SetGID
1、SetGID的定义:当一个可执行程序(一般为一个命令)具有SetGID 权限,用户执行这个程序时,将以这个程序所属组的身份执行。
2、加SetGID权限:
chmod g+s... 或 chmod 2755... //SetGID=2
【同时设置UID与GID chmod 655...】
三、粘着位
1、定义:如果一个权限为777的目录,被设置了粘着位,每个用户都可以在这个目录里面创建文件,但是只可以删除所有者是自己的文件。
2、设置粘着位:
chmod o+t... 或 chmod 1777...
3、粘着位用t来表示,权限值=1
linux一键安装web环境全攻略 在linux系统中怎么一键安装web环境方法
Linux网络基本网络配置方法介绍 如何配置Linux系统的网络方法
Linux下DNS服务器搭建详解 Linux下搭建DNS服务器和配置文件
对Linux进行详细的性能监控的方法 Linux 系统性能监控命令详解
linux系统root密码忘了怎么办 linux忘记root密码后找回密码的方法
Linux基本命令有哪些 Linux系统常用操作命令有哪些
Linux必学的网络操作命令 linux网络操作相关命令汇总
linux系统从入侵到提权的详细过程 linux入侵提权服务器方法技巧
linux系统怎么用命令切换用户登录 Linux切换用户的命令是什么
在linux中添加普通新用户登录 如何在Linux中添加一个新的用户
2012-07-10
CentOS 6.3安装(详细图解教程)
Linux怎么查看网卡驱动?Linux下查看网卡的驱动程序
centos修改主机名命令
Ubuntu或UbuntuKyKin14.04Unity桌面风格与Gnome桌面风格的切换
FEDORA 17中设置TIGERVNC远程访问
StartOS 5.0相关介绍,新型的Linux系统!
解决vSphere Client登录linux版vCenter失败
LINUX最新提权 Exploits Linux Kernel <= 2.6.37
nginx在网站中的7层转发功能