新闻详情

新闻详情

首页 / 资讯中心 / 详情

TLPI 第38章 练习:Writing Secure Privileged Programs

发布时间:2026/9/30 7:18:11来源:尧图网络
TLPI 第38章 练习:Writing Secure Privileged Programs
笔记和练习博客总目录见开始读TLPI。38-1以普通无特权用户身份登录创建一个可执行文件或者复制已有文件例如/bin/sleep并为该文件开启设置用户 IDset-user-ID权限位命令chmod us。尝试修改这个文件例如cat file。查看操作后文件权限发生了什么变化用ls –l并解释原因。实验如下$pwd/home/vagrant/test $cp/usr/bin/sleep.$ls-lsleep-rwxr-xr-x.1vagrant vagrant36320Sep2801:56sleep$sudochmodussleep$ls-lsleep-rwsr-xr-x.1vagrant vagrant36320Sep2801:56sleep$echoabcsleep$ls-lsleep-rwxr-xr-x.1vagrant vagrant36324Sep2801:57sleep结论就是setuid标志被清掉了。原书答案如下每当无特权用户修改文件时内核会清除该文件的设置用户 IDset-user-ID权限位。若文件已开启组执行权限位则设置组 IDset-group-ID权限位也会被同样清除。详见 55.4 节当组执行位关闭、但设置组 ID 位开启时该组合与 SGID 程序无关此场景用于开启强制锁mandatory locking正因如此修改这类文件不会清除 SGID 位。清除这些权限位是为了保证如果程序文件允许任意用户写入那么即便文件被篡改也无法继续保留给文件执行用户赋予权限的能力。拥有特权CAP_FSETID的进程修改文件时内核不会清除上述权限位。38-2编写一个root 权限的 SUID 程序功能类似sudo(8)。程序支持如下命令行选项与参数$ ./douser [-u user ] program-file arg1 arg2 ...douser程序执行program-file以及后续传入参数模拟由 user 用户来运行该程序。如果省略-u选项则默认用户为 root。在执行program-file之前douser需要请求该 user 的密码基于标准密码文件完成身份校验参见教材 164 页代码清单 8-2然后将进程的所有用户 ID、组 ID 设置为该用户对应的正确值。略。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

通向超级智能的根本之路:技术路径拆解与从业者实操指南 2026/9/30 12:56:47

通向超级智能的根本之路:技术路径拆解与从业者实操指南

1. 从"超级智能"这个词说起:它到底在指什么 "通向超级智能的根本之路"这个标题,第一次看到的时候我愣了几秒。不是因为它有多玄乎,而是因为"超级智能"这四个字在圈子里被用得太泛了,泛到几乎每个人…

阅读更多 →
基于风光储能和需求响应的微电网日前经济调度Matlab实现 2026/9/30 12:56:40

基于风光储能和需求响应的微电网日前经济调度Matlab实现

搞微电网调度这块的人,应该都有过这种体验:模型看着不难,功率平衡、储能约束、机组出力上限,几行公式一列,但真到了Matlab里落地实现的时候,各种细节能把人折磨疯。尤其是把风光出力的随机性、储能系统的运…

阅读更多 →
网上图书商城系统软件项目管理大作业:JSP项目实战与增量迭代指南 2026/9/30 12:56:32

网上图书商城系统软件项目管理大作业:JSP项目实战与增量迭代指南

简介:这份《网上图书商城系统 软件项目管理大作业》文档,面向计算机相关专业学生及软件项目管理初学者,以网上图书商城为案例,完整呈现软件项目管理从立项到收尾的全过程,帮助读者理解合同签订、任务分解、成本估算与进…

阅读更多 →
在 Python 中实现无换行打印 2026/9/30 12:56:26

在 Python 中实现无换行打印

在 Python 编程里,print 函数是常用的输出工具。默认情况下,每次调用 print 函数后会自动换行。然而,在某些场景下,我们希望输出不换行,让信息在同一行连续显示。本文将围绕“print python without newline”&#xff…

阅读更多 →
browser-use 工具系统实战指南:自定义 Action、注入参数与 ActionResult 上下文控制 2026/9/30 12:56:11

browser-use 工具系统实战指南:自定义 Action、注入参数与 ActionResult 上下文控制

人工智能AI Agent浏览器控制GUI 自动化MCP 服务 【免费下载链接】browser-use Agents that use the browser. 项目地址: https://gitcode.com/GitHub_Trending/br/browser-use 点击查看 免费下载 本指南以 skills/open-source/references/tools.md 为基础&#xff…

阅读更多 →
Spirula Studio VRAM深度剖析:splat x img类别与位掩码压缩全解,8GB显存训练千万级高斯点 2026/9/30 12:56:05

Spirula Studio VRAM深度剖析:splat x img类别与位掩码压缩全解,8GB显存训练千万级高斯点

Spirula Studio VRAM深度剖析:splat x img类别与位掩码压缩全解,8GB显存训练千万级高斯点 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/Gi…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