我用API:SetLocalTime設定本機時間與服務器時間同步,可部分用戶因為沒權限而使操作失敗。問:該怎麼做。如何提升用戶的權限,修改時間後,又改回原來的權限。操作系統:Windows2000或XP;

解决方案 »

  1.   

    AdjustTokenGroups
    AdjustTokenPrivileges 
    DuplicateToken 
    GetTokenInformation 
    OpenProcessToken 
    OpenThreadToken 
    SetTokenInformation 
    SetThreadToken 
    DuplicateTokenEx 
    CheckTokenMembership
    CreateRestrictedToken  
    IsTokenRestricted
    因该是这些,没用过。
      

  2.   

    根据时间来判断让系统执行命令Windows 2000中的RunAs服务进程可以让用户甲以用户乙的权限运行程序,这类似于Unix和Linux系统中SUID位功能。W2K中的一个API:CreateProcessWithLogonW就利用了RunAs服务进程,用户甲调用这个CreateProcessWithLogonW时把用户乙的账号(Account)、域(Domain)、密码(Password)提交给Windows操作系统作Authentication,如果Authentication成功,那么就接着运行指定的程序,而且这个程序运行时具有用户乙的权限。CreateProcessWithLogonW API的定义如下:
    BOOL CreateProcessWithLogonW(
    LPCWSTR , // 用户乙的账号(Account)
    LPCWSTR , //用户乙的域(Domain)
    LPCWSTR , // 用户乙的密码(Password)
    DWORD , // logon option
    LPCWSTR , // executable module name
    LPWSTR , // command-line string
    DWORD , // creation flags
    LPVOID , // new environment block
    LPCWSTR , // current directory name
    LPSTARTUPINFOW , // startup information
    LPPROCESS_INFORMATION // process information
    );
      

  3.   

    //当然要利用系统的漏洞才能在普通用户的权限下去提升其它用户的权限
    Named Pipe(命名管道漏洞)利用这个就可以,但是你的系统如果是打了最新的补丁不一定好使了
    一般是在sp1 sp3情况下才有一定的可能性
      

  4.   

    agree carbon107carbon107 is hacker????hehe ^_^