进一步了解Sticky Bit

Linux特殊权限SUID、SGID与Sticky Bit详解:从原理到安全实践 在Linux操作系统与服务器运维中,权限管理是保障系统安全与实现多用户协作的基石。除了基础的读、写、执行权限,Linux还提供了SUID、SGID和Sticky Bit三种特殊权限机制,用于解决更精细的权限控制需求。其核心原理是通过修改进程的有效用户/组ID或目录的文件删除规则,来实现临时的特权提升、协作组继承和公共区域保护。这些技术在自动化运维、容器化部署及系统安全加固场景下价值显著,例如,SUID机制让普通用户能安全修改自身密码,SGID确保了团队项目目录的顺畅协作,而Sticky Bit则保障了/tm 阅读详情
      我们在的前一篇文章《深入了解 UNIX 文件权限》中提到过:当一个目录设置了 sticky bit ,该目录下的文件仅可以被文件所有者或目录所有者删除。这种机制是由 POSIX 规定的并被普遍推广。但是,上述功能并不是 sticky bit 最原始的目的。 POSIX 在 ls 命令中给 sticky bit 是这样定义的:“限制删除功能开关”。在 C 语言头文件中代表 sticky bit 的常数是 S_ISVTX , svtx 代表“ save text” 而这也正是提示了 sticky bit 的本来目的。
        POSIX 最初想法是:如果 sticky bit 设置了,进程中的“ text segment” 将会留在 swap 空间中;这样会使得它只需一次硬盘读就可以将其读入内存中。起初, UNIX 使用大小为 512 字节且趋于分散的块;因此需要一定的时间去收集那些分散的“ text segment” 并加载到内存中去。最早期的 UNIX 中没有页面调度,只有页面交换技术;因此要运行一个程序需要全部加载到内存中去;现在我们根据程序的需要加载数据页到内存中。这是不是说 sticky bit 的初始用途已经消失的呢?答案是否定的,根据不同的操作系统有不同的情况。
在 HP-UX 中, sticky bit 依然存在并可以在 HP-UX chmod(2) man page [1] 中查证。什么在用 sticky bit 呢?,通过 HP-UX FAQ [2] 中可以看到在 [The HP-UX Kernel Tuning and Performance Guide] 中有如下描述:

"When applications are located remotely, set the "sticky bit" on the applications binaries, using the chmod +t command. This tells the system to page the text to the local disk. Otherwise, it is "retrieved" across the network. Of course, this would only apply when there is actual paging occurring. More recently, there is a kernel parameter, page_text_to_local, which when set to 1, will tell the kernel to page all NFS executable text pages to local swap space."

在 Solaris 中虽然没有关于 sticky bit 初始用途的说明,但根据 Solaris chmod(2) man page [3] 可以看到如下描述 :

"If a regular file is not executable and has S_ISVTX set, the file is assumed to be a swap file. In this case, the system's page cache will not be used to hold the file's data. If the S_ISVTX bit is set on any other file, the results are unspecified."

     如果你发现一个文件设置了sticky bit,您就需要查看对应操作系统的chmod命令的man page看看有什么样的影响。另外请注意,如果有影响,OS会限制对root设置sticky bit。例如:在HP-UX,一个恶意的用户可以设置很多sticky bit让系统用完swap空间导致系统崩溃。

以下是不同OS的chmod帮助手册中对sticky bit描述:

表一:不同OS对sticky bit的描述

HP-UX实际上还有一些符号链接文件设置了sticky bit,这将在以后的文章中继续讨论。



[1] 参考 HP-UX chmod 命令帮助手册 : http://docs.hp.com/en/B2355-90693/chmod.2.html
[2] 参考 HP-UX FAQ : http://www.faqs.org/faqs/hp/hpux-faq/
[3] 参考 Solaris chmod 命令帮助手册 : http://docs.sun.com/app/docs/doc/816-5167/chmod-2?a=view
[4] 其它参考资料: www.wikipedia.org
A. http://nixdoc.net/man-pages/Linux/man1/chmod.1.html
B. http://nixdoc.net/man-pages/FreeBSD/man2/chmod.2.html
C. http://nixdoc.net/man-pages/IRIX/man2/standard/chmod.2.html
D. http://www.manpagez.com/man/2/chmod/
E. http://uw714doc.sco.com/en/man/html.2/chmod.2.html


