{eval=Array;=+count(Array);}
在Linux中如果要获得root用户权限,有两种方法:
方法一:
直接使用root用户登陆,此时必须要知道root用户的密码才能完成,如果root用户暂未设置密码,以Debian系的系统为例,可以在普通用户下设置root用户密码后再以root用户登陆系统。
sudo passwd root
这条命令需要输入当前用户的密码。
方法二:
通过设置用户id提权,方法一中由两条命令组成,一个是passwd,用于为用户设置密码,Linux对用户权限控制的非常严格,当前用户是无法在没有权限的情况下读写或执行其他用户的文件,更何况是root用户的文件呢,而这里却是在设置root用户的密码,的确匪夷所思。
揭晓的答案就在于这个sudo可执行文件,这个sudo本身只是一个普通程序,关键却在于它被指定了suid,这个suid到底是什么呢,简单来说,就是可以让这个可执行程序在当前用户下短暂获得该可执行文件所有者的特权,所以不难猜到,这里的sudo的所有者就是root用户,当你执行这个命令的时候,sudo的执行环境就被提升为root用户权限了。
由此可见,这个suid是多么的危险,一定要防范滥用它。
0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答