域信任发现

域信任发现是攻击者在Windows多域/林环境中枚举域间信任关系以寻找横向移动路径的关键技术,涉及通过DSEnumerateDomainTrusts() API、nltest工具或LDAP查询等方式获取信任域列表。传统检测主要监控进程行为(如nltest /domain_trusts调用)、API调用序列(如GetAllTrustRelationships()方法)及LDAP查询特征。防御方可通过审计日志分析、RPC流量监控等手段识别异常域信任枚举行为。

当前域信任发现匿迹技术的共性在于对系统信任机制的逆向利用与协议规范的创造性突破。合法API调用技术通过"Living-off-the-Land"策略将恶意代码寄生在系统进程内,复用微软签名的二进制文件执行侦察操作;跨域日志伪造技术针对审计体系的完整性弱点,构建虚假行为轨迹干扰事件关联分析;协议元数据伪装则突破传统协议解析器的检测深度,在协议合规的表象下传输恶意查询指令。三者共同构建了从主机层到网络层的全栈匿迹能力:在主机层利用系统白名单机制规避进程检测,在日志层破坏审计证据链完整性,在网络层借助合法协议通道隐藏恶意流量。这种多层匿迹体系使得传统基于单一维度检测的防御方案完全失效,攻击者得以在域控制器、SIEM系统、网络防火墙等多个防御节点的盲区中实施隐蔽侦察。

ID: T1482
Sub-techniques:  No sub-techniques
Tactic: 环境测绘
Platforms: Windows
Contributors: Dave Westgard; Elia Florio, Microsoft; ExtraHop; Mnemonic; RedHuntLabs, @redhuntlabs
Version: 1.2
Created: 14 February 2019
Last Modified: 16 June 2022

匿迹效应

效应类型 是否存在
特征伪装
行为透明
数据遮蔽
时空释痕

特征伪装

攻击者通过复用系统管理工具的数字签名、模仿LDAP/DNS协议交互模式,将域信任发现行为伪装成合法的域管理操作。例如将恶意查询指令嵌入LDAP分页查询控件或DNS扩展字段,使网络流量呈现合规协议特征,规避基于协议解析的检测规则。

数据遮蔽

在跨域协议元数据伪装场景中,攻击者利用TLS加密通道传输改造后的LDAP请求,使中间设备无法解析被加密的协议元数据字段。同时采用内存加密技术保护API调用过程中的敏感参数,避免EDR解决方案捕获明文侦察指令。

时空释痕

通过将域信任查询任务拆解为低频次、跨域的分散请求,例如每周在不同子域控制器发起单次LDAP查询,利用跨域信任关系的自动同步机制间接获取全局信息。这种长周期、跨域的空间分散策略稀释了攻击特征,使得传统基于单域短周期行为分析的检测模型难以有效识别。

Procedure Examples

ID Name Description
S0552 AdFind

AdFind can gather information about organizational units (OUs) and domain trusts from Active Directory.[1][2][3][4]

G1024 Akira

Akira uses the built-in Nltest utility or tools such as AdFind to enumerate Active Directory trusts in victim environments.[5]

S1081 BADHATCH

BADHATCH can use nltest.exe /domain_trusts to discover domain trust relationships on a compromised machine.[6]

S0534 Bazar

Bazar can use Nltest tools to obtain information about the domain.[7][8]

S0521 BloodHound

BloodHound has the ability to map domain trusts and identify misconfigurations for potential abuse.[9]

S1063 Brute Ratel C4

Brute Ratel C4 can use LDAP queries and nltest /domain_trusts for domain trust discovery.[10][11]

C0015 C0015

During C0015, the threat actors used the command nltest /domain_trusts /all_trusts to enumerate domain trusts.[12]

G0114 Chimera

Chimera has nltest /domain_trusts to identify domain trust relationships.[13]

S0105 dsquery

dsquery can be used to gather information on domain trusts with dsquery * -filter "(objectClass=trustedDomain)" -attr *.[14]

S1159 DUSTTRAP

DUSTTRAP can identify Active Directory information and related items.[15]

G1006 Earth Lusca

Earth Lusca has used Nltest to obtain information about domain controllers.[16]

S0363 Empire

Empire has modules for enumerating domain trusts.[17]

G0061 FIN8

FIN8 has retrieved a list of trusted domains by using nltest.exe /domain_trusts.[18]

S0483 IcedID

IcedID used Nltest during initial discovery.[19][20]

S1160 Latrodectus

Latrodectus can run C:\Windows\System32\cmd.exe /c nltest /domain_trusts to discover domain trusts.[21][22]