Linux 权限管理_文件特殊权限SetUID、SetGID和Sticky BIT 学习总结(四) 前面用了三篇文章总结Linux基本权限、umask默认权限、ACL权限和sudo授权,由于自身认知的关系,虽不尽全部,但也足够详细,记录下来所学到的一点一点,希望对看到本文的朋友有所帮助。 本篇总结Linux权限管理中的文件特殊权限 SUID、SGID和Sticky BIT 阅读详情

相关推荐

23.文件特殊权限之SUID权限、SGID权限、Sticky BIT权限和ACL权限

在多用户多任务的Linux系统里,每个进程的运行都与运行的用户和组相关联。除了进程识别号(PID)以外,每个进程还有另外4个用户和用户组相关的识别号。他们分别是:实际用户识别号(RUID)、实际组识别号(RGID)、有效用 户识别号(EUID)、有效组识别号(EGID)。EUID和EGID的作用在于确定一个进程对其访问的文件的权限和优先权。一般情况下, EUID、EGID与RUID和RGID相同。设置了SUID和SGID情况除外。

小鹏linux的博客 2816

Linux基础:Sticky Bit(粘滞位)使用说明

Sticky Bit是Linux或Unix系统下的一种特殊的权限标识位,它可以赋予文件或者目录。而被赋予此权限位的文件或者目录可以实现只有Owner或者root才可以进行移动、删除或者重命名操作。

知行合一 止于至善 4459

Linux 特殊权限位详解:SetUID, SetGID, Sticky Bit

Linux系统包含三个特殊权限位:SetUID、SetGID和Sticky Bit,用于增强权限控制。SetUID允许程序以文件所有者权限运行(如passwd命令);SetGID使目录中新文件继承父目录组属性,便于协作;Sticky Bit则保护共享目录中文件(如/tmp)不被他人删除。这些权限可通过chmod命令设置(u+s/g+s/o+t或数字方式),但需谨慎使用SetUID以防安全风险。合理使用这些机制能在保证安全的同时实现灵活的权限管理。

weixin_45668002的博客 1069

linux中的粘滞位(Sticky bit)

linux下 每一个文件和目录都有自己的访问权限,访问权限确定了用户能否访问文件或者目录和怎样进行访问。最为我们熟知的一个文件或目录可能拥有三种权限,分别是读、写、和执行操作,在这里不做详细说明。我们创建一个文件后系统会默认地赋予所有者读和写权限。当然我们也可以自己修改它,添加自己需要的权限。 特殊权限:但是这三种权限就足够了吗?我们现在来说说在linux下的另一个特殊权限。首先我

喵喵的博客 1万+

Linux 中的 SUID、SGID 和 Sticky Bit 详解

Linux 中的 SUID、SGID 和 Sticky Bit 详解

技术分享 52

4.7W防削顶单声道D类音频功率放大器HT6872介绍

HT6872是一款低EMI,防削顶失真,单声道免滤波D类音频功率放大器。在6.5V电源,10%THD+N,4Ω负载条件下,输出4.71W功率,在各类音频终端应用中维持高效率并提供AB类放大器的性能。

weichen_78的博客 4700

Linux粘滞位(Sticky Bit)与文件权限的深度解析

粘滞位(Sticky Bit)是一种特殊的权限位,用于防止文件或目录被非所有者删除。这个概念在目录(尤其是`/tmp`目录)中非常有用,因为它可以防止普通用户删除或移动其他用户的文件。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 831

MATLAB 论文复现——面向紧急需求响应的规模化灵活资源负荷管理快速决策方法

其次,对灵活资源参与EDR的功率分配模型进行了建模,并提出了基于分层分布式共识算法的快速决策方法,对功率分配模型进行快速求解,以满足EDR实时性的需求,在保证较高精度的前提下提高了决策速度。[1]孔祥玉,杨至端,孙裕策,等.面向紧急需求响应的规模化灵活资源负荷管理快速决策方法[J/OL].电力系统自动化,1-13[2024-07-29].http://kns.cnki.net/kcms/detail/32.1180.TP.20240709.1843.002.html.关键词: 规模化灵活资源;

sjr1478的博客 374

【Linux】设置粘滞位((Sticky Bit))权限/ACM的修改

