Finding Our Path
How We’re Trying to Improve Active Directory Security
Andy Robbins
@_wald0
Rohan Vazarkar
@CptJesus
Will Schroeder
@harmj0y
2
Background
Prior Work and Acknowledgements
Alice Zheng, John Dunagan, Daniel Simon:
http://alicezheng.org/papers/sosp2009-heatray-10pt.pdf�
Emmanuel Gras and Lucas Bouillot:
https://github.com/ANSSI-FR/AD-control-paths�
Sean Metcalf:
4
What is BloodHound?
5
What problem did BloodHound solve?
6
7
8
Allows enumeration of remote server sessions as an unprivileged user!
9
Allows enumeration of local group members on remote servers as an unprivileged user!
Story Time!
10
1
1
1
1
1
1
1
1
1
1
1
2
2
1
1
1
1
1
1
1
2
2
1
1
1
1
1
1
1
2
2
1
1
1
1
1
2
2
3
3
2
2
2
2
2
2
2
3
3
2
2
3
3
2
2
2
3
3
2
2
3
3
2
2
2
3
3
2
2
3
3
2
Story Time!
20
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
But wait...there’s more!
25
In the real world
26
Example Attack Path
Resource-based Constrained Delegation
Motivation: A modern (server 2012+) way to “safely” allow user impersonation in Active Directory
28
29
Auth to
Frontend Service
“Pretend”
to be
User
Frontend
Backend
User
Resource-based Constrained Delegation: Background
30
Resource-based Constrained Delegation: Background
31
Resource-based Constrained Delegation: In English
If we can modify the msDS-AllowedToActOnBehalfOfOtherIdentity property of a computer object in Active Directory, we can compromise the computer itself in modern domains!
32
(Videos 1-4)
The Adversary Resilience Methodology
Attackers think in graphs, defenders think in lists.
As long as this is true, attackers win.
John Lambert
Distinguished Engineer, Microsoft
35
“
Enumerate Attack Paths
Deploy Prioritized Fixes
Analyze Attack Paths
Adversary Resilience Methodology
Generate/Validate Remediation Hypotheses
Enumerate Attack Paths
Deploy Prioritized Fixes
Analyze Attack Paths
Adversary Resilience Methodology
Generate/Validate Remediation Hypotheses
Quantify Privileges, Understand Attack Paths
Objective: find critical low hanging fruit, generate descriptive statistics, measure overall security posture
38
Most Privileged Groups
39
Computers with Most Admins
40
(Video 5)
Privileged Kerberoastable Users
42
Privileged Kerberoastable Users With Weak Passwords
43
Percentage of Users with a Path to Domain Admin
44
Enumerate Attack Paths
Deploy Prioritized Fixes
Analyze Attack Paths
Adversary Resilience Methodology
Generate/Validate Remediation Hypotheses
Enumerate Attack Paths
Deploy Prioritized Fixes
Analyze Attack Paths
Adversary Resilience Methodology
Generate/Validate Remediation Hypotheses
Generate and Validate Remediation Hypotheses
Objective: eliminate or mitigate as many attack paths as possible using practical and measurably effective strategies
47
48
49
50
51
52
53
54
55
56
57
58
59
60
20,346,385
62
Shortest Attack Paths
Active Directory is not a maze.
63
Active Directory is not a maze.
64
Active Directory is a map.
65
66
67
68
69
70
71
72
73
74
75
Forget about analyzing all paths.
Focus on isolating sensitive principals.
Domain Admin Exposure
77
Domain Admin Exposure
78
79
80
81
Percentage of Users with a Path to Domain Admin
Before
After
82
Domain Admin Exposure
83
Domain Admin Exposure
84
Percentage of Users with a Path to Domain Admin
Before
After
88
Percentage of Users with a Path to Domain Admin
Before
After
89
Everything In This Talk is Free and Open Source
Tools: Methodology:�BloodHound: Resilience Methodology:� https://bit.ly/GetBloodHound https://bit.ly/2YI2g5B �BloodHound Analytics:� https://github.com/BloodHoundAD/BloodHound-Tools �PowerView:� https://bit.ly/1pzQCnv �PowerMad: � https://github.com/Kevin-Robertson/Powermad/blob/master/Powermad.ps1 �Invoke-DCSync:� https://gist.github.com/monoxgas/9d238accd969550136db
90
Andy Robbins
@_wald0
Rohan Vazarkar
@CptJesus
Will Schroeder
@harmj0y
@SpecterOps specterops.io
Thank you!
91
CREDITS
Special thanks to all the people who made and released these awesome resources for free:
92