SetUID的功能

1.    只有可执行的二进制程序或者shell程序才能设定SUID权限

2.    命令执行者要对该程序(命令)拥有x(执行)权限

3.    命令执行者在执行该程序时获得该程序文件owner的身份(在执行程序的过程中灵魂附体为文件的owner)

4.    SetUID权限只在该程序执行过程中有效,也就是说身份改变只在程序执行过程中有效

以passwd命令举例

ls –l /usr/bin/passwd #passwd命令,不是/etc/passwd配置文件

bl@ubuntumma:~$ ls -l /usr/bin/passwd

-rwsr-xr-x 1 root root 47032 Jul 16  2015 /usr/bin/passwd

bl@ubuntumma:~$ ls -l /etc/shadow

-rw-r----- 1 root shadow 1292 Aug 25 16:56 /etc/shadow

以上可以看出,

(1)passwd命令的权限中,有s。

(2)shadow文件的权限普通用户没有w权限,root用户有w权限

(3)因为passwd命令有s(即设置了suid功能),那么bl用户在执行passwd命令时,就会暂时获得命令owner(root)的权限,而root对shadow文件有w权限,所以,普通用户bl此时也有了w权限,在执行passwd时是可以修改密码的(即修改shadow文件)。

设定SUID

4代表SUID

chmod 4764

chmod u+s

bl@ubuntumma:~$ ls -l test

-rwxrw-r-- 1 bl bl 0 Aug 26 12:43 test

bl@ubuntumma:~$ chmod 4764 test

bl@ubuntumma:~$ ls -l test

-rwsrw-r-- 1 bl bl 0 Aug 26 12:43 test

删除SUID,直接设置权限即可

bl@ubuntumma:~$ chmod 664 test

bl@ubuntumma:~$ ls -l test

-rw-rw-r-- 1 bl bl 0 Aug 26 12:43 test

这时,再次设置SUID会出现什么情况呢

bl@ubuntumma:~$ chmod u+s test

bl@ubuntumma:~$ ls -l test

-rwSrw-r-- 1 bl bl 0 Aug 26 12:43 test

S变成大写了,这说明SUID设置出错,因为644权限里的owner本身就没有x权限,所以无法设置SUID

注:SetUID很危险,如果把vim命令设置了SUID,那么普通用户就可以用vim修改系统所有配置文件,比如把/etc/passwd文件中自己的用户分类修改成0(超级用户)。

linux 去掉文件的suid,Linux学习---文件特殊权限(SUID)相关推荐

  1. linux去掉java路径_Java显示目录文件列表和删除目录

    Java显示目录文件列表和删除目录 以d:\a目录为例,假设D:\a目录内的结构如下: d:\a |--a.sql |--back.log |--b | |--e | | |--1.txt | | | ...

  2. linux 去掉登陆密码吗,Linux 清除 Windows用户登录密码

    Linux 清除 Windows用户登录密码 [toc] 一. 环境 Windows 系统: Windows 10 win10.png Linux 系统: Parrot Linux parrot_se ...

  3. linux suid权限,Linux 学习:文件特殊权限SUID, SGID, SBIT

    本次记录Linux特殊权限SUID.SGID.SBIT相关知识及使用实例等. 由于SUID和SGID涉及到系统安全,所以对它们知识点的掌握尤为重要.关于文件权限的表示方法和解析 SUID是Set Us ...

  4. linux我ll查不到usr,Linux学习-文件查寻

    Linux学习---文件查找 grep, egrep, fgrep  :文本查找 文件查找 locate 全系统查找,非实时,模糊匹配.查找时根据全系统文件数据库进行的. 系统在每天的计划任务时间生成 ...

  5. Linux云计算好学吗?Linux运维学习资料 Centos8文件权限管理

    linux运维云计算/Linux全套百集大系列/Centos7-Centos8/全网最新Linux架构师教程_哔哩哔哩_bilibili 第七章 Centos8-文件权限管理 本节所讲内容: 7.1 ...

  6. linux 文件访问控制 特殊权限 suid,sgid,sbit

    setuid 和 setgid 分别是 set uid ID upon execution 和 set group ID upon execution 的缩写.我们一般会再次把它们缩写为 suid 和 ...

  7. linux 文件权限标识,linux文件权限学习 包括 特殊权限

    1.Linux使用9个权限位来标识 chmod:更改文件权限 chgrp:修改文件所属组 chown:修改文件拥有者 2.目录的读.写和执行权限含义 对于文件的读写执行的含义,都比较了解,对于目录的权 ...

  8. linux文件怎么操作,linux文件操作学习1

    由于实验室的项目需要开始学习linux,为了更好的学习和掌握linux的一些基本操作以及顺便做个备忘录,时间久了也可以看看自己的学习成果. 学习linux应该先抛开windows的C.D.E...盘的 ...

  9. Linux内核 crypto文件夹 密码学知识学习

    密码算法分类 对称算法 非对称算法 消息摘要(单向哈希)算法 这些算法作为加密函数框架的最底层,提供加密和解密的实际操作.这些函数可以在内核crypto文件夹下,相应的文件中找到.不过内核模块不能直接 ...

  10. Linux 文件特殊权限 SUID、SGID 与 SBIT

    Linux 使用 9 个权限位来标识文件权限,三大权限分别是 r.w.x(读.写.执行).除此之外,还有特殊权限 SUID,SGID,SBIT. 1.SUID SUID(Set User ID)使用小 ...

最新文章

  1. TensorRT优化方案图例
  2. 深度学习系列作业1----by 吴恩达
  3. 从CVPR 2013看计算机视觉的研究领域和趋势 [CVPR 2013] Three Trending Computer Vision Research Areas
  4. 【技术综述】图像与CNN发家简史,集齐深度学习三巨头
  5. linux带字符的行,linux小计,统计文件中包含指定字符串的行数
  6. 【FLASH BUILDER 4.6 快捷键】只记几个对自己有帮助的
  7. iphone xh5打开ppt预览_教你如何用iPhone拍全景照片
  8. ERROR 1045 (28000): Access denied for user'root'@'localhost'(using password:YES)
  9. CMake 使用方法 CMakeList.txt编写简单分析
  10. 为什么我突然不能启动tomcat_为什么我的Tomcat启动加载不了配置文件?
  11. Python自动化二--jmeter分布式测试,抓包,python语法基本介绍
  12. CTFshow web15
  13. 【重点】程序员面试金典——4.6寻找下一个结点
  14. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-8.用户模块开发之保存微信用户信息...
  15. 樽海鞘算法(Salp Swarm Algorithm: SSA)
  16. 拉格朗日法建立动力学方程
  17. 将<span>标签设为圆形
  18. java网关详解_一篇让你彻底理解网关是什么的文章
  19. 4.STACEY矩阵及其对应的开发模型、敏捷开发评估方法
  20. ASP.NET 权限管理 页面静态化 OA系统培训 三层架构

热门文章

  1. 企业实战之Spring拦截器《统一参数校验》
  2. HTML5+CSS3基础学习day3盒模型
  3. zzq和他的位运算(数位dp
  4. 如何在Mac上快速签署PDF,来看这篇超全面分析!
  5. 手机文件夹是英文不敢随便删?只要找出这四个文件夹,16G不输32G
  6. KMP算法最浅显理解——一看就明白
  7. C# json转实体类或直接获取
  8. IDEA 阅读源码绝技
  9. OPPOa11android登录网络,OPPO A11怎么使用云服务?OPPO A11云服务功能使用教程
  10. AC-DMIS 5.3 输出DMO文件