前言 Linux下有一个用于存放临时文件的目录/temp,每一个用户产生的临时文件都存放在/temp目录下,而且每个用户都对于这些文件具有写权限,为了防止用户对于除自己之外的其他用户的文件进行删除操作,所以产生了粘滞位。 粘滞位简洁 普通文件的sticky位会被Linux内核忽略,目录的sticky位表示这个目录里的文件只能被owner所有者和root超级管理员删除。 粘滞位(Sticky Bit...

码农印象 2378

CentOS7环境下搭建 rsyslog 日志服务器,rsyslog+loganalyzer

1.系统环境部署 ip hostname 192.168.200.182 web 192.168.200.184 rsyslog-mysql 关闭防火墙、selinux、下载epel源 [root@web ~]# systemctl status firewalld.service ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/f

sehn_的博客 3754

Hi3559AV100制作ext4文件系统和烧录emmc

1、首先生成所需文件系统,见本博客<Hi3559AV100文件系统制作cramfs>。 2、使用工具生成EXT4文件系统 ./make_ext4fs -s -l 96M rootfs_hi3559av100.ext4 ./rootfs 3、烧录文件系统 mw.b 0x82000000 ff 0x12C00000;tftp 0x82000000 STM_...

阿Sir问道 7034

深度理解 Linux 粘滞位(Sticky Bit):原理、应用与实战案例

项目说明粘滞位作用控制目录中文件删除权限主要应用公共目录,如/tmp设置命令chmod +t 目录或chmod 1777 目录取消命令chmod -t 目录或chmod 0777 目录常见风险粘滞位缺失将导致用户文件可被他人任意删除通过合理使用粘滞位,可以有效提高多用户系统的安全性和稳定性。理解并掌握粘滞位的设置与应用,是 Linux 系统管理者必备的技能之一。指令功能示例给目录添加粘滞位取消目录粘滞位设置目录为可读写执行并加粘滞位查看目录是否有粘滞位。

2301_79274539的博客 926

MySQL 分库分表及其平滑扩容方案

MyCAT不仅仅可以用作读写分离,以及分表分库、容灾管理,而且可以用于多租户应用开发、云平台基础设施,让你的架构具备很强的适应性和灵活性。分表对于一张多行(记录)多列(字段)的二维数据表,又分两种情形(1)垂直分表竖向切分,不同分表存储不同的字段,可以把不常用或者大容量、或者不同业务的字段拆分出去;扩容前每个节点的数据,有一半要迁移至一个新增节点中,对应关系比较简单。此时,四个节点的数据都已完整,只是有冗余(多存了和自己配对的节点的那部分数据),择机清除即可(过后随时进行,不影响业务)。...

m0_71777195的博客 1929

三种特殊文件权限 SetUID、SetGID、Sticky BIT 总结

1.SetUID 1)功能介绍: 只有可以执行的二进制程序才能设定SUID权限 命令执行者要对该程序拥有执行权限 x 命令执行者启动该程序时获得该程序属主身份 SetUID权限只在该程序执行过程中有效,也就是说身份改变只在程序执行中有效 举例思考:为什么普通用户可以修改自己的密码? [root@Beiqi ~]# ll /etc/passwd -rw-r--r-- 1 root root 1495 7月 7 18:20 /etc/passwd [root@Beiqi ~]# ll /etc

MrSandman7的博客 463

论文分享|ECCV2022,PATnet,Cross-Domain Few-Shot Semantic Segmentation,CDFSS新基准,文末有复现教程

这篇论文提出的跨域小样本语义分割(CD-FSS)任务,旨在将源域学习的分割能力迁移到目标域,仅需少量标注样本。针对传统小样本分割方法在跨域场景性能下降的问题,作者提出了基于金字塔锚点变换的网络(PATNet),通过将域相关特征转换为域无关特征,并引入任务自适应微调推理(TFI)提升目标域适应能力。实验表明,PATNet在1-shot和5-shot设置下分别比现有方法提升8.49%和10.61%的准确率。同时,作者构建了CD-FSS基准并设计了任务难度评估指标。代码和数据集已开源,复现难度中等。

m0_74277350的博客 1097

5分钟快速上手:用AI生成3D虚拟场景的保姆级教程

