105.网络安全渗透测试—[权限提升篇3]—[Linux劫持环境变量提权]

本文阅读 3 分钟
首页 代码,C/C#/C++ 正文

我认为,无论是学习安全还是从事安全的人,多多少少都有些许的情怀和使命感!!!

一、劫持环境变量提权

1、提权背景

       因为system函数是继承环境变量,可以通过替换环境变量可以达到执行任意命令。

2、提权原理

       创建一个cat文件,并添加设置环境变量PATH为当前cat文件的所在目录,那么在执行cat命令的时候会优先从当前目录下查找二进制程序。所以原本的cat命令会被劫持,就可以执行任意命令!!!

3、提权限制

       需要结合root下设置了suid二进制可执行文件中的某命令,简单地说就是需要结合suid漏洞

3、提权测试

在tmp目录下建立一个文件cat,然后开启一个shell

第一步: 在当前tmp目录下创建一个文件cat echo "/bin/bash">cat && chmod 777 cat img

第二步: 查看当前环境变量 echo $PATH img

第三步: 把当前tmp目录临时增加到环境变量 export PATH=.:$PATH

如下图所示,设置了PATH,那么在执行cat命令的时候会优先从当前目录下查找二进制程序。所以原本的cat命令会被劫持,就可以执行任意命令!!! img

第四步: 单独执行cat命令,运行shell【失败】 img 第五步: 结合上一篇的suid-demo进行提权

如下图所示,因为上一篇中suid-demo是一个二进制的可执行文件,且在root下设置了suid临时权限,同时源码中还存在cat命令,又结合了我们此处的cat命令劫持,那么这里的cat命令执行的是!/bin/bash开启了一个shell img

本文为互联网自动采集或经作者授权后发布,本文观点不代表立场,若侵权下架请联系我们删帖处理!文章出自:https://blog.csdn.net/qq_45555226/article/details/122953028
-- 展开阅读全文 --
KillDefender 的 Beacon 对象文件 PoC 实现
« 上一篇 02-09
Web安全—逻辑越权漏洞(BAC)
下一篇 » 03-13

发表评论

成为第一个评论的人

热门文章

标签TAG

最近回复