提升debug权限

给我们的exe提升debug权限,很多时候我们都需要用到。


bool AdjustProcessPrivileges(HANDLE hProcess, LPCTSTR PrivilegeName) {
    HANDLE hToken;
    bool bRet = false;
    TOKEN_PRIVILEGES tkp = { 0 };


    if (!OpenProcessToken(hProcess, TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken)) {
        goto Exit;
    }
    LookupPrivilegeValue(NULL, PrivilegeName, &tkp.Privileges[0].Luid);
    tkp.PrivilegeCount = 1;
    tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
    AdjustTokenPrivileges(hToken, FALSE, &tkp, sizeof(tkp), (PTOKEN_PRIVILEGES)NULL, 0);
    bRet = true;
Exit:
    return bRet;
}


调用的时候是:

    AdjustProcessPrivileges(GetCurrentProcess(), SE_DEBUG_NAME);

猜你喜欢

转载自blog.csdn.net/water12233/article/details/52608972
今日推荐