首页
社区
课程
招聘
[求助]关于admin获取system权限的问题
发表于: 2005-8-5 16:03 6152

[求助]关于admin获取system权限的问题

2005-8-5 16:03
6152
这几天看了一块3毛钱的代码 觉得很奇怪
主要代码如下:
invoke  _EnablePrivilege, CTXT("SeDebugPrivilege"), TRUE
        
        invoke  _GetPidFromProcName, CTXT("lsass.exe")
        invoke  OpenProcess, PROCESS_QUERY_INFORMATION, 0, eax
        test    eax, eax
        jz      _exit
        mov     hProc, eax
        invoke  OpenProcessToken, hProc, READ_CONTROL+WRITE_DAC, addr hToken
        test    eax, eax
        jz      _exit
        
        invoke  _ModifySecurity, hToken, TOKEN_ALL_ACCESS
        test    eax, eax
        jz      _exit
        
        invoke  CloseHandle, hToken
        mov     hToken, 0
        
        invoke  OpenProcessToken, hProc, TOKEN_ALL_ACCESS, addr hToken
        test    eax, eax
        jz      _exit
        
        invoke  [COLOR=orangered]DuplicateTokenEx[/COLOR], hToken, TOKEN_ALL_ACCESS, 0, SecurityImpersonation, TokenPrimary, addr hNewToken
        test    eax, eax
        jz      _exit
        
        invoke  [COLOR=orangered]ImpersonateLoggedOnUser[/COLOR], hNewToken
        test    eax, eax
        jz      _exit
        
        mov     stStartupInfo.cb, sizeof stStartupInfo
        invoke  [COLOR=orangered]CreateProcessAsUser[/COLOR], hNewToken, 0, CTXT("cmd.exe"), 0, 0, 0, 0, 0, 0, addr stStartupInfo, addr procinfo


我觉得有疑问的是红色的那几个API,首先对照其他人的代码,他们都配置了winstation和destop 以便新进程可以与当前桌面交互 默认为winsta0/default
但是这段代码没有配置过桌面 但是运行结果良好。
我又试着把其他相关代码的配置桌面去掉 却看不见运行结果了。不明白啊。

ps:一块3毛钱的完整代码见:http://www.cnblogs.com/F4ncy/archive/2005/07/24/199211.html
的第2种方法

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 200
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
2
这些代码在目前最流行的XP版本上似乎都无效了。我的XP上能用,换台机子就不行了。
2006-1-21 16:44
0
游客
登录 | 注册 方可回帖
返回
//