你是否想过:不用学复杂的3D建模软件,不用懂“多边形”“UV贴图”这些专业术语,也能快速生成一个梦幻的森林、未来感的城市,甚至外太空基地?本文的目的就是教完全没接触过3D技术的新手,用AI工具5分钟生成3D虚拟场景。我们会覆盖主流AI工具的选择、提示词编写技巧、生成后的简单调整,以及常见问题解决。本文会像“游戏任务指南”一样,从“认识工具”→“写提示词”→“生成场景”→“调整优化”逐步讲解,最后还会教你把生成的3D场景用起来!提示词:你给AI的“订单备注”,越详细效果越好。扩散模型。

AI 原生应用开发的博客 1963

文件特殊权限SetUID,SetGID,Sticky BIT

文件特殊权限SetUID,SetGID,Sticky BIT

m0_63026992的博客 896

基于电能质量治理的场景实例:统一电能质量调节器(UPQC)与并网逆变器集成

本文通过Simulink平台,详细演示了统一电能质量调节器(UPQC)与并网逆变器的集成系统建模与仿真过程。主要内容包括:1)系统架构设计,包含光伏并网系统、非线性负载和电压扰动源;2)UPQC主电路设计,包括串联/并联单元拓扑和控制策略实现;3)与并网逆变器的能量交互与协同控制逻辑;4)典型电能质量问题的仿真测试场景。结果表明,该集成系统能有效治理电压暂降(维持负载电压380V±2%)和电流谐波(电网THD<3%),直流母线电压稳定在800V±5V。该系统为应对复杂电能质量问题提供了"电压

xiaoheshang_123的博客 310

linux系统中的特殊权限之SBIT(Sticky BIT)

文章目录前言SBIT(Set BIT)(粘滞位)SBIT的作用实例讲解默认情况(不使用SBIT)使用SBIT权限SGID的用法判断是否有SBIT权限加点小料:/tmp目录使用SBIT的注意事项 *** linux系统中的特殊权限之SUID(Set UID)*** *** linux系统中的特殊权限之SGID(Set GID)*** 前言 之前,我用2篇文章分别展示了SUID和SGID的用法。今天,...

qq_313531159的博客 1691

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

linux sticky bit 目录权限 rwt权限

今天看到有个目录的权限是rwxrwxrwt 很惊讶这个t是什么,怎么不是x或者-呢?搜了下发现: 这个t代表是所谓的sticky bit。 sticky bit: 该位可以理解为防删除位. 一个文件是否可以被某用户删除, 主要取决于该文件所属的组是否对该用户具有写权限. 如果没有写权限, 则这个目录下的所有文件都不能被删除, 同时也不能添加新的文件. 如果希望用户能够添加文件但同时不能删除文件, 则可以对文件使用sticky bit位. 设置该位后, 就算用户对目录具有写权限, 也不能删除

疯狂算法~ 1万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Linux_T(Sticky Bit)粘滞位详解

所有用户可以在目录中创建文件;只有文件的所有者或 root 用户才能删除该文件;粘滞位常用于/tmp、公共工作目录/work等共享目录中。chmod o+t 目录名。

DreamCollector的博客 1093

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

suid,sgid,sticky bit简介

三种特殊权限简介SUID当一个设置了SUID 位的可执行文件被执行时,该文件将以所有者的身份运行,也就是说无论谁来执行这个文件,他都有文件所有者的特权。如果所有者是 root 的话,那么执行人就有超级用户的特权了。SGID当一个设置了SGID 位的可执行文件运行时,该文件将具有所

chuanzhongdu1的专栏 488

深入理解Linux文件特殊权限:SUID、SGID与Sticky Bit

特殊权限是Linux权限体系的高级功能,正确使用能显著提升系统安全性和管理效率。遵循最小权限原则,仅赋予必要权限。使用符号表示法修改权限,避免八进制数字记忆错误。定期审计特殊权限文件,及时发现潜在风险。

m0_53747349的博客 1508

Linux基础——特殊权限sticky_bit 防删除位

Linux基础知识,stickybit命令,防止其他用户删除当前用户的文件或目录。

热心市民王先生 1190

深入理解Linux特殊权限位:SUID、SGID和Sticky Bit详解

本文详细介绍了linux中的特殊权限位并且举例

m0_73892800的博客 1081

Linux 文件权限(下) 特殊权限 SGID Sticky Bit 详解

特殊权限 SGID Sticky Bit 文件权限的数字表达

三毛与海子的博客 501
上一篇: 深入了解UNIX文件权限
下一篇: bc: 一个非常有用的UNIX/LINUX命令行计算器
XueJun_Feng
博客等级 码龄18年 2粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值