对象:
含有setuid(geteuid())这类程序
要求:
bash 4.1以下
原理:
bash在执行时会调用环境变量,并且加载自定义函数,这时,会执行自定义函数后的语句
export foo='() { :; }; echo hello bash’
# 猜测:当时getuid获取的可能是文件所有者的UID,也就是0,这样,setuid就获取了root权限
当前状态
geteuid(),getuid()一字之差
对象:
含有setuid(geteuid())这类程序
要求:
bash 4.1以下
原理:
bash在执行时会调用环境变量,并且加载自定义函数,这时,会执行自定义函数后的语句
export foo='() { :; }; echo hello bash’
# 猜测:当时getuid获取的可能是文件所有者的UID,也就是0,这样,setuid就获取了root权限
当前状态
geteuid(),getuid()一字之差