1. 项目概述域内密码提取的核心价值与挑战在域渗透的实战中获取有效的用户凭据往往是突破内网、横向移动乃至最终控制整个域环境的关键一步。这就像拿到了一把能打开多扇门的万能钥匙。而密码抓取正是锻造这把钥匙的核心工艺。我们常说的“密码抓取”远不止于在单台机器上运行一个Mimikatz那么简单尤其是在一个拥有严密防护和复杂架构的域环境中。它是一套系统性的技术组合目标直指存储着用户密码哈希或明文凭据的核心数据源。这些核心数据源主要分为两大类本地密码存储和域级密码存储。本地存储以SAM文件为代表它存在于每一台Windows计算机上保存着该台机器本地账户的密码哈希。而域级存储的“圣杯”无疑是NTDS.dit文件它位于域控制器上是整个Active Directory域中所有用户、计算机账户凭据的中央数据库。从这两个文件中提取哈希是后续进行哈希传递、票据传递或破解还原的基础。然而直接读取这些文件并非易事。操作系统尤其是域控制器会对这些关键文件施加严格的访问锁和保护机制。因此“提取方法”本质上是一系列绕过或利用系统机制在特定权限和场景下获取这些文件副本或直接读取其内容的技术。不同的方法适用于不同的渗透阶段、不同的权限水平以及不同的目标环境如是否部署了EDR、是否启用了Credential Guard等。理解每种方法的原理、前置条件、操作步骤以及优缺点是内网渗透测试人员和安全研究人员必须掌握的“艺术”。本文将深入对比五种从SAM到NTDS.dit的实战提取方法。我不会只罗列命令而是会拆解每种方法背后的系统原理分享我在实际攻防演练和红队评估中积累的操作细节、踩过的坑以及针对不同防守策略的绕过思路。无论你是刚开始接触内网安全的初学者还是想梳理知识体系的老手都能从中找到可直接复现的路径和值得深思的细节。2. 核心思路与攻击路径设计在动手之前清晰的思路比任何工具都重要。盲目地在目标机器上执行命令极易触发告警导致行动暴露。一个成熟的攻击者会根据当前已获取的权限、目标系统的环境以及最终目标来规划一条阻力最小、痕迹最少的提取路径。2.1 权限升级与场景适配所有的提取方法都建立在一定的权限基础之上。我们大致可以将权限场景分为以下几个层次本地管理员权限这是最低要求也是大多数方法的起点。拥有了本地管理员权限你基本上可以完全控制该台计算机包括访问受保护的注册表项、加载驱动、执行计划任务等这为提取本地SAM文件哈希铺平了道路。获取本地管理员权限的方法很多例如利用系统漏洞提权、窃取已登录的管理员会话令牌、或者通过域用户凭证在具有本地管理员权限的组策略首选项中查找密码等。域用户权限一个普通的域用户账户本身无法直接提取域控制器上的NTDS.dit。但是域用户权限是进行横向移动、信息收集的基石。你可以枚举域内计算机、用户组关系、查找具有特殊权限的账户如域管理员登录过的机器为后续获取更高权限创造条件。域管理员权限这是提取NTDS.dit文件的“黄金门票”。拥有域管理员组成员权限意味着你对该域拥有最高控制权可以直接访问域控制器上的所有资源包括NTDS.dit文件本身。此时提取方法的选择更多考虑的是隐蔽性和对抗EDR终端检测与响应的能力。SYSTEM权限这是Windows系统中的最高权限级别甚至高于管理员。许多本地提取工具如Mimikatz的sekurlsa::logonpasswords需要SYSTEM权限才能读取LSASS进程内存中的明文密码或哈希。通过psexec、wmic或计划任务等方式可以将管理员权限提升至SYSTEM。攻击路径的设计通常是一个从外到内、从低到高的过程通过钓鱼或漏洞获取一个初始立足点通常是普通用户权限→ 本地提权至管理员/SYSTEM → 提取本地哈希或明文密码 → 利用获取的凭据进行横向移动定位高价值目标如IT管理员的工作站→ 最终获取域管理员权限并瞄准域控制器。2.2 目标数据源分析SAM vs. NTDS.dit理解你要提取的东西是什么至关重要。SAM文件位置%SystemRoot%\system32\config\SAM内容存储本地用户账户的安全账户管理器信息主要是用户名和经过加密的密码哈希LM Hash/NTLM Hash。Vista之后默认只存储NTLM Hash。保护机制系统运行时该文件被系统内核锁定无法直接复制或读取。其访问受ACL访问控制列表严格控制通常只有SYSTEM账户有完全控制权。价值用于离线破解或在该台机器上进行哈希传递攻击。如果该机器同时有域用户登录有时也能从内存中提取到域凭据。NTDS.dit文件位置域控制器上的%SystemRoot%\NTDS\NTDS.dit内容Active Directory的数据库文件包含了域内所有对象用户、组、计算机等的信息其中核心就是每个账户的密码哈希。此外它还可能包含一些历史密码哈希。保护机制作为域控制器的核心服务ntds.dit由lsass.exe进程独占打开其保护比SAM文件更加严格。直接访问会被拒绝。同时域控制器通常有更严格的安全监控。价值域渗透的终极目标之一。获取它等于拿到了整个域所有账户的密码哈希可以进行全域范围的横向移动和持久化控制。提取方法的核心挑战就在于如何突破操作系统对这些文件的运行时保护获取其副本或直接读取其内容。3. 五种实战提取方法深度解析与对比下面我将逐一拆解五种经典的提取方法从原理、操作到优缺点和适用场景为你呈现一幅完整的战术地图。3.1 方法一注册表导出法——最经典的本地方案这是提取本地SAM和SYSTEM文件最传统、最稳定的方法之一。它的原理非常巧妙既然运行时文件被锁定那我就去读取它在内存中的“镜像”——注册表。原理剖析 Windows系统启动时会将SAM、SECURITY、SYSTEM等配置单元文件加载到注册表的HKEY_LOCAL_MACHINE下的对应子树中。具体来说SAM文件对应HKEY_LOCAL_MACHINE\SAMSYSTEM文件对应HKEY_LOCAL_MACHINE\SYSTEMSYSTEM文件中包含了一个名为Syskey的密钥用于加密SAM数据库。因此要解密SAM中的哈希必须同时拥有SAM和SYSTEM的注册表配置单元。操作步骤实录权限准备你需要拥有目标机器的管理员权限。通过psexec、WMI或计划任务等方式获得一个具有管理员权限的交互式命令行如psexec.exe -s -i cmd.exe其中-s表示以SYSTEM运行-i表示交互式。导出注册表配置单元reg save hklm\sam C:\temp\sam.save reg save hklm\system C:\temp\system.save这两个命令会将内存中的SAM和SYSTEM配置单元保存到指定的文件如C:\temp中。你需要确保有该目录的写入权限。文件传输将生成的sam.save和system.save文件下载到你的攻击机上。哈希提取在攻击机上使用secretsdump.pyImpacket套件或mimikatz来解析这两个文件。# 使用Impacket的secretsdump python3 secretsdump.py -sam sam.save -system system.save LOCAL这条命令会离线计算出所有本地用户的NTLM哈希。实操心得与避坑指南注意reg save命令需要较高的权限。在某些配置了严格权限或使用了某些安全软件的环境中即使你是管理员也可能被拦截。此时可以尝试使用disk shadow卷影拷贝后面会讲到或其他方法。优势不直接接触被锁定的SAM文件利用的是系统自身机制兼容性极好从Windows XP到Windows Server 2022都有效。产生的磁盘IO和网络流量较小相对隐蔽。劣势仅能提取本地账户的哈希。对于已登录的域账户其凭据哈希存储在LSASS进程中此法无效。如果目标系统启用了Credential GuardLSASS内存中的哈希会被保护起来但本地SAM的哈希仍可通过此方法提取因为Credential Guard主要保护的是运行时的凭据而非存储在磁盘上的SAM数据库加密密钥。适用场景在获取一台非域控制器如成员服务器、工作站的管理员权限后快速提取本地用户哈希用于本地破解或作为后续攻击的跳板。3.2 方法二Volume Shadow Copy卷影拷贝—— 兼顾本地与域的利器卷影拷贝是Windows提供的用于创建卷时间点快照的服务。我们可以利用这个合法功能创建一个包含被锁定系统文件如SAM、NTDS.dit的卷影副本然后从容地从副本中复制文件。原理剖析vssadmin或diskshadow工具可以调用Volume Shadow Copy Service。我们创建一个C盘系统盘的卷影副本这个副本在创建瞬间是一个完整的、一致性的快照。由于快照是只读的系统运行时对原始文件的锁定不会影响我们从快照中读取文件。之后我们将快照挂载到一个新的驱动器盘符就可以像访问普通文件夹一样访问其中的文件包括被锁定的config\SAM或NTDS\NTDS.dit。操作步骤实录以提取NTDS.dit为例权限与环境必须在域控制器上执行且需要本地管理员或域管理员权限。通过PsExec等工具获得一个交互式shell。使用diskshadow更推荐diskshadow是一个功能更强大的命令行工具支持脚本模式能更好地控制快照的创建和删除。首先创建一个脚本文件例如vss.txtset context persistent nowriters add volume c: alias someAlias create expose %someAlias% z:这个脚本的意思是设置上下文为持久化、无写入者添加C盘卷并起个别名创建快照将快照暴露为Z盘。在命令行执行diskshadow /s vss.txt如果成功你会看到一个新的驱动器Z:出现。复制关键文件copy z:\windows\ntds\ntds.dit C:\temp\ntds.dit copy z:\windows\system32\config\SYSTEM C:\temp\SYSTEM.hive同样需要SYSTEM文件来获取解密NTDS.dit所需的密钥。清理痕迹# 删除脚本创建的卷影副本重要 vssadmin delete shadows /forc: /quiet # 或者使用diskshadow脚本删除 # 在另一个脚本文件中写入 delete shadows all 然后执行不清理会导致大量快照占用磁盘空间可能引发管理员警觉。传输与解析将ntds.dit和SYSTEM.hive传回攻击机使用secretsdump.py解析python3 secretsdump.py -ntds ntds.dit -system SYSTEM.hive LOCAL实操心得与避坑指南注意vssadmin在高版本Windows如Server 2016中默认可能不允许非特权用户创建卷影拷贝。而diskshadow在默认配置下权限要求可能更低因此成为更常用的选择。一个关键细节直接从快照盘复制SYSTEM文件时可能会遇到“进程无法访问文件因为另一个进程正在使用它”的错误。这是因为SYSTEM配置单元也被锁定了。解决方法是复制SYSTEM.hive文件而不是直接复制SYSTEM它是一个指向注册表的符号链接。上面命令中的config\SYSTEM实际上就是SYSTEM.hive。优势这是一种“无接触”原始文件的方法利用了系统自带功能行为相对合法不易被基于文件访问行为的监控直接检测。既可以用于提取本地SAM更是远程提取域控制器NTDS.dit的标准方法。劣势操作步骤稍多需要一定的命令行熟练度。创建卷影拷贝会在系统日志中留下事件记录Event ID 7036 VSS服务启动有经验的安全团队可以通过日志审计发现异常。适用场景在已控制域控制器的情况下提取NTDS.dit文件的首选方法之一。也适用于需要提取被严格锁定的本地SAM文件的场景。3.3 方法三NinjaCopyPowerShell—— 绕过文件锁的“忍者”这是由PowerShell大神Joe Bialek开发的一种技术本质上是利用PowerShell直接调用Windows底层的文件系统驱动以原始磁盘读取的方式绕过文件锁和访问控制列表ACL直接读取被独占打开的文件。原理剖析 通常的Copy-Item或[System.IO.File]::Copy在复制文件时会遵循Windows API的规则如果文件被其他进程独占锁定复制就会失败。NinjaCopy则不同它使用.NET的[System.IO.FileStream]类并以FileShare.ReadWrite模式打开文件流同时它直接与文件系统驱动交互尝试绕过一些高级别的锁。更关键的是它通常需要高权限SYSTEM运行这使其能够访问几乎所有资源。操作步骤实录你需要一个高权限的PowerShell环境以管理员或SYSTEM身份运行。直接使用内嵌NinjaCopy逻辑的PowerShell脚本例如来自PowerSploit的Invoke-NinjaCopy.ps1。# 导入脚本 Import-Module .\Invoke-NinjaCopy.ps1 # 复制SAM文件 Invoke-NinjaCopy -Path C:\Windows\System32\config\SAM -LocalDestination C:\temp\sam.copy # 复制NTDS.dit文件在域控制器上 Invoke-NinjaCopy -Path C:\Windows\NTDS\ntds.dit -LocalDestination C:\temp\ntds.copy Invoke-NinjaCopy -Path C:\Windows\System32\config\SYSTEM -LocalDestination C:\temp\system.copy脚本执行后文件就会被复制到指定位置即使原始文件正在被lsass.exe等进程锁定。实操心得与避坑指南注意NinjaCopy的成功率并非100%。对于某些被内核模式驱动深度锁定的文件或者在某些特定系统配置下它可能仍然会失败。它的行为非常底层和直接容易被高级别的EDR产品检测为可疑的磁盘直接访问操作。优势简单粗暴一条命令解决问题无需像卷影拷贝那样多步操作。理论上可以复制任何文件。劣势检测风险高直接读取被锁定的核心系统文件是一种非常可疑的行为。许多新一代EDR和ATP解决方案能够检测到这种异常的文件访问模式。可能造成不稳定在极少数情况下强行读取被活动服务使用的数据库文件如NTDS.dit可能导致文件状态不一致尽管是只读操作存在理论上的风险。依赖PowerShell需要目标系统允许执行PowerShell脚本且可能受执行策略限制。适用场景在时间紧迫、且确定目标环境监控较弱或无监控时可以作为一种快速尝试的手段。或者在已经确认其他方法如注册表导出被拦截时的备选方案。在重要的红队行动中应谨慎使用优先考虑更“安静”的方法如卷影拷贝。3.4 方法四DCSync攻击—— 最优雅的“远程”提取如果说前面的方法都是“去域控制器家里把账本偷出来”那么DCSync就是“伪装成域控制器让账房先生主动把账本念给你听”。这是一种利用Active Directory复制协议Directory Replication Service DRS的认证缺陷进行的攻击。原理剖析 在Active Directory中域控制器之间需要相互同步数据用户、密码变更等这个过程通过DRS协议实现。一个域控制器可以向另一个域控制器发起“同步对象”的请求。Mimikatz的lsadump::dcsync模块模拟了这个过程。当攻击者拥有一个具备特定复制权限的账户凭据如域管理员、域控制器计算机账户或拥有Replicating Directory Changes权限的账户时就可以向域控制器发起请求索取指定用户或所有用户的密码哈希而无需直接接触NTDS.dit文件。操作步骤实录权限要求这是关键。你需要一个具有复制权限的账户。默认情况下域管理员组、企业管理员组和域控制器计算机账户拥有此权限。你也可以通过ACL后门给一个普通用户添加复制权限。执行DCSync在已获得高权限凭据的攻击机上使用Mimikatz。# 转储指定用户如krbtgt的哈希 mimikatz # lsadump::dcsync /domain:yourdomain.com /user:krbtgt # 转储整个域的所有用户哈希 mimikatz # lsadump::dcsync /domain:yourdomain.com /all执行后Mimikatz会通过RPC连接到域控制器并返回用户的NTLM哈希、LM哈希如果存在以及密码历史哈希。实操心得与避坑指南注意DCSync攻击会在域控制器的安全日志中产生非常特定的事件ID主要是4662对AD对象的操作和5145网络共享对象访问其中会记录访问的账户和访问的对象是DS-Replication-Get-Changes和DS-Replication-Get-Changes-All。任何有经验的安全团队都会监控这些事件。优势无需在域控制器上执行代码所有操作都在攻击机上进行极大降低了在核心服务器上留下痕迹的风险。无需处理文件直接获取哈希省去了复制、传输、解析大文件NTDS.dit可能很大的步骤和带宽消耗。精准获取可以只获取特定用户如krbtgt的哈希用于制作黄金票据。劣势权限要求高需要域管理员或同等权限这通常是攻击的后期阶段才能获得的。日志特征明显产生的日志是强告警信号容易被SIEM安全信息和事件管理系统捕获。网络流量虽然不传输大文件但会产生特定的DRS协议RPC流量可能被网络层IDS/IPS检测。适用场景在已完全控制域环境拥有域管理员权限后进行权限维持、制作黄金票据或需要快速、隐蔽地获取特定用户哈希时的最佳选择。这是红队评估中标志性的“域持久化”技术之一。3.5 方法五LSASS进程内存转储—— 获取明文密码的捷径严格来说这不是提取SAM或NTDS.dit文件但它是密码抓取艺术中不可或缺的一部分因为它的目标是登录后的明文密码和会话凭据。LSASS进程是Windows安全子系统的核心负责验证登录其内存中会缓存最近登录用户的明文密码、NTLM哈希、Kerberos票据等。原理剖析 当用户交互式登录如控制台、RDP或通过网络如net use登录时凭据会被传递给LSASS进程处理。为了支持WDigest、SSO等特性LSASS可能会在内存中保留一份明文密码的副本取决于系统设置。Mimikatz的sekurlsa::logonpasswords模块就是通过注入到LSASS进程读取其内存空间来提取这些凭据。操作步骤实录权限要求需要SYSTEM权限。因为LSASS是一个受保护的进程普通管理员权限也无法直接读取其内存。执行Mimikatz# 提升权限到debug通常SYSTEM权限自动具备 mimikatz # privilege::debug # 提取内存中的凭据 mimikatz # sekurlsa::logonpasswords如果成功你将看到当前和最近登录到该系统的所有用户的用户名、域名、NTLM哈希以及可能的明文密码。实操心得与避坑指南注意从Windows 8.1/Server 2012 R2开始微软引入了LSA保护在Windows 10/Server 2016之后又推出了更强大的Credential Guard。这些安全特性会隔离LSASS进程使其内存无法被非受信任的代码如Mimikatz读取。启用Credential Guard后此方法基本失效。如何判断Credential Guard是否启用可以检查注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa下的LsaCfgFlags值或者使用msinfo32查看“基于虚拟化的安全性”服务状态。绕过Credential Guard的尝试虽然困难但并非完全不可能。一些高级技术如利用漏洞如CVE-2021-36934、从休眠文件或内存转储文件中提取procdump导出lsass.dmp后用Mimikatz离线分析、或者攻击支持系统等但成功率低且风险极高。在实战中如果遇到启用了Credential Guard的目标通常建议转向其他方法如DCSync或卷影拷贝提取NTDS.dit。优势有可能直接获取明文密码这是哈希无法比拟的因为明文密码可以用于登录任何支持该认证方式的服务。同时也能获取当前登录会话的NTLM哈希和Kerberos票据。劣势受安全特性严重制约Credential Guard是它的“天敌”。行为非常敏感注入LSASS进程是几乎所有EDR的顶级告警行为极易暴露。结果不确定不一定总能拿到明文密码取决于系统配置UseLogonCredential注册表值等。适用场景在确认目标系统未启用Credential Guard/LSA保护且对EDR检测不敏感的环境中快速获取当前登录用户的凭据。常用于横向移动的初期从一台已控制的机器上获取登录在该机器上的域管理员凭据。4. 方法综合对比与实战选择指南为了更直观地对比我将这五种方法的核心特点整理如下表特性维度注册表导出法卷影拷贝法NinjaCopyDCSync攻击LSASS内存转储主要目标本地SAM哈希本地SAM / 域NTDS.dit任何被锁文件域用户哈希直接获取内存中的明文/哈希/票据所需权限本地管理员本地管理员对DC需域管理员SYSTEM/管理员域管理员或复制权限账户SYSTEM是否接触文件否访问注册表否访问快照是直接读磁盘否网络协议请求否访问进程内存隐蔽性较高高但留日志低中留特定日志极低对抗EDR难度低低高中极高适用阶段本地提权后控制DC后或需提取被锁本地文件时快速尝试/备用方案已获域管权限后的持久化/信息收集早期横向移动无CG时关键依赖Reg.exe, Impacketvssadmin/diskshadow, ImpacketPowerShell 高权限Mimikatz 高域权限Mimikatz 未启用CG日志痕迹少量注册表访问明显VSS服务事件可能触发文件访问监控非常明显4662 5145事件极明显进程注入告警实战选择策略初期立足与横向移动如果你控制了一台工作站/服务器首先尝试注册表导出法获取本地哈希看看是否有重用密码。同时检查是否有域用户登录并评估Credential Guard状态。如果未启用可冒险使用LSASS内存转储尝试获取明文或哈希进行横向移动。瞄准域控制器一旦获得域管理员权限首要目标就是域控制器上的NTDS.dit。首选卷影拷贝法。它的行为相对合法成功率极高是业界公认的“标准操作流程”。如果环境监控极严担心VSS日志可以考虑在获取必要文件后立即清除相关日志需另备工具和方法且有风险。权限维持与隐蔽提取在已经完全掌控域环境后需要定期获取新用户密码或进行隐蔽侦察时DCSync是最优雅的方式。虽然日志特征明显但你可以控制执行频率和来源IP甚至可以先给一个普通账户添加复制权限再用该账户进行DCSync以分散风险。备用与特殊场景NinjaCopy作为当前几种方法都失败时的最后尝试。或者在一些非常老旧的、没有部署任何监控的系统上快速使用。如果遇到Credential Guard立刻放弃LSASS内存提取转向基于文件的提取方法注册表、卷影拷贝或DCSync。5. 高级规避技巧与痕迹清理一个专业的渗透测试者不仅要会攻击还要懂得隐藏。以下是针对上述方法的一些反检测和清理思路对抗日志监控对于DCSync其日志4662不可避免但可以通过伪造或禁用日志来源进行干扰风险极高。更实际的做法是只在必要时使用并确保你的行动时间窗口在防守方的监控盲区如下班时间。对于卷影拷贝创建和删除卷影拷贝会产生事件日志。可以使用wevtutil命令行工具在操作前禁用VSS相关日志通道操作后再开启或者直接清除特定时间段的日志wevtutil cl。但这本身也是可疑行为。通用思路尽量使用域内已有的管理工具如diskshadow.exe,vssadmin.exe,reg.exe进行“Living off the Land”避免上传陌生可执行文件。混淆命令行参数将长命令拆解执行。对抗EDR/AV工具免杀对Mimikatz、Impacket等工具进行源码修改、加壳、混淆或直接使用内存加载反射注入的方式执行避免静态查杀。无文件攻击尽可能使用系统内置功能或PowerShell可进行混淆编码减少磁盘落盘。例如使用PowerShell实现DCSync的逻辑有开源脚本或者使用WMI、COM组件来执行相关操作。时序混淆将攻击步骤分散在较长的时间段内执行不要连续进行注册表导出、卷影拷贝、文件传输等操作。清理痕迹删除工具和产出文件使用del /f /s /q或cipher /w命令安全删除临时目录下的工具、提取的哈希文件、转储文件等。清除命令行历史对于cmd历史记录有限对于PowerShell需清除Get-History记录并可能需修改PSReadline的历史文件。恢复配置如果修改了系统配置如启用了WDigest缓存明文在任务完成后应将其恢复原状。记住没有绝对隐蔽的方法。蓝队防守的视角也在不断提升。这些规避技巧的目的是增加防守方的分析成本为你争取更长的行动时间。真正的隐蔽在于对目标环境的深入理解和对正常流量的巧妙模仿。6. 从哈希到利用抓取后的行动成功提取哈希只是开始如何利用它们才是目的。这里简要说明几种主要利用方式哈希传递使用提取到的NTLM Hash直接验证到其他支持NTLM认证的服务如SMB WinRM。工具psexec.pycrackmapexecevil-winrm。crackmapexec smb 192.168.1.0/24 -u Administrator -H NTLM_Hash --local-auth票据传递如果提取到的是Kerberos票据TGT或TGS可以直接使用票据进行认证。Mimikatz的pass-the-ticket功能。离线破解将哈希导入Hashcat或John the Riipper尝试破解出明文密码。这对于弱密码策略的域环境非常有效。破解出明文密码后使用范围更广。黄金票据利用从NTDS.dit中提取的krbtgt用户的NTLM Hash可以伪造任意用户的TGT票据从而获得域内任意服务的访问权限。这是最强大的持久化手段之一。mimikatz # kerberos::golden /user:fakeadmin /domain:yourdomain.com /sid:Domain_SID /krbtgt:krbtgt_NTLM_Hash /ptt白银票据利用服务账户如CIFS$HOST$的NTLM Hash伪造针对特定服务的TGS票据无需与KDC交互更加隐蔽。密码抓取的终点远不是拿到那一串字符。它开启了通往整个域王国的大门。理解每一种方法背后的“为什么”结合具体场景做出“怎么做”的选择并在行动中时刻思考“如何隐藏”这才是域渗透中密码抓取这门“艺术”的精髓。每一次实战都是独特的没有一成不变的剧本唯有对原理的深刻理解和对细节的不断打磨才能让你在攻防的棋局中占据先机。
域渗透实战:从SAM到NTDS.dit的五种密码哈希提取方法深度解析
1. 项目概述域内密码提取的核心价值与挑战在域渗透的实战中获取有效的用户凭据往往是突破内网、横向移动乃至最终控制整个域环境的关键一步。这就像拿到了一把能打开多扇门的万能钥匙。而密码抓取正是锻造这把钥匙的核心工艺。我们常说的“密码抓取”远不止于在单台机器上运行一个Mimikatz那么简单尤其是在一个拥有严密防护和复杂架构的域环境中。它是一套系统性的技术组合目标直指存储着用户密码哈希或明文凭据的核心数据源。这些核心数据源主要分为两大类本地密码存储和域级密码存储。本地存储以SAM文件为代表它存在于每一台Windows计算机上保存着该台机器本地账户的密码哈希。而域级存储的“圣杯”无疑是NTDS.dit文件它位于域控制器上是整个Active Directory域中所有用户、计算机账户凭据的中央数据库。从这两个文件中提取哈希是后续进行哈希传递、票据传递或破解还原的基础。然而直接读取这些文件并非易事。操作系统尤其是域控制器会对这些关键文件施加严格的访问锁和保护机制。因此“提取方法”本质上是一系列绕过或利用系统机制在特定权限和场景下获取这些文件副本或直接读取其内容的技术。不同的方法适用于不同的渗透阶段、不同的权限水平以及不同的目标环境如是否部署了EDR、是否启用了Credential Guard等。理解每种方法的原理、前置条件、操作步骤以及优缺点是内网渗透测试人员和安全研究人员必须掌握的“艺术”。本文将深入对比五种从SAM到NTDS.dit的实战提取方法。我不会只罗列命令而是会拆解每种方法背后的系统原理分享我在实际攻防演练和红队评估中积累的操作细节、踩过的坑以及针对不同防守策略的绕过思路。无论你是刚开始接触内网安全的初学者还是想梳理知识体系的老手都能从中找到可直接复现的路径和值得深思的细节。2. 核心思路与攻击路径设计在动手之前清晰的思路比任何工具都重要。盲目地在目标机器上执行命令极易触发告警导致行动暴露。一个成熟的攻击者会根据当前已获取的权限、目标系统的环境以及最终目标来规划一条阻力最小、痕迹最少的提取路径。2.1 权限升级与场景适配所有的提取方法都建立在一定的权限基础之上。我们大致可以将权限场景分为以下几个层次本地管理员权限这是最低要求也是大多数方法的起点。拥有了本地管理员权限你基本上可以完全控制该台计算机包括访问受保护的注册表项、加载驱动、执行计划任务等这为提取本地SAM文件哈希铺平了道路。获取本地管理员权限的方法很多例如利用系统漏洞提权、窃取已登录的管理员会话令牌、或者通过域用户凭证在具有本地管理员权限的组策略首选项中查找密码等。域用户权限一个普通的域用户账户本身无法直接提取域控制器上的NTDS.dit。但是域用户权限是进行横向移动、信息收集的基石。你可以枚举域内计算机、用户组关系、查找具有特殊权限的账户如域管理员登录过的机器为后续获取更高权限创造条件。域管理员权限这是提取NTDS.dit文件的“黄金门票”。拥有域管理员组成员权限意味着你对该域拥有最高控制权可以直接访问域控制器上的所有资源包括NTDS.dit文件本身。此时提取方法的选择更多考虑的是隐蔽性和对抗EDR终端检测与响应的能力。SYSTEM权限这是Windows系统中的最高权限级别甚至高于管理员。许多本地提取工具如Mimikatz的sekurlsa::logonpasswords需要SYSTEM权限才能读取LSASS进程内存中的明文密码或哈希。通过psexec、wmic或计划任务等方式可以将管理员权限提升至SYSTEM。攻击路径的设计通常是一个从外到内、从低到高的过程通过钓鱼或漏洞获取一个初始立足点通常是普通用户权限→ 本地提权至管理员/SYSTEM → 提取本地哈希或明文密码 → 利用获取的凭据进行横向移动定位高价值目标如IT管理员的工作站→ 最终获取域管理员权限并瞄准域控制器。2.2 目标数据源分析SAM vs. NTDS.dit理解你要提取的东西是什么至关重要。SAM文件位置%SystemRoot%\system32\config\SAM内容存储本地用户账户的安全账户管理器信息主要是用户名和经过加密的密码哈希LM Hash/NTLM Hash。Vista之后默认只存储NTLM Hash。保护机制系统运行时该文件被系统内核锁定无法直接复制或读取。其访问受ACL访问控制列表严格控制通常只有SYSTEM账户有完全控制权。价值用于离线破解或在该台机器上进行哈希传递攻击。如果该机器同时有域用户登录有时也能从内存中提取到域凭据。NTDS.dit文件位置域控制器上的%SystemRoot%\NTDS\NTDS.dit内容Active Directory的数据库文件包含了域内所有对象用户、组、计算机等的信息其中核心就是每个账户的密码哈希。此外它还可能包含一些历史密码哈希。保护机制作为域控制器的核心服务ntds.dit由lsass.exe进程独占打开其保护比SAM文件更加严格。直接访问会被拒绝。同时域控制器通常有更严格的安全监控。价值域渗透的终极目标之一。获取它等于拿到了整个域所有账户的密码哈希可以进行全域范围的横向移动和持久化控制。提取方法的核心挑战就在于如何突破操作系统对这些文件的运行时保护获取其副本或直接读取其内容。3. 五种实战提取方法深度解析与对比下面我将逐一拆解五种经典的提取方法从原理、操作到优缺点和适用场景为你呈现一幅完整的战术地图。3.1 方法一注册表导出法——最经典的本地方案这是提取本地SAM和SYSTEM文件最传统、最稳定的方法之一。它的原理非常巧妙既然运行时文件被锁定那我就去读取它在内存中的“镜像”——注册表。原理剖析 Windows系统启动时会将SAM、SECURITY、SYSTEM等配置单元文件加载到注册表的HKEY_LOCAL_MACHINE下的对应子树中。具体来说SAM文件对应HKEY_LOCAL_MACHINE\SAMSYSTEM文件对应HKEY_LOCAL_MACHINE\SYSTEMSYSTEM文件中包含了一个名为Syskey的密钥用于加密SAM数据库。因此要解密SAM中的哈希必须同时拥有SAM和SYSTEM的注册表配置单元。操作步骤实录权限准备你需要拥有目标机器的管理员权限。通过psexec、WMI或计划任务等方式获得一个具有管理员权限的交互式命令行如psexec.exe -s -i cmd.exe其中-s表示以SYSTEM运行-i表示交互式。导出注册表配置单元reg save hklm\sam C:\temp\sam.save reg save hklm\system C:\temp\system.save这两个命令会将内存中的SAM和SYSTEM配置单元保存到指定的文件如C:\temp中。你需要确保有该目录的写入权限。文件传输将生成的sam.save和system.save文件下载到你的攻击机上。哈希提取在攻击机上使用secretsdump.pyImpacket套件或mimikatz来解析这两个文件。# 使用Impacket的secretsdump python3 secretsdump.py -sam sam.save -system system.save LOCAL这条命令会离线计算出所有本地用户的NTLM哈希。实操心得与避坑指南注意reg save命令需要较高的权限。在某些配置了严格权限或使用了某些安全软件的环境中即使你是管理员也可能被拦截。此时可以尝试使用disk shadow卷影拷贝后面会讲到或其他方法。优势不直接接触被锁定的SAM文件利用的是系统自身机制兼容性极好从Windows XP到Windows Server 2022都有效。产生的磁盘IO和网络流量较小相对隐蔽。劣势仅能提取本地账户的哈希。对于已登录的域账户其凭据哈希存储在LSASS进程中此法无效。如果目标系统启用了Credential GuardLSASS内存中的哈希会被保护起来但本地SAM的哈希仍可通过此方法提取因为Credential Guard主要保护的是运行时的凭据而非存储在磁盘上的SAM数据库加密密钥。适用场景在获取一台非域控制器如成员服务器、工作站的管理员权限后快速提取本地用户哈希用于本地破解或作为后续攻击的跳板。3.2 方法二Volume Shadow Copy卷影拷贝—— 兼顾本地与域的利器卷影拷贝是Windows提供的用于创建卷时间点快照的服务。我们可以利用这个合法功能创建一个包含被锁定系统文件如SAM、NTDS.dit的卷影副本然后从容地从副本中复制文件。原理剖析vssadmin或diskshadow工具可以调用Volume Shadow Copy Service。我们创建一个C盘系统盘的卷影副本这个副本在创建瞬间是一个完整的、一致性的快照。由于快照是只读的系统运行时对原始文件的锁定不会影响我们从快照中读取文件。之后我们将快照挂载到一个新的驱动器盘符就可以像访问普通文件夹一样访问其中的文件包括被锁定的config\SAM或NTDS\NTDS.dit。操作步骤实录以提取NTDS.dit为例权限与环境必须在域控制器上执行且需要本地管理员或域管理员权限。通过PsExec等工具获得一个交互式shell。使用diskshadow更推荐diskshadow是一个功能更强大的命令行工具支持脚本模式能更好地控制快照的创建和删除。首先创建一个脚本文件例如vss.txtset context persistent nowriters add volume c: alias someAlias create expose %someAlias% z:这个脚本的意思是设置上下文为持久化、无写入者添加C盘卷并起个别名创建快照将快照暴露为Z盘。在命令行执行diskshadow /s vss.txt如果成功你会看到一个新的驱动器Z:出现。复制关键文件copy z:\windows\ntds\ntds.dit C:\temp\ntds.dit copy z:\windows\system32\config\SYSTEM C:\temp\SYSTEM.hive同样需要SYSTEM文件来获取解密NTDS.dit所需的密钥。清理痕迹# 删除脚本创建的卷影副本重要 vssadmin delete shadows /forc: /quiet # 或者使用diskshadow脚本删除 # 在另一个脚本文件中写入 delete shadows all 然后执行不清理会导致大量快照占用磁盘空间可能引发管理员警觉。传输与解析将ntds.dit和SYSTEM.hive传回攻击机使用secretsdump.py解析python3 secretsdump.py -ntds ntds.dit -system SYSTEM.hive LOCAL实操心得与避坑指南注意vssadmin在高版本Windows如Server 2016中默认可能不允许非特权用户创建卷影拷贝。而diskshadow在默认配置下权限要求可能更低因此成为更常用的选择。一个关键细节直接从快照盘复制SYSTEM文件时可能会遇到“进程无法访问文件因为另一个进程正在使用它”的错误。这是因为SYSTEM配置单元也被锁定了。解决方法是复制SYSTEM.hive文件而不是直接复制SYSTEM它是一个指向注册表的符号链接。上面命令中的config\SYSTEM实际上就是SYSTEM.hive。优势这是一种“无接触”原始文件的方法利用了系统自带功能行为相对合法不易被基于文件访问行为的监控直接检测。既可以用于提取本地SAM更是远程提取域控制器NTDS.dit的标准方法。劣势操作步骤稍多需要一定的命令行熟练度。创建卷影拷贝会在系统日志中留下事件记录Event ID 7036 VSS服务启动有经验的安全团队可以通过日志审计发现异常。适用场景在已控制域控制器的情况下提取NTDS.dit文件的首选方法之一。也适用于需要提取被严格锁定的本地SAM文件的场景。3.3 方法三NinjaCopyPowerShell—— 绕过文件锁的“忍者”这是由PowerShell大神Joe Bialek开发的一种技术本质上是利用PowerShell直接调用Windows底层的文件系统驱动以原始磁盘读取的方式绕过文件锁和访问控制列表ACL直接读取被独占打开的文件。原理剖析 通常的Copy-Item或[System.IO.File]::Copy在复制文件时会遵循Windows API的规则如果文件被其他进程独占锁定复制就会失败。NinjaCopy则不同它使用.NET的[System.IO.FileStream]类并以FileShare.ReadWrite模式打开文件流同时它直接与文件系统驱动交互尝试绕过一些高级别的锁。更关键的是它通常需要高权限SYSTEM运行这使其能够访问几乎所有资源。操作步骤实录你需要一个高权限的PowerShell环境以管理员或SYSTEM身份运行。直接使用内嵌NinjaCopy逻辑的PowerShell脚本例如来自PowerSploit的Invoke-NinjaCopy.ps1。# 导入脚本 Import-Module .\Invoke-NinjaCopy.ps1 # 复制SAM文件 Invoke-NinjaCopy -Path C:\Windows\System32\config\SAM -LocalDestination C:\temp\sam.copy # 复制NTDS.dit文件在域控制器上 Invoke-NinjaCopy -Path C:\Windows\NTDS\ntds.dit -LocalDestination C:\temp\ntds.copy Invoke-NinjaCopy -Path C:\Windows\System32\config\SYSTEM -LocalDestination C:\temp\system.copy脚本执行后文件就会被复制到指定位置即使原始文件正在被lsass.exe等进程锁定。实操心得与避坑指南注意NinjaCopy的成功率并非100%。对于某些被内核模式驱动深度锁定的文件或者在某些特定系统配置下它可能仍然会失败。它的行为非常底层和直接容易被高级别的EDR产品检测为可疑的磁盘直接访问操作。优势简单粗暴一条命令解决问题无需像卷影拷贝那样多步操作。理论上可以复制任何文件。劣势检测风险高直接读取被锁定的核心系统文件是一种非常可疑的行为。许多新一代EDR和ATP解决方案能够检测到这种异常的文件访问模式。可能造成不稳定在极少数情况下强行读取被活动服务使用的数据库文件如NTDS.dit可能导致文件状态不一致尽管是只读操作存在理论上的风险。依赖PowerShell需要目标系统允许执行PowerShell脚本且可能受执行策略限制。适用场景在时间紧迫、且确定目标环境监控较弱或无监控时可以作为一种快速尝试的手段。或者在已经确认其他方法如注册表导出被拦截时的备选方案。在重要的红队行动中应谨慎使用优先考虑更“安静”的方法如卷影拷贝。3.4 方法四DCSync攻击—— 最优雅的“远程”提取如果说前面的方法都是“去域控制器家里把账本偷出来”那么DCSync就是“伪装成域控制器让账房先生主动把账本念给你听”。这是一种利用Active Directory复制协议Directory Replication Service DRS的认证缺陷进行的攻击。原理剖析 在Active Directory中域控制器之间需要相互同步数据用户、密码变更等这个过程通过DRS协议实现。一个域控制器可以向另一个域控制器发起“同步对象”的请求。Mimikatz的lsadump::dcsync模块模拟了这个过程。当攻击者拥有一个具备特定复制权限的账户凭据如域管理员、域控制器计算机账户或拥有Replicating Directory Changes权限的账户时就可以向域控制器发起请求索取指定用户或所有用户的密码哈希而无需直接接触NTDS.dit文件。操作步骤实录权限要求这是关键。你需要一个具有复制权限的账户。默认情况下域管理员组、企业管理员组和域控制器计算机账户拥有此权限。你也可以通过ACL后门给一个普通用户添加复制权限。执行DCSync在已获得高权限凭据的攻击机上使用Mimikatz。# 转储指定用户如krbtgt的哈希 mimikatz # lsadump::dcsync /domain:yourdomain.com /user:krbtgt # 转储整个域的所有用户哈希 mimikatz # lsadump::dcsync /domain:yourdomain.com /all执行后Mimikatz会通过RPC连接到域控制器并返回用户的NTLM哈希、LM哈希如果存在以及密码历史哈希。实操心得与避坑指南注意DCSync攻击会在域控制器的安全日志中产生非常特定的事件ID主要是4662对AD对象的操作和5145网络共享对象访问其中会记录访问的账户和访问的对象是DS-Replication-Get-Changes和DS-Replication-Get-Changes-All。任何有经验的安全团队都会监控这些事件。优势无需在域控制器上执行代码所有操作都在攻击机上进行极大降低了在核心服务器上留下痕迹的风险。无需处理文件直接获取哈希省去了复制、传输、解析大文件NTDS.dit可能很大的步骤和带宽消耗。精准获取可以只获取特定用户如krbtgt的哈希用于制作黄金票据。劣势权限要求高需要域管理员或同等权限这通常是攻击的后期阶段才能获得的。日志特征明显产生的日志是强告警信号容易被SIEM安全信息和事件管理系统捕获。网络流量虽然不传输大文件但会产生特定的DRS协议RPC流量可能被网络层IDS/IPS检测。适用场景在已完全控制域环境拥有域管理员权限后进行权限维持、制作黄金票据或需要快速、隐蔽地获取特定用户哈希时的最佳选择。这是红队评估中标志性的“域持久化”技术之一。3.5 方法五LSASS进程内存转储—— 获取明文密码的捷径严格来说这不是提取SAM或NTDS.dit文件但它是密码抓取艺术中不可或缺的一部分因为它的目标是登录后的明文密码和会话凭据。LSASS进程是Windows安全子系统的核心负责验证登录其内存中会缓存最近登录用户的明文密码、NTLM哈希、Kerberos票据等。原理剖析 当用户交互式登录如控制台、RDP或通过网络如net use登录时凭据会被传递给LSASS进程处理。为了支持WDigest、SSO等特性LSASS可能会在内存中保留一份明文密码的副本取决于系统设置。Mimikatz的sekurlsa::logonpasswords模块就是通过注入到LSASS进程读取其内存空间来提取这些凭据。操作步骤实录权限要求需要SYSTEM权限。因为LSASS是一个受保护的进程普通管理员权限也无法直接读取其内存。执行Mimikatz# 提升权限到debug通常SYSTEM权限自动具备 mimikatz # privilege::debug # 提取内存中的凭据 mimikatz # sekurlsa::logonpasswords如果成功你将看到当前和最近登录到该系统的所有用户的用户名、域名、NTLM哈希以及可能的明文密码。实操心得与避坑指南注意从Windows 8.1/Server 2012 R2开始微软引入了LSA保护在Windows 10/Server 2016之后又推出了更强大的Credential Guard。这些安全特性会隔离LSASS进程使其内存无法被非受信任的代码如Mimikatz读取。启用Credential Guard后此方法基本失效。如何判断Credential Guard是否启用可以检查注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa下的LsaCfgFlags值或者使用msinfo32查看“基于虚拟化的安全性”服务状态。绕过Credential Guard的尝试虽然困难但并非完全不可能。一些高级技术如利用漏洞如CVE-2021-36934、从休眠文件或内存转储文件中提取procdump导出lsass.dmp后用Mimikatz离线分析、或者攻击支持系统等但成功率低且风险极高。在实战中如果遇到启用了Credential Guard的目标通常建议转向其他方法如DCSync或卷影拷贝提取NTDS.dit。优势有可能直接获取明文密码这是哈希无法比拟的因为明文密码可以用于登录任何支持该认证方式的服务。同时也能获取当前登录会话的NTLM哈希和Kerberos票据。劣势受安全特性严重制约Credential Guard是它的“天敌”。行为非常敏感注入LSASS进程是几乎所有EDR的顶级告警行为极易暴露。结果不确定不一定总能拿到明文密码取决于系统配置UseLogonCredential注册表值等。适用场景在确认目标系统未启用Credential Guard/LSA保护且对EDR检测不敏感的环境中快速获取当前登录用户的凭据。常用于横向移动的初期从一台已控制的机器上获取登录在该机器上的域管理员凭据。4. 方法综合对比与实战选择指南为了更直观地对比我将这五种方法的核心特点整理如下表特性维度注册表导出法卷影拷贝法NinjaCopyDCSync攻击LSASS内存转储主要目标本地SAM哈希本地SAM / 域NTDS.dit任何被锁文件域用户哈希直接获取内存中的明文/哈希/票据所需权限本地管理员本地管理员对DC需域管理员SYSTEM/管理员域管理员或复制权限账户SYSTEM是否接触文件否访问注册表否访问快照是直接读磁盘否网络协议请求否访问进程内存隐蔽性较高高但留日志低中留特定日志极低对抗EDR难度低低高中极高适用阶段本地提权后控制DC后或需提取被锁本地文件时快速尝试/备用方案已获域管权限后的持久化/信息收集早期横向移动无CG时关键依赖Reg.exe, Impacketvssadmin/diskshadow, ImpacketPowerShell 高权限Mimikatz 高域权限Mimikatz 未启用CG日志痕迹少量注册表访问明显VSS服务事件可能触发文件访问监控非常明显4662 5145事件极明显进程注入告警实战选择策略初期立足与横向移动如果你控制了一台工作站/服务器首先尝试注册表导出法获取本地哈希看看是否有重用密码。同时检查是否有域用户登录并评估Credential Guard状态。如果未启用可冒险使用LSASS内存转储尝试获取明文或哈希进行横向移动。瞄准域控制器一旦获得域管理员权限首要目标就是域控制器上的NTDS.dit。首选卷影拷贝法。它的行为相对合法成功率极高是业界公认的“标准操作流程”。如果环境监控极严担心VSS日志可以考虑在获取必要文件后立即清除相关日志需另备工具和方法且有风险。权限维持与隐蔽提取在已经完全掌控域环境后需要定期获取新用户密码或进行隐蔽侦察时DCSync是最优雅的方式。虽然日志特征明显但你可以控制执行频率和来源IP甚至可以先给一个普通账户添加复制权限再用该账户进行DCSync以分散风险。备用与特殊场景NinjaCopy作为当前几种方法都失败时的最后尝试。或者在一些非常老旧的、没有部署任何监控的系统上快速使用。如果遇到Credential Guard立刻放弃LSASS内存提取转向基于文件的提取方法注册表、卷影拷贝或DCSync。5. 高级规避技巧与痕迹清理一个专业的渗透测试者不仅要会攻击还要懂得隐藏。以下是针对上述方法的一些反检测和清理思路对抗日志监控对于DCSync其日志4662不可避免但可以通过伪造或禁用日志来源进行干扰风险极高。更实际的做法是只在必要时使用并确保你的行动时间窗口在防守方的监控盲区如下班时间。对于卷影拷贝创建和删除卷影拷贝会产生事件日志。可以使用wevtutil命令行工具在操作前禁用VSS相关日志通道操作后再开启或者直接清除特定时间段的日志wevtutil cl。但这本身也是可疑行为。通用思路尽量使用域内已有的管理工具如diskshadow.exe,vssadmin.exe,reg.exe进行“Living off the Land”避免上传陌生可执行文件。混淆命令行参数将长命令拆解执行。对抗EDR/AV工具免杀对Mimikatz、Impacket等工具进行源码修改、加壳、混淆或直接使用内存加载反射注入的方式执行避免静态查杀。无文件攻击尽可能使用系统内置功能或PowerShell可进行混淆编码减少磁盘落盘。例如使用PowerShell实现DCSync的逻辑有开源脚本或者使用WMI、COM组件来执行相关操作。时序混淆将攻击步骤分散在较长的时间段内执行不要连续进行注册表导出、卷影拷贝、文件传输等操作。清理痕迹删除工具和产出文件使用del /f /s /q或cipher /w命令安全删除临时目录下的工具、提取的哈希文件、转储文件等。清除命令行历史对于cmd历史记录有限对于PowerShell需清除Get-History记录并可能需修改PSReadline的历史文件。恢复配置如果修改了系统配置如启用了WDigest缓存明文在任务完成后应将其恢复原状。记住没有绝对隐蔽的方法。蓝队防守的视角也在不断提升。这些规避技巧的目的是增加防守方的分析成本为你争取更长的行动时间。真正的隐蔽在于对目标环境的深入理解和对正常流量的巧妙模仿。6. 从哈希到利用抓取后的行动成功提取哈希只是开始如何利用它们才是目的。这里简要说明几种主要利用方式哈希传递使用提取到的NTLM Hash直接验证到其他支持NTLM认证的服务如SMB WinRM。工具psexec.pycrackmapexecevil-winrm。crackmapexec smb 192.168.1.0/24 -u Administrator -H NTLM_Hash --local-auth票据传递如果提取到的是Kerberos票据TGT或TGS可以直接使用票据进行认证。Mimikatz的pass-the-ticket功能。离线破解将哈希导入Hashcat或John the Riipper尝试破解出明文密码。这对于弱密码策略的域环境非常有效。破解出明文密码后使用范围更广。黄金票据利用从NTDS.dit中提取的krbtgt用户的NTLM Hash可以伪造任意用户的TGT票据从而获得域内任意服务的访问权限。这是最强大的持久化手段之一。mimikatz # kerberos::golden /user:fakeadmin /domain:yourdomain.com /sid:Domain_SID /krbtgt:krbtgt_NTLM_Hash /ptt白银票据利用服务账户如CIFS$HOST$的NTLM Hash伪造针对特定服务的TGS票据无需与KDC交互更加隐蔽。密码抓取的终点远不是拿到那一串字符。它开启了通往整个域王国的大门。理解每一种方法背后的“为什么”结合具体场景做出“怎么做”的选择并在行动中时刻思考“如何隐藏”这才是域渗透中密码抓取这门“艺术”的精髓。每一次实战都是独特的没有一成不变的剧本唯有对原理的深刻理解和对细节的不断打磨才能让你在攻防的棋局中占据先机。