G0059 Magic Hound

Magic Hound has used a web shell to execute nltest /trusted_domains to identify trust relationships.[23]

S1146 MgBot

MgBot includes modules for collecting information on local domain users and permissions.[24]

S0359 Nltest

Nltest may be used to enumerate trusted domains by using commands such as nltest /domain_trusts.[25][26]

S1145 Pikabot

Pikabot will gather information concerning the Windows Domain the victim machine is a member of during execution.[27]

S0378 PoshC2

PoshC2 has modules for enumerating domain trusts.[28]

S0194 PowerSploit

PowerSploit has modules such as Get-NetDomainTrust and Get-NetForestTrust to enumerate domain and forest trusts.[29][30]

S0650 QakBot

QakBot can run nltest /domain_trusts /all_trusts for domain trust discovery.[31]

S1071 Rubeus

Rubeus can gather information about domain trusts.[32][33]

S1124 SocGholish

SocGholish can profile compromised systems to identify domain trust relationships.[34][35]

C0024 SolarWinds Compromise

During the SolarWinds Compromise, APT29 used the Get-AcceptedDomain PowerShell cmdlet to enumerate accepted domains through an Exchange Management Shell.[36] They also used AdFind to enumerate domains and to discover trust between federated domains.[37][38]

S0266 TrickBot

TrickBot can gather information about domain trusts by utilizing Nltest.[26][39]

Mitigations

ID Mitigation Description
M1047 Audit

Map the trusts within existing domains/forests and keep trust relationships to a minimum.

M1030 Network Segmentation

Employ network segmentation for sensitive domains.[14].

Detection

ID Data Source Data Component Detects
DS0017 Command Command Execution

Monitor executed commands and arguments for actions that could be taken to gather system and network information, such as nltest /domain_trusts. Remote access tools with built-in features may interact directly with the Windows API to gather information.

DS0029 Network Traffic Network Traffic Content

Monitor and analyze traffic patterns and packet inspection associated to LDAP and MSRPC that do not follow the expected protocol standards and traffic flows (e.g extraneous packets that do not belong to established flows, gratuitous or anomalous traffic patterns, anomalous syntax, or structure).

DS0009 Process OS API Execution

Monitor for API calls associated with gathering information on domain trust relationships that may be used to identify lateral movement like DSEnumerateDomainTrusts() Win32 API call to spot activity associated with Domain Trust Discovery.[14] Information may also be acquired through Windows system management tools such as PowerShell. The .NET method GetAllTrustRelationships() can be an indicator of Domain Trust Discovery.[40]

Process Creation

Monitor for newly executed processes that may attempt to gather information on domain trust relationships that may be used to identify lateral movement opportunities in Windows multi-domain/forest environments.

DS0012 Script Script Execution

Monitor for any attempts to enable scripts running on a system would be considered suspicious. If scripts are not commonly used on a system, but enabled, scripts running out of cycle from patching or other administrator functions are suspicious. Scripts should be captured from the file system when possible to determine their actions and intent.

References

  1. Brian Donohue, Katie Nickels, Paul Michaud, Adina Bodkins, Taylor Chapman, Tony Lambert, Jeff Felling, Kyle Rainey, Mike Haag, Matt Graeber, Aaron Didier.. (2020, October 29). A Bazar start: How one hospital thwarted a Ryuk ransomware outbreak. Retrieved October 30, 2020.
  2. McKeague, B. et al. (2019, April 5). Pick-Six: Intercepting a FIN6 Intrusion, an Actor Recently Tied to Ryuk and LockerGoga Ransomware. Retrieved April 17, 2019.
  3. Goody, K., et al (2019, January 11). A Nasty Trick: From Credential Theft Malware to Business Disruption. Retrieved May 12, 2020.
  4. Kamble, V. (2022, June 28). Bumblebee: New Loader Rapidly Assuming Central Position in Cyber-crime Ecosystem. Retrieved August 24, 2022.
  5. Steven Campbell, Akshay Suthar, & Connor Belfiorre. (2023, July 26). Conti and Akira: Chained Together. Retrieved February 20, 2024.
  6. Vrabie, V., et al. (2021, March 10). FIN8 Returns with Improved BADHATCH Toolkit. Retrieved September 8, 2021.
  7. Cybereason Nocturnus. (2020, July 16). A BAZAR OF TRICKS: FOLLOWING TEAM9’S DEVELOPMENT CYCLES. Retrieved November 18, 2020.
  8. Pantazopoulos, N. (2020, June 2). In-depth analysis of the new Team9 malware family. Retrieved December 1, 2020.
  9. Red Team Labs. (2018, April 24). Hidden Administrative Accounts: BloodHound to the Rescue. Retrieved October 28, 2020.
  10. Harbison, M. and Renals, P. (2022, July 5). When Pentest Tools Go Brutal: Red-Teaming Tool Being Abused by Malicious Actors. Retrieved February 1, 2023.
  11. Kenefick, I. et al. (2022, October 12). Black Basta Ransomware Gang Infiltrates Networks via QAKBOT, Brute Ratel, and Cobalt Strike. Retrieved February 6, 2023.
  12. DFIR Report. (2021, November 29). CONTInuing the Bazar Ransomware Story. Retrieved September 29, 2022.
  13. Jansen, W . (2021, January 12). Abusing cloud services to fly under the radar. Retrieved September 12, 2024.
  14. Schroeder, W. (2017, October 30). A Guide to Attacking Domain Trusts. Retrieved February 14, 2019.
  15. Mike Stokkel et al. (2024, July 18). APT41 Has Arisen From the DUST. Retrieved September 16, 2024.
  16. Chen, J., et al. (2022). Delving Deep: An Analysis of Earth Lusca’s Operations. Retrieved July 1, 2022.
  17. Schroeder, W., Warner, J., Nelson, M. (n.d.). Github PowerShellEmpire. Retrieved April 28, 2016.
  18. Martin Zugec. (2021, July 27). Deep Dive Into a FIN8 Attack - A Forensic Investigation. Retrieved September 1, 2021.
  19. DFIR. (2021, March 29). Sodinokibi (aka REvil) Ransomware. Retrieved July 22, 2024.
  20. DFIR. (2022, April 25). Quantum Ransomware. Retrieved July 26, 2024.
  1. Stepanic, D. and Bousseaden, S. (2024, May 15). Spring Cleaning with LATRODECTUS: A Potential Replacement for ICEDID. Retrieved September 13, 2024.
  2. Batista, J. (2024, June 17). Latrodectus, are you coming back?. Retrieved September 13, 2024.
  3. DFIR Report. (2021, November 15). Exchange Exploit Leads to Domain Wide Ransomware. Retrieved January 5, 2023.
  4. Threat Hunter Team. (2023, April 20). Daggerfly: APT Actor Targets Telecoms Company in Africa. Retrieved July 25, 2024.
  5. ss64. (n.d.). NLTEST.exe - Network Location Test. Retrieved February 14, 2019.
  6. Bacurio Jr., F. and Salvio, J. (2018, April 9). Trickbot’s New Reconnaissance Plugin. Retrieved February 14, 2019.
  7. Daniel Stepanic & Salim Bitam. (2024, February 23). PIKABOT, I choose you!. Retrieved July 12, 2024.
  8. Nettitude. (2018, July 23). Python Server for PoshC2. Retrieved April 23, 2019.
  9. PowerShellMafia. (2012, May 26). PowerSploit - A PowerShell Post-Exploitation Framework. Retrieved February 6, 2018.
  10. PowerSploit. (n.d.). PowerSploit. Retrieved February 6, 2018.
  11. Kuzmenko, A. et al. (2021, September 2). QakBot technical analysis. Retrieved September 27, 2021.
  12. The DFIR Report. (2020, October 8). Ryuk’s Return. Retrieved October 9, 2020.
  13. The DFIR Report. (2020, November 5). Ryuk Speed Run, 2 Hours to Ransom. Retrieved November 6, 2020.
  14. Andrew Northern. (2022, November 22). SocGholish, a very real threat from a very fake update. Retrieved February 13, 2024.
  15. Red Canary. (2024, March). Red Canary 2024 Threat Detection Report: SocGholish. Retrieved March 22, 2024.
  16. Cash, D. et al. (2020, December 14). Dark Halo Leverages SolarWinds Compromise to Breach Organizations. Retrieved December 29, 2020.
  17. CrowdStrike. (2022, January 27). Early Bird Catches the Wormhole: Observations from the StellarParticle Campaign. Retrieved February 7, 2022.
  18. MSTIC, CDOC, 365 Defender Research Team. (2021, January 20). Deep dive into the Solorigate second-stage activation: From SUNBURST to TEARDROP and Raindrop . Retrieved January 22, 2021.
  19. Dahan, A. et al. (2019, December 11). DROPPING ANCHOR: FROM A TRICKBOT INFECTION TO THE DISCOVERY OF THE ANCHOR MALWARE. Retrieved September 10, 2020.
  20. Microsoft. (n.d.). Domain.GetAllTrustRelationships Method. Retrieved February 14, 2019.