特殊权限SUIG、SGID、SBIT

简介: 一、SetUID与SGID只能用于二进制程序执行者需要有该二进制程序的x权限执行具有SUID权限的二进制程序,那么执行者将具有该二进制程序所有者的权限。举例来说,/etc/passwd文件的权限是 -rw-r--r--,用户更改密码时需要对passwd文件进行写操作,root可以读写不用说,那普通用户为什么也能进行修改呢?这里就需要SUID来解决。

img_50df113e2f3d971cdb229732a2c842da.png

一、SetUID与SGID

  • 只能用于二进制程序
  • 执行者需要有该二进制程序的x权限
  • 执行具有SUID权限的二进制程序,那么执行者将具有该二进制程序所有者的权限。

举例来说,/etc/passwd文件的权限是 -rw-r--r--,用户更改密码时需要对passwd文件进行写操作,root可以读写不用说,那普通用户为什么也能进行修改呢?这里就需要SUID来解决。
修改密码时是用/usr/bin/passwd工具进行修改的。setuid的作用是让执行该命令的用户以该命令拥有者的权限去执行,就是普通用户执行passwd时会拥有root的权限,这样就可以修改/etc/passwd这个文件了。

下面权限中的x就标志着SUID

[root@centos7 aubin]# ls -al /usr/bin/passwd 
-rwsr-xr-x. 1 root root 27832 Jun 10  2014 /usr/bin/passwd

setgid的意思和它是一样的,即让执行文件的用户以该文件所属组的权限去执行。

二、stick bit(粘滞位)

以/tmp为例,tmp为存放临时文件的文件夹。所有用户都可以对他进行读写执行。那如果A用户创建了一个文件再tmp中,B用户把给删除了。这种情况是不允许出现的。如果设置了stick bit(粘滞位),那目录下的文件就只有root和创建者有权限区读写执行,其他人是无法更改的。这就是粘滞位的作用

  • 粘滞位只能针对目录设置
  • SGID与SUUID可以设置目录跟文件

三、特殊权限得具体设置

  • SUID
    sud一般情况下都设置在二进制文件上,设置在目录上没有意义
    启动为进程之后,其进程的属主为原程序文件的属主

    [root@centos7 app]# chmod u+s file 
    [root@centos7 app]# chmod u-s file 
  • 文件设置SGID
    启动为进程之后,其进程的属主为原程序文件的属组

    [root@centos7 app]# chmod g+s file 
    [root@centos7 app]# chmod g-s file  
  • 目录设置SGID
    目录被设定了SGID,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的属组

    [root@centos7 app]# chmod g-s dir/
    [root@centos7 app]# chmod g+s dir/
  • SBIT
    在目录上设置SBIT,则在目录下创建的文件只有root与创建者有修改和删除权限
    SBIT设置在文件上也毫无意义

    [root@centos7 app]# chmod o+t dir/
    [root@centos7 app]# chmod o-t dir/ 
目录
相关文章
|
机器学习/深度学习 算法 数据挖掘
聚类方法介绍
聚类方法介绍
1646 0
|
2月前
|
XML Java 数据库连接
MyBatis Plus 核心功能与用法
MyBatis Plus 是基于 MyBatis 的增强工具,简化单表 CRUD 操作。通过继承 BaseMapper 即可实现增删改查,支持条件构造器、分页、逻辑删除、自动填充、乐观锁等高级功能,大幅提升开发效率,无需编写冗余 SQL 与 XML,助力快速构建 Spring Boot 应用。
210 0
|
6月前
|
人工智能 Android开发 iOS开发
安卓版快捷指令,加了AI语音可以一句话操作v0.2.7
Shortcuts for Android(SFA)是一款安卓自动化工具,支持语音创建快捷指令,实现听歌、导航、发消息等操作。操作简单,提升效率,快来体验语音控制的便捷!
855 0
安卓版快捷指令,加了AI语音可以一句话操作v0.2.7
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
4398 4
|
机器学习/深度学习 存储 自然语言处理
RNN与LSTM:循环神经网络的深入理解
【6月更文挑战第14天】本文深入探讨RNN和LSTM,两种关键的深度学习模型在处理序列数据时的作用。RNN利用记忆单元捕捉时间依赖性,但面临梯度消失和爆炸问题。为解决此问题,LSTM引入门控机制,有效捕获长期依赖,适用于长序列处理。RNN与LSTM相互关联,LSTM可视为RNN的优化版本。两者在NLP、语音识别等领域有广泛影响,未来潜力无限。
|
存储 移动开发 定位技术
HTML5 Geolocation(地理定位)优化到最高精度
HTML5 Geolocation API 可让网页访问用户的地理位置信息。为优化地理定位精度,需考虑设备、浏览器设置、网络状况及编码实现。使用 `enableHighAccuracy` 选项请求高精度,并确保设备开启 GPS,网络良好。结合多种数据源(如 GPS、Wi-Fi)可提高准确性。利用 `watchPosition` 定期更新位置,并妥善处理定位错误。务必遵循用户隐私原则,获取同意并遵守相关法规。这样可有效提升地理定位的精度与用户体验。
|
存储 JSON 算法
JWT令牌基础教程 全方位带你剖析JWT令牌,在Springboot中使用JWT技术体系,完成拦截器的实现 Interceptor (后附源码)
文章介绍了JWT令牌的基础教程,包括其应用场景、组成部分、生成和校验方法,并在Springboot中使用JWT技术体系完成拦截器的实现。
993 1
JWT令牌基础教程 全方位带你剖析JWT令牌,在Springboot中使用JWT技术体系,完成拦截器的实现 Interceptor (后附源码)
|
机器学习/深度学习 自然语言处理
准确率达60.8%,浙大基于Transformer的化学逆合成预测模型,登Nature子刊
【8月更文挑战第29天】浙江大学团队在《Nature》子刊上发表的论文介绍了一款名为EditRetro的基于Transformer架构的化学逆合成预测模型,其准确率高达60.8%,为化学合成领域带来了革命性的变化。此模型无需依赖传统化学反应模板,具备更强的泛化能力和多样化合成路线生成能力,在药物研发和材料科学领域展现出巨大潜力,尽管仍存在一定的错误率和计算资源需求高等挑战。论文详情见:https://www.nature.com/articles/s41467-024-50617-1。
257 3
|
JSON 测试技术 Apache
解决 JMeter 返回内容中文乱码问题的详细指南
在Apache JMeter性能测试中,遇到中文乱码问题会影响测试效果和报告理解。解决方法包括:1) 修改`jmeter.properties`配置文件,将`sampleresult.default.encoding`设为UTF-8;2) 在HTTP请求中指定`Content-Encoding`为UTF-8,确保请求和响应编码一致;3) 使用后置处理器如JSR223处理响应数据编码;4) CSV数据文件保存为UTF-8并在JMeter中配置相应编码;5) 添加HTTP Header Manager设置`Content-Type`。
|
人工智能 开发者
Kimi Chat:国内AI新星,20万字超长文本处理的突破者
【2月更文挑战第12天】Kimi Chat:国内AI新星,20万字超长文本处理的突破者
3366 2
Kimi Chat:国内AI新星,20万字超长文本处理的突破者