以高权限打开命令行程序

问题描述 投票:0回答:1

我目前正在编写DLL注入程序(C ++),该程序将指定的证书添加到certmgr.exe

我写了与注入有关的全部内容(OpenProcess等)。当我执行它-附加到svchost时-我的DLL无法加载,因为它似乎没有svchost所拥有的权限。

如何转让权利?

在我的DLL文件中,我使用的是system("certmgr.exe -add ...."),我认为这可能是问题所在,因为命令行是作为单独的程序打开的(就像我通过start打开它一样。]

c++ windows command-line dll-injection
1个回答
0
投票

使用“ runas”参数使用ShellExecute(),这将使其尝试以管理员身份运行

ShellExecuteA( NULL, 
    "runas",  
    "c:\\windows\\certmgr.exe",  
    "-add ....",     
    NULL,                 
    SW_SHOWNORMAL  
);
© www.soinside.com 2019 - 2024. All rights reserved.