ATT&CK coverage › Technique

Domain Trust Discovery T1482

Adversaries may attempt to gather information on domain trust relationships that may be used to identify lateral movement opportunities in Windows multi-domain/forest environments. Domain trusts provide a mechanism for a domain to allow access to resources based on the authentication procedures of another domain. Domain trusts allow the users of the trusted domain to access resources in the trusting domain. The information discovered may help the adversary conduct SID-History Injection, Pass the Ticket, and Kerberoasting. Domain trusts can be enumerated using the `DSEnumerateDomainTrusts()` Win32 API call, .NET methods, and LDAP. The Windows utility Nltest is known to be used by adversaries to enumerate domain trusts.

Events covered

10 catalog events are tagged with this technique by at least one rule.

ProviderEvent IDTitle
Sysmon1Process creation
Sysmon3Network connection
Sysmon11FileCreate
Sysmon22DNSEvent (DNS query)
Security-Auditing4662An operation was performed on an object.
Security-Auditing4688A new process has been created.
Defender-DeviceProcessEvents9001000Process activity (any)
LDAP-Client30
PowerShell4103Payload Context: ContextInfo User Data: UserData.
PowerShell4104Creating Scriptblock text (MessageNumber of MessageTotal).

Authoring guide

Patterns shared across the 26 rules above: which fields they filter on, what specific values they look for, and what they exclude. Field names are normalized across vendors so Sigma's Image, Elastic's process.name, and Splunk's process_name collapse into one row. Each rule contributes at most once per row.

Fields filtered most (20 distinct)

The fields most rules look at when detecting this technique. The How column shows the operators authors use (eq, wildcard, regex_match, match) and how often each appears. Sample values are concrete examples to start from, not an exhaustive list.

FieldRulesHowSample values
Image12ends_with 11, match 2, eq 1, is_null 1, starts_with 1\ADExplorer64.exe, \ADExp.exe, \ADExplorer64a.exe, \nltest.exe, \svchost.exe
CommandLine10match 10snapshot, users_noexpire, -subnets -f, domainlist, args
OriginalFileName8eq 8AdExp, nltestrk.exe, dsquery.exe, SharpView.exe, TruffleSnout.exe
Product3eq 2, match 1Sysinternals ADExplorer, SharpHound
Description3eq 2, match 1Active Directory Editor, SharpHound
ScriptBlockText3eq 2, match 1Invoke-SauronEye, Get-FoxDump, Invoke-KrbRelay, "*get-domaintrust*", "*get-foresttrust*"
TargetFilename2ends_with 2, starts_with 1.dat, _computers.json, _ous.json, C:\Program Files\WindowsApps\Microsoft.
file_name2in 2"*-azapplicationadmins.json", "*-azcloudappadmins.json", "*-azurecollection.zip", "*_groups.json", "*_users.json"
EventID2eq 24104
AccessMaskDescription1eq 1Read Property
FileName1eq 1AdFind.exe
SHA2561eq 1c92c158d7c37fea795114fa6491fe5f145ad2f8c08776b18ae79db811e8e36a3
InitiatingProcessFileName1eq 1parentProcesses
QueryName1starts_with 1_ldap.
Company1match 1evil corp, SpecterOps

Top indicator values (824 distinct)

Specific (field, operator, value) combinations the rules check for, ranked by how many rules under this technique use each one. The Corpus reach column counts how many rules across the entire catalog (any technique) check the same combination. High numbers point to widely-used indicators that are likely noisy on their own; combine them with another condition for useful signal. Blank means the combination is specific to rules under this technique.

FieldKindValueRules (here)Corpus reach
Imageends_with\ADExp.exe33
Imageends_with\ADExplorer64.exe36
Imageends_with\ADExplorer.exe36
Imageends_with\ADExplorer64a.exe34
ProducteqSysinternals ADExplorer22
OriginalFileNameeqAdExp22
CommandLinematchsnapshot23
DescriptioneqActive Directory Editor22
CommandLinematchInvoke-ACLScanner22
CommandLinematchFind-GPOLocation22
OriginalFileNameeqnltestrk.exe22
Imageends_with\nltest.exe29
CommandLinematchname="Domain Admins"22
CommandLinematchcomputer_pwdnotreqd22
CommandLinematchdomainncs22
CommandLinematchdcmodes22
CommandLinematch-subnets -f22
CommandLinematchcomputers_pwdnotreqd22
CommandLinematchadinfo22
CommandLinematchdompol22

Common exclusions (1 distinct)

Field/operator/value combinations that rules under this technique routinely exclude (top-level not() clauses). These are the false-positive paths the community has learned to filter out. A new rule that ignores the high-count entries here will likely fire on the same noisy paths.

FieldKindValueRules excluding
SubjectUserSideqS-1-5-181

Rules under this technique

Every rule in the catalog tagged with this technique, grouped by vendor. Click a rule title for its full predicates, exclusions, and indicators.

Sigma 17 rules

Elastic 1 rule

Splunk 5 rules

Kusto Query Language 3 rules