linux 的普通用户为什么能修改/etc/passwd文件
来源:互联网 发布:网络咨询医生聊天技巧 编辑:程序博客网 时间:2024/05/02 02:24
Unix 的口令文件 /etc/passwd 记录着所有用户和对应的登录密码等信息。/etc/passwd文件的所有者是root而且只有root用户有权限对该文件进行写操作。但是Unix系统其实是允许所有的用户修改自己的登录口令的(即修改/etc/passwd或/etc/shadow 文件)其实现原理如下。
首先要说明的是,与每个进程相关联的ID有6个或更多,如图1所示
其中进程的有效用户ID以及附加组ID决定了问们的文件访问权限。一般的情况下,有效用户ID等于实际用户ID,有效组ID等于实际组ID
对于每个文件来说,文件的详细属性保存在 struct stat 结构中
其中可以在文件模式字(st_mode)中设置一个特殊标志,该标志的含义是“当执行此文件是,将进程的有效用户ID设置为文件所有者的用户ID(st_uid)” ,与此类似的,st_mode中还可以设置另一位,使得将执行此文件的进程的有效组ID设置成文件的组所有者ID(st_gid)。 在文件模式字中这两位被称为设置用户ID和设置组ID
若文件的所有者是root,而且设置了该文件的设置用户ID位,然后当该文件由另一个进程执行时,该进程有了root 的权限。 如/bin/passwd ,该程序是一个设置用户ID程序,普通用户使用passwd 命令更改登录口令时,shell会调用/bin/passwd ,此时shell具有root权限,所以可以修改 /etc/passwd 文件来更改用户登录口令
- linux 的普通用户为什么能修改/etc/passwd文件
- 为什么普通用户没有/etc/passwd的写权限,可以修改用户密码
- linux的 /etc/passwd文件
- Linux /etc/passwd文件
- 普通用户为什么能修改自己的密码
- Linux中/etc/passwd文件的用法
- Linux /etc/passwd文件的分析
- linux /etc/passwd,/etc/shadow用户文件的说明
- 详解Linux /etc/passwd文件
- linux--文件--/etc/passwd多了一个/etc/passwd-文件
- /etc/passwd的文件结构
- linux中/etc/passwd文件和/etc/shadow文件与/etc/group的解析
- Mac普通用户修改了/etc/sudoers文件的解决办法
- 对linux用户管理中/etc/passwd文件的理解
- linux中/etc/passwd文件的用法及鼻防御
- linux系统中/etc/passwd ; /etc/shadow ; /etc/group 这个三个有关用户信息的文件解释
- linux系统中/etc/passwd ; /etc/shadow ; /etc/group 这个三个有关用户信息的文件解释
- Linux /etc/passwd /etc/group /etc/shadow 文件的格式说明
- C程序的内存分配区域
- RS232
- Unity加载Web资源需求crossdomain.xml文件格式
- 如果我可以设计HTC ONE的相机,我会更前卫。
- MyEclipse 8.5 默认工作空间路径修改
- linux 的普通用户为什么能修改/etc/passwd文件
- poj 3615 Cow Hurdles
- adb server is out of date.
- IOS 应用文件数据的读写分析
- tomcat7.x下载且编译
- poj1270 Following Orders
- 搜索引擎结果抽取通用算法
- CodeForces 245H Queries for Number of Palindromes (区间DP)
- Linux下配置SSH免密码登录