gpt4 book ai didi

linux - suid 二进制提权

转载 作者:行者123 更新时间:2023-12-05 03:50:01 27 4
gpt4 key购买 nike

如果 /usr/bin/bash 设置了 suid 位为什么只有当我像这样使用 -p 选项时,我的 euid 才会更改为 root /usr/bin/bash -p这个 -p 选项代表什么?当您从 suid 二进制文件生成 bash shell 时,为什么将 euid 设置为 root 而不是 uid

最佳答案

来自documentation :

-p
Turn on privileged mode. In this mode, the $BASH_ENV and $ENV files are not processed, shell functions are not inherited from the environment, and the SHELLOPTS, BASHOPTS, CDPATH and GLOBIGNORE variables, if they appear in the environment, are ignored. If the shell is started with the effective user (group) id not equal to the real user (group) id, and the -p option is not supplied, these actions are taken and the effective user id is set to the real user id. If the -p option is supplied at startup, the effective user id is not reset. Turning this option off causes the effective user and group ids to be set to the real user and group ids.

这样做是因为 setuid shell 脚本一直是安全漏洞的常见来源。因此,程序员需要使用 -p 选项来表明他们确实需要权限升级,例如通过使用

#!/usr/bin/bash -p

如果没有这个,在 /usr/bin/bash 上设置 suid 位本身将是一个巨大的安全漏洞,因为大多数脚本没有采取必要的预防措施以提升的权限运行时。

关于linux - suid 二进制提权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63689353/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com