什么是“evil-winrm”/WinRM?
Evil-WinRM 是一种后漏洞利用工具,它提供了一种通过 Windows 远程管理 (WinRM) 与 Windows 系统交互的简化和高效方式。它广泛用于渗透测试和 Capture the Flag (CTF) 场景,例如 HackTheBox,以在受感染的系统上建立交互式 shell。
Windows 远程管理 (WinRM) 是一项支持远程管理系统的 Windows 服务。它基于 Web 服务管理 (WS-Man) 协议,该协议允许通过以下方式与系统进行远程交互:
-
远程命令执行
-
脚本(通过 PowerShell)
-
配置管理
默认情况下:
-
WinRM 侦听端口 5985 (HTTP) 和端口 5986 (HTTPS)。
它支持 NTLM、Kerberos 或基本身份验证 ((如果启用) )等身份验证方法。
分析
为了通过 WinRM 进行连接,我打开了我的受害者计算机并键入了 WinRM,正如命令提示的那样,它将快速配置 WinRM。完成后,我打开了我的 Kali 盒子并输入了以下内容:winrm quickconfig
正如我们所看到的,我们建立了联系。身份验证成功后,Evil-WinRM 会启动与目标系统的远程 PowerShell 会话。该工具的工作方式非常简单,不像 “ATExec” 和 “PSExec” 那样生成更明显的工件,如服务和任务文件。
检波
为了检测 Evil-WinRM 的使用情况,我们将利用 Powershell Module Logging。在受害计算机上,我打开了组策略编辑器并执行以下操作:
-
Windows 组件> Windows PowerShell >计算机配置>管理模板。
-
选择:打开模块日志记录
-
点击 “Module Names” 旁边的 “Show”,然后输入:
-
单击 OK
-
打开 CMD 并键入 这将立即强制 GP 更新。
gpupdate /force
现在我将从 Kali 重新连接到我的受害者机器。完成此操作后,我们可以看到它通过 Event Viewer 生成的工件,位于 Applications and Services Logs > Microsoft > Windows > PowerShell > Operational:
需要注意的是,建立连接后,攻击者键入的每个命令都将替换“(get-location).path”。我们在这里检测到的只是初始的 evil-winrm 连接
这是一个可靠的指标。由于我使用 QRadar 作为我的实验室 SIEM,因此我可以以下格式查看事件:
我将解析将在其上创建检测规则的三个感兴趣字段:
-
“Command” 使用正则表达式 Command Name = (.+?(?=s*CommandsType))
-
使用正则表达式 value=“(.+?) 的 ”Command Value”名字
-
使用正则表达式主机应用程序的“进程路径” = (.+?(?=s*EnginesVersion))
然后,我可以创建如下规则:
其它相关课程
详细目录
QT开发底层原理与安全逆向视频教程
linux文件系统存储与文件过滤安全开发视频教程(2024最新)
linux高级usb安全开发与源码分析视频教程
linux程序设计与安全开发
-
windows恶意软件开发与对抗视频教程
-
windows网络安全防火墙与虚拟网卡(更新完成)
-
windows文件过滤(更新完成)
-
USB过滤(更新完成)
-
游戏安全(更新中)
-
ios逆向
-
windbg
-
还有很多免费教程(限学员)
-
更多详细内容添加作者微信
原文始发于微信公众号(安全狗的自我修养):检测 “evil-winrm”
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论