CSDN博客

img aocanghai

特权提升

发表于2003/7/24 8:29:00  841人阅读

提升进程的特权级别(源码)    bfbd(原作)
关键字     VC++ API 进程

 

//提升进程权限
BOOL UpdateProcessPrivilege( HANDLE hProcess, LPCTSTR lpPrivilegeName = SE_DEBUG_NAME )
// hProcess [in] : 要提升的进程,目标进程
// lpPrivilegeName [in] : 要提升到的特权,目标特权
// 返回值 : TRUE : 成功; FALSE : 失败
{
 HANDLE hToken;
 if ( ::OpenProcessToken( hProcess, TOKEN_ALL_ACCESS, &hToken ) ) {
  
  LUID destLuid;
  if ( ::LookupPrivilegeValue( NULL, lpPrivilegeName, &destLuid ) ) {
   
   TOKEN_PRIVILEGES TokenPrivileges;
   TokenPrivileges.PrivilegeCount = 1;
   TokenPrivileges.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
   TokenPrivileges.Privileges[0].Luid = destLuid;
   int iResult;
   if ( iResult = ::AdjustTokenPrivileges( hToken, FALSE, &TokenPrivileges,
         0, NULL, NULL ) ) {
    
    return TRUE;    
   }
  }
 }

 return FALSE;
}

参考帖子:

http://www.csdn.net/expert/topic/580/580874.xml?temp=.7492029

特此致谢!

 


0 0

相关博文

我的热门文章

img
取 消
img