SlideShare a Scribd company logo
1 of 70
Download to read offline
View
Offensive
Active
Directory with
PowerShell
@harmj0y
Co-founder of
Empire | Veil-Framework | PowerTools
PowerSploit developer
Researcher at Veris Group’s
Adaptive Threat Division
What I am Not Covering
▣ Any kind of memory corruption attacks
○ We haven’t thrown an exploit in years
▣ Too Much Active Directory background
○ Too many slides, too little time :(
▣ Mimikatz and Kerberos attacks
○ Covered better and in more depth by others
▣ PowerShell Weaponization
○ We like Empire and Cobalt Strike ;)
What I am Covering
▣ Offensive Active Directory 101
○ Why care? And what’s Powerview?
▣ Identifying/Hunting Your Prey
▣ Local Administrator Enumeration
▣ GPO Enumeration and Abuse
▣ AD ACLs (and a few persistence methods)
▣ Domain Trusts (enumeration and abuse)
▣ Lots of PowerView tips and tricks
○ and a lot of ground to cover!
1.
Offensive AD 101 and
‘Why PowerShell’
Active Directory 101
▣ At its core, Active Directory is a way to organize
user and computer objects
○ Used to authenticate and authorize users and computers
on a network and provide access to specific resources
○ Also provides security policies, centralized management,
and other rich features
▣ Red teams and real bad guys have been abusing AD
for years, but not much offensive AD information
has existed publicly (until fairly recently)
Why Not
The Active Directory Cmdlets?
▣ The RSAT-AD-PowerShell module is:
○ only compatible with PowerShell 3.0+
○ only installed by default on servers with the Active
Directory Domain Services role
▣ We want something:
○ PowerShell 2.0 compliant (yay Win7)
○ fully self-contained with no dependencies
○ usable without any installation
PowerView
▣ A pure PowerShell domain/network situational
awareness tool
○ everything is kept version 2.0 compliant
○ now part of PowerSploit™! (not really trademarked)
▣ Built to automate large components of the
tradecraft on our red team engagements
▣ No installation and can reside purely in memory
○ and PowerShell 2.0 is included by default in Win7
Sidenote: LDAP Optimizations
▣ A lot of the PowerView domain functionality
reduces down to various chained and optimized
LDAP queries
▣ Much is transparent to the user:
○ e.g. LDAP queries for foreign domains are ‘reflected’
through the current domain PDC to get around network
segmentation
▣ Much of this of isn’t revolutionary, but chaining
functionality lets you pull off some awesome stuff
Also: The Pipeline
▣ The PowerShell pipeline allows you to pass full
objects between functions (instead of just strings)
▣ This lets you perform complex chaining and
filtering, allowing you accomplish a lot very
quickly
▣ Users who’ve logged on within the last week:
○ Get-NetUser | ? {$_.lastlogon -gt [DateTime]::Today.
AddDays(-7)} | Sort-Object name
2.
Identifying and Hunting
Your Prey
Who Are my Admins and Where Are They At?
▣ Before you start targeted spread, you need to know
who you’re going after
▣ PowerView helps with enumeration of:
○ Users: Get-NetUser <*USER*>
○ Groups: Get-NetGroup <*admin*>
○ Group members: Get-NetGroupMember <GroupName>
▣ All of the above also accept manual LDAP filters
with -Filter “(field=*value*)”
Who Are My Admins?
▣ Get all the groups a user is effectively a member of
('recursing up'):
○ Get-NetGroup -UserName <USER>
▣ Get all the effective members of a group ('recursing
down'):
○ Get-NetGroupMember -GoupName <GROUP> -Recurse
▣ Search the forest global catalog:
○ Get-NetUser -UserName <USER> -ADSpath “GC:
//domain.com”
PowerTips
▣ Machine accounts can sometimes end up in
privileged groups https://adsecurity.org/?p=2753
▣ To find any computer accounts in any privileged
groups:
Privileged Machine Accounts
Get-NetGroup -AdminCount | `
Get-NetGroupMember -Recurse | `
?{$_.MemberName -like '*$'}
▣ Some organizations separate out administrative
functionality into multiple accounts for the same
person
○ e.g. “john” and“john-admin”
▣ By performing some correlation on AD data
objects, you can often pull out groupings of
accounts likely owned by the same person
○ We often hunt for/compromise an admin’s unprivileged
account
Separated Roles
▣ Finding all user accounts with a specific email
address:
▣ Get-NetUser -Filter "(mail=john@domain.com)"
Separated Roles - Simple Example
▣ Get-NetGroupMember -GroupName "Domain
Admins" -FullData | %{ $a=$_.displayname.split
(" ")[0..1] -join " "; Get-NetUser -Filter
"(displayname=*$a*)" } | Select-Object -
Property displayname,samaccountname
Separated Roles - Complex Example
Separated Roles - Complex Example
1. Query for all members of “Domain Admins” in the
current domain, returning the full data objects
2. Extract out the “Firstname Lastname” from
DisplayName for each user object
3. Query for additional users with the same
“Firstname Lastname”
Separated Roles - Complex Example
In plain English:
▣ Once you’ve identified who you want to go after,
you need to know where they’re located
▣ We break this down into:
○ pre-elevated access, when you have regular domain
privileges. This is usually the lateral spread phase.
○ post-elevated access, when you have elevated (e.g.
Domain Admin) privileges. This is usually the
‘demonstrate impact’ phase.
I Hunt Sysadmins
▣ Flexible PowerView function that:
○ queries AD for hosts or takes a target list
○ queries AD for users of a target group, or takes a
list/single user
○ uses Win32 API calls to enumerate sessions and logged
in users, matching against the target user list
○ Doesn’t need administrative privileges!
▣ We like using the -ShowAll flag and grepping
results for future analysis
Invoke-UserHunter
Invoke-UserHunter
▣ Uses an old red teaming trick:
○ Queries AD for all users and extracts all
homeDirectory/scriptPath/profilePath fields (as well
as DFS shares and DCs) to identify highly trafficked
servers
○ Runs Get-NetSession against each file server to
enumerate remote sessions, match against target users
▣ Reasonable coverage with a lot less traffic
○ also doesn’t need admin privileges
○ also accepts the -ShowAll flag
Invoke-UserHunter -Stealth
Invoke-UserHunter -Stealth
3.
Local Admin Enumeration
Huh?
The WinNT Service Provider
▣ Leftover from Windows NT domain deployments
○ ([ADSI]"WinNT://SERVER/Administrators").psbase.
Invoke('Members') | %{$_.GetType().InvokeMember
("Name", 'GetProperty', $null, $_, $null)}
▣ With an unprivileged domain account, you can use
PowerShell and WinNT to enumerate all members
(local and domain) of a local group on a remote
machine
Get-NetLocalGroup
▣ Get-NetLocalGroup <SERVER>
○ -ListGroups will list the groups
○ a group can be specified with -GroupName <GROUP>
▣ The -Recurse flag will resolve the members of any
result that’s a group, giving you a list of effective
domain users that can access a given server
○ Invoke-UserHunter -TargetServer <SERVER> will use
this to hunt for users who can admin a particular server
Get-NetLocalGroup
“Derivative Local Admin”
▣ Large enterprise networks often utilize heavily
delegated group roles
▣ From the attacker perspective, anyone who could
be used to chain to that local administrative access
can be considered a target
▣ More info from @sixdub: http://www.sixdub.net/?
p=591
“Derivative Local Admin”
▣ Tim (a domain admin) is on a machine w/
WorkstationAdminsA in the local admins
▣ WorkstationAdminsA contains Bob
▣ Bob’s machine has WorkstationAdminsB
▣ WorkstationAdminsB contains Eve
▣ If we exploit Eve, we can get Bob and any
workstation he has access to, chaining to
compromise Tim
▣ Eve’s admin privileges on A’s machine derive
through Bob
“Derivative Local Admin”
“Derivative Local Admin”
▣ Can be require several hops
▣ The process:
○ Invoke-UserHunter –Stealth –ShowAll to get required
user location data
○ Get-NetLocalGroup –Recurse to identify the local
admins on the target
○ Use location data to find those users
○ Get-NetLocalGroup -Recurse on locations discovered
○ Use location data to find those users
○ Continue until you find your path!
▣ Recently released by fellow ATD member Andy
Robbins (@_wald0)
▣ Uses input from PowerView along with graph
theory and Dijkstra’s algorithm to automate the
chaining of local accesses
▣ More information from @_wald0: https://wald0.
com/?p=14
“Automated Derivative Local Admin”
4.
GPO Abuse
Why Not Just Ask the Domain Controller?
Group Policy Preferences
▣ Many organizations historically used Group Policy
Preference files to set the local administrator
password for machines
○ This password is encrypted but reversible
○ The patch for this prevents now reversible passwords
from being set but doesn’t remove the old files
▣ PowerSploit’s Get-GPPPassword will find and
decrypt any of these passwords found on a DC’s
SYSVOL
Group Policy Preferences
http://obscuresecurity.blogspot.com/2013/07/get-gpppassword.html
PowerView and GPP
▣ If you’re able to recover a cpassword from a Group
Policy Preferences file you can use PowerView to
quickly locate all machines that password is set on!
▣ Get-NetOU -GUID <GPP_GUID> | %{ Get-
NetComputer -ADSPath $_ }
More GPO Enumeration
▣ Group Policy Objects (though a GptTmpl.inf) can
determine what users have local admin rights by
setting ‘Restricted Groups’
○ Group Policy Preferences can do something similar with
“groups.xml”
▣ If we have a user account, why not just ask the
GPO configuration where this user has local
administrative rights?
More GPO Enumeration
▣ Find-GPOLocation will:
1. resolve a user's sid
2. build a list of group SIDs the user is a part of
3. use Get-NetGPOGroup to pull GPOs that set
'Restricted Groups' or GPPs that set groups.xml
4. match the target SID list to the queried GPO SID list
to enumerate all GPOs the user is effectively applied
5. enumerate all OUs and sites and applicable GPO GUIs
are applied to through gplink enumeration
6. query for all computers under the given OUs or sites
Find-GPOLocation
5.
Active Directory ACLs
AD Objects Have Permissions Too!
▣ AD objects (like files) have permissions/access
control lists
○ These can sometimes be misconfigured, and can also be
backdoored for persistence
▣ Get-ObjectACL -ResolveGUIDs -
SamAccountName <NAME>
▣ Set-ObjectACL lets you modify ;)
○ more on this in a bit
AD ACLs
Get-ObjectACL
▣ Group policy objects are of particular interest
▣ Any user with modification rights to a GPO can get
code execution for machine the GPO is applied to
▣ Get-NetGPO | %{Get-ObjectAcl -ResolveGUIDs -
Name $_.Name}
GPO ACLs
GPO ACLs
Auditing AD ACLs
▣ Pulling all AD ACLs will give you A MOUNTAIN of
data
▣ Invoke-ACLScanner will scan specifable AD
objects (default to all domain objects) for ACLs
with modify rights and a domain RID of >1000
▣ This helps narrow down the search scope to find
possibly misconfigured/backdoored AD object
permissions
AdminSDHolder
▣ AdminSDHolder is a special Active Directory object
located at “CN=AdminSDHolder,CN=System,
DC=domain,DC=com”
▣ If you modify the permissions of AdminSDHolder,
that permission template will be pushed out to all
protected admin accounts automatically by SDProp
▣ More info: https://adsecurity.org/?p=1906
PowerView and AdminSDHolder
▣ Add-ObjectAcl -TargetADSprefix
'CN=AdminSDHolder,CN=System' … will let you
modify AdminADHolder:
Targeted Plaintext Downgrades
▣ Another legacy/backwards compatibility feature:
Targeted Plaintext Downgrades
▣ We can set ENCRYPTED_TEXT_PWD_ALLOWED
with PowerView:
○ Set-ADObject -SamAccountName <USER> -
PropertyName useraccountcontrol -
PropertyXorValue 128
▣ Invoke-DowngradeAccount <USER> will
downgrade the encryption and forces the user to
change their password on next login
Targeted Plaintext Downgrades
▣ After Mimimatz’ DCSync
Speaking of DCSync...
▣ There’s a small set of permissions needed to
execute DCSync on a domain:
▣ PowerView lets you easily enumerate all users with
replication/DCSync rights for a particular domain:
PowerView and DCSync
Get-ObjectACL -DistinguishedName "dc=testlab,
dc=local" -ResolveGUIDs | ? {
($_.ObjectType -match 'replication-get') -or `
($_.ActiveDirectoryRights -match 'GenericAll')
}
▣ You can easily modify the permissions of of the
domain partition itself with PowerView’s Add-
ObjectACL and “-Rights DCSync”
A DCSync Backdoor
Add-ObjectACL -TargetDistinguishedName
"dc=testlab,dc=local" -
PrincipalSamAccountName jason -Rights
DCSync
PowerView and DCSync
6.
Domain Trusts
Or: Why You Shouldn’t Trust AD
Domain Trusts 101
▣ Trusts allow separate domains to form inter-
connected relationships
○ Often utilized during acquisitions (i.e. forest trusts or
cross-link trusts)
▣ A trust just links up the authentication systems
of two domains and allows authentication traffic
to flow between them
▣ A trust allows for the possibility of privileged
access between domains, but doesn’t guarantee it*
Why Does This Matter?
▣ Red teams often compromise accounts/machines
in a domain trusted by their actual target
▣ This allows operators to exploit these existing
trust relationships to achieve their end goal
▣ I LOVE TRUSTS: http://www.harmj0y.
net/blog/tag/domain-trusts/
PowerView Trust Enumeration
▣ Domain/forest trust relationships can be
enumerated through several PowerView functions:
○ Get-NetForest: info about the current forest
○ Get-NetForestTrust: grab all forest trusts
○ Get-NetForestDomain: grab all domains in a forest
○ Get-NetDomainTrust: nltest à la PowerShell
▣ If a trust exists, most functions in PowerView can
accept a “-Domain <name>” flag to operate
across a trust
Mapping the Mesh
▣ Large organizations with tons of
subgroups/subsidiaries/acquisitions can end up
with a huge mesh of domain trusts
○ mapping this mesh used to be manual and time-
consuming process
▣ Invoke-MapDomainTrust can recursively map all
reachable domain and forest trusts
○ The -LDAP flag gets around network restrictions at the
cost of accuracy
Invoke-MapDomainTrust
Visualizing the Mesh
▣ This raw data is great, but it’s still raw
▣ @sixdub’s DomainTrustExplorer tool can
perform nodal analysis of trust data
○ https://github.com/sixdub/DomainTrustExplorer
○ It can also generate GraphML output of the entire mesh,
which yED can use to build visualizations
▣ More information: http://www.sixdub.net/?p=285
Pretty Pictures!
Malicious SIDHistories
http://windowsitpro.com/windows-server/exploiting-sidhistory-ad-attribute
The Mimikatz Trustpocalypse
▣ Thanks to @gentilkiwi and @pyrotek3, Mimikatz
Golden Tickets now accept SIDHistories though
the new /sids:<X> argument
▣ If you compromise a DC in a child domain, you can
create a golden ticket with the “Enterprise
Admins” in the SID history
▣ This can let you compromise the forest root and all
forest domains!
○ won’t work for external domain trusts b/c of sid filtering
The Mimikatz Trustpocalypse
If you compromise any
domain administrator of
any domain in a forest, you
can compromise the entire
forest!
Advice From @gentilkiwi
Sidenote: CheatSheets!
▣ We’ve released cheetsheets for PowerView as well
as PowerUp and Empire at https://github.
com/harmj0y/cheatsheets/
Credits
Thanks to Sean Metcalf (@pyrotek3) for guidance, ideas, and awesome
information on offensive Active Directory approaches. Check out his
blog at http://adsecurity.org !
Thanks to Benjamin Delpy (@gentilkiwi) and Vincent LE TOUX for
Mimikatz and its DCSync capability!
Thanks to Ben Campbell (@meatballs__) for PowerView modifications
and LDAP optimizations!
And a big thanks to Justin Warner (@sixdub) and the rest of the ATD
team for tradecraft development and helping making PowerView not
suck!
Any questions?
@harmj0y
http://blog.harmj0y.net/
will [at] harmj0y.net
harmj0y on Freenode in #psempire

More Related Content

What's hot

FreeIPA - Attacking the Active Directory of Linux
FreeIPA - Attacking the Active Directory of LinuxFreeIPA - Attacking the Active Directory of Linux
FreeIPA - Attacking the Active Directory of LinuxJulian Catrambone
 
Here Be Dragons: The Unexplored Land of Active Directory ACLs
Here Be Dragons: The Unexplored Land of Active Directory ACLsHere Be Dragons: The Unexplored Land of Active Directory ACLs
Here Be Dragons: The Unexplored Land of Active Directory ACLsAndy Robbins
 
Understanding Active Directory Enumeration
Understanding Active Directory EnumerationUnderstanding Active Directory Enumeration
Understanding Active Directory EnumerationDaniel López Jiménez
 
DerbyCon 2019 - Kerberoasting Revisited
DerbyCon 2019 - Kerberoasting RevisitedDerbyCon 2019 - Kerberoasting Revisited
DerbyCon 2019 - Kerberoasting RevisitedWill Schroeder
 
PowerShell for Cyber Warriors - Bsides Knoxville 2016
PowerShell for Cyber Warriors - Bsides Knoxville 2016PowerShell for Cyber Warriors - Bsides Knoxville 2016
PowerShell for Cyber Warriors - Bsides Knoxville 2016Russel Van Tuyl
 
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UIData Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UIAltinity Ltd
 
Introduction to Ansible
Introduction to AnsibleIntroduction to Ansible
Introduction to AnsibleCoreStack
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentationSuresh Kumar
 
remote-method-guesser - BHUSA2021 Arsenal
remote-method-guesser - BHUSA2021 Arsenal remote-method-guesser - BHUSA2021 Arsenal
remote-method-guesser - BHUSA2021 Arsenal Tobias Neitzel
 
(Ab)Using GPOs for Active Directory Pwnage
(Ab)Using GPOs for Active Directory Pwnage(Ab)Using GPOs for Active Directory Pwnage
(Ab)Using GPOs for Active Directory PwnagePetros Koutroumpis
 
BloodHound Unleashed.pdf
BloodHound Unleashed.pdfBloodHound Unleashed.pdf
BloodHound Unleashed.pdfn00py1
 
Building Better Backdoors with WMI - DerbyCon 2017
Building Better Backdoors with WMI - DerbyCon 2017Building Better Backdoors with WMI - DerbyCon 2017
Building Better Backdoors with WMI - DerbyCon 2017Alexander Polce Leary
 
HTTP Analytics for 6M requests per second using ClickHouse, by Alexander Boc...
HTTP Analytics for 6M requests per second using ClickHouse, by  Alexander Boc...HTTP Analytics for 6M requests per second using ClickHouse, by  Alexander Boc...
HTTP Analytics for 6M requests per second using ClickHouse, by Alexander Boc...Altinity Ltd
 
BlueHat v17 || Detecting Compromise on Windows Endpoints with Osquery
BlueHat v17 || Detecting Compromise on Windows Endpoints with Osquery BlueHat v17 || Detecting Compromise on Windows Endpoints with Osquery
BlueHat v17 || Detecting Compromise on Windows Endpoints with Osquery BlueHat Security Conference
 
Red Team Methodology - A Naked Look
Red Team Methodology - A Naked LookRed Team Methodology - A Naked Look
Red Team Methodology - A Naked LookJason Lang
 
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdfDeep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdfAltinity Ltd
 
Troopers 19 - I am AD FS and So Can You
Troopers 19 - I am AD FS and So Can YouTroopers 19 - I am AD FS and So Can You
Troopers 19 - I am AD FS and So Can YouDouglas Bienstock
 

What's hot (20)

FreeIPA - Attacking the Active Directory of Linux
FreeIPA - Attacking the Active Directory of LinuxFreeIPA - Attacking the Active Directory of Linux
FreeIPA - Attacking the Active Directory of Linux
 
Here Be Dragons: The Unexplored Land of Active Directory ACLs
Here Be Dragons: The Unexplored Land of Active Directory ACLsHere Be Dragons: The Unexplored Land of Active Directory ACLs
Here Be Dragons: The Unexplored Land of Active Directory ACLs
 
Understanding Active Directory Enumeration
Understanding Active Directory EnumerationUnderstanding Active Directory Enumeration
Understanding Active Directory Enumeration
 
DerbyCon 2019 - Kerberoasting Revisited
DerbyCon 2019 - Kerberoasting RevisitedDerbyCon 2019 - Kerberoasting Revisited
DerbyCon 2019 - Kerberoasting Revisited
 
PowerShell for Cyber Warriors - Bsides Knoxville 2016
PowerShell for Cyber Warriors - Bsides Knoxville 2016PowerShell for Cyber Warriors - Bsides Knoxville 2016
PowerShell for Cyber Warriors - Bsides Knoxville 2016
 
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UIData Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
Data Warehouses in Kubernetes Visualized: the ClickHouse Kubernetes Operator UI
 
Introduction to Ansible
Introduction to AnsibleIntroduction to Ansible
Introduction to Ansible
 
Ansible presentation
Ansible presentationAnsible presentation
Ansible presentation
 
remote-method-guesser - BHUSA2021 Arsenal
remote-method-guesser - BHUSA2021 Arsenal remote-method-guesser - BHUSA2021 Arsenal
remote-method-guesser - BHUSA2021 Arsenal
 
(Ab)Using GPOs for Active Directory Pwnage
(Ab)Using GPOs for Active Directory Pwnage(Ab)Using GPOs for Active Directory Pwnage
(Ab)Using GPOs for Active Directory Pwnage
 
Linux networking
Linux networkingLinux networking
Linux networking
 
BloodHound Unleashed.pdf
BloodHound Unleashed.pdfBloodHound Unleashed.pdf
BloodHound Unleashed.pdf
 
Building Better Backdoors with WMI - DerbyCon 2017
Building Better Backdoors with WMI - DerbyCon 2017Building Better Backdoors with WMI - DerbyCon 2017
Building Better Backdoors with WMI - DerbyCon 2017
 
Backup and-recovery2
Backup and-recovery2Backup and-recovery2
Backup and-recovery2
 
HTTP Analytics for 6M requests per second using ClickHouse, by Alexander Boc...
HTTP Analytics for 6M requests per second using ClickHouse, by  Alexander Boc...HTTP Analytics for 6M requests per second using ClickHouse, by  Alexander Boc...
HTTP Analytics for 6M requests per second using ClickHouse, by Alexander Boc...
 
Vagrant
Vagrant Vagrant
Vagrant
 
BlueHat v17 || Detecting Compromise on Windows Endpoints with Osquery
BlueHat v17 || Detecting Compromise on Windows Endpoints with Osquery BlueHat v17 || Detecting Compromise on Windows Endpoints with Osquery
BlueHat v17 || Detecting Compromise on Windows Endpoints with Osquery
 
Red Team Methodology - A Naked Look
Red Team Methodology - A Naked LookRed Team Methodology - A Naked Look
Red Team Methodology - A Naked Look
 
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdfDeep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
Deep Dive on ClickHouse Sharding and Replication-2202-09-22.pdf
 
Troopers 19 - I am AD FS and So Can You
Troopers 19 - I am AD FS and So Can YouTroopers 19 - I am AD FS and So Can You
Troopers 19 - I am AD FS and So Can You
 

Viewers also liked

BIND’s New Security Feature: DNSRPZ - the &quot;DNS Firewall&quot;
BIND’s New Security Feature: DNSRPZ - the &quot;DNS Firewall&quot;BIND’s New Security Feature: DNSRPZ - the &quot;DNS Firewall&quot;
BIND’s New Security Feature: DNSRPZ - the &quot;DNS Firewall&quot;Barry Greene
 
Approaches to application request throttling
Approaches to application request throttlingApproaches to application request throttling
Approaches to application request throttlingMaarten Balliauw
 
Hands-on getdns Tutorial
Hands-on getdns TutorialHands-on getdns Tutorial
Hands-on getdns TutorialShumon Huque
 
IoT Security in Action - Boston Sept 2015
IoT Security in Action - Boston Sept 2015IoT Security in Action - Boston Sept 2015
IoT Security in Action - Boston Sept 2015Eurotech
 
Query-name Minimization and Authoritative Server Behavior
Query-name Minimization and Authoritative Server BehaviorQuery-name Minimization and Authoritative Server Behavior
Query-name Minimization and Authoritative Server BehaviorShumon Huque
 
DNS and Troubleshooting DNS issues in Linux
DNS and Troubleshooting DNS issues in LinuxDNS and Troubleshooting DNS issues in Linux
DNS and Troubleshooting DNS issues in LinuxKonkona Basu
 
Creating Domain Specific Languages in Python
Creating Domain Specific Languages in PythonCreating Domain Specific Languages in Python
Creating Domain Specific Languages in PythonSiddhi
 
Are you ready for the next attack? reviewing the sp security checklist (apnic...
Are you ready for the next attack? reviewing the sp security checklist (apnic...Are you ready for the next attack? reviewing the sp security checklist (apnic...
Are you ready for the next attack? reviewing the sp security checklist (apnic...Barry Greene
 
Indusrty Strategy For Action
Indusrty Strategy For ActionIndusrty Strategy For Action
Indusrty Strategy For ActionBarry Greene
 
DNS for Developers - NDC Oslo 2016
DNS for Developers - NDC Oslo 2016DNS for Developers - NDC Oslo 2016
DNS for Developers - NDC Oslo 2016Maarten Balliauw
 
Remediating Violated Customers
Remediating Violated CustomersRemediating Violated Customers
Remediating Violated CustomersBarry Greene
 
OpenDNS Enterprise Web Content Filtering
OpenDNS Enterprise Web Content FilteringOpenDNS Enterprise Web Content Filtering
OpenDNS Enterprise Web Content FilteringOpenDNS
 
150928 - Verisign Public DNS
150928 - Verisign Public DNS150928 - Verisign Public DNS
150928 - Verisign Public DNSMichael Kaczmarek
 
A Designated ENUM DNS Zone Provisioning Architecture
A Designated ENUM DNS Zone Provisioning ArchitectureA Designated ENUM DNS Zone Provisioning Architecture
A Designated ENUM DNS Zone Provisioning Architectureenumplatform
 

Viewers also liked (20)

BIND’s New Security Feature: DNSRPZ - the &quot;DNS Firewall&quot;
BIND’s New Security Feature: DNSRPZ - the &quot;DNS Firewall&quot;BIND’s New Security Feature: DNSRPZ - the &quot;DNS Firewall&quot;
BIND’s New Security Feature: DNSRPZ - the &quot;DNS Firewall&quot;
 
Approaches to application request throttling
Approaches to application request throttlingApproaches to application request throttling
Approaches to application request throttling
 
Hands-on getdns Tutorial
Hands-on getdns TutorialHands-on getdns Tutorial
Hands-on getdns Tutorial
 
IoT Security in Action - Boston Sept 2015
IoT Security in Action - Boston Sept 2015IoT Security in Action - Boston Sept 2015
IoT Security in Action - Boston Sept 2015
 
Query-name Minimization and Authoritative Server Behavior
Query-name Minimization and Authoritative Server BehaviorQuery-name Minimization and Authoritative Server Behavior
Query-name Minimization and Authoritative Server Behavior
 
DNS and Troubleshooting DNS issues in Linux
DNS and Troubleshooting DNS issues in LinuxDNS and Troubleshooting DNS issues in Linux
DNS and Troubleshooting DNS issues in Linux
 
TTÜ Geeky Weekly
TTÜ Geeky WeeklyTTÜ Geeky Weekly
TTÜ Geeky Weekly
 
PostgreSQL DBA Neler Yapar?
PostgreSQL DBA Neler Yapar?PostgreSQL DBA Neler Yapar?
PostgreSQL DBA Neler Yapar?
 
PostgreSQL Hem Güçlü Hem Güzel!
PostgreSQL Hem Güçlü Hem Güzel!PostgreSQL Hem Güçlü Hem Güzel!
PostgreSQL Hem Güçlü Hem Güzel!
 
Creating Domain Specific Languages in Python
Creating Domain Specific Languages in PythonCreating Domain Specific Languages in Python
Creating Domain Specific Languages in Python
 
Are you ready for the next attack? reviewing the sp security checklist (apnic...
Are you ready for the next attack? reviewing the sp security checklist (apnic...Are you ready for the next attack? reviewing the sp security checklist (apnic...
Are you ready for the next attack? reviewing the sp security checklist (apnic...
 
Indusrty Strategy For Action
Indusrty Strategy For ActionIndusrty Strategy For Action
Indusrty Strategy For Action
 
Managing Postgres with Ansible
Managing Postgres with AnsibleManaging Postgres with Ansible
Managing Postgres with Ansible
 
DNS for Developers - NDC Oslo 2016
DNS for Developers - NDC Oslo 2016DNS for Developers - NDC Oslo 2016
DNS for Developers - NDC Oslo 2016
 
Remediating Violated Customers
Remediating Violated CustomersRemediating Violated Customers
Remediating Violated Customers
 
Network security
Network securityNetwork security
Network security
 
OpenDNS Enterprise Web Content Filtering
OpenDNS Enterprise Web Content FilteringOpenDNS Enterprise Web Content Filtering
OpenDNS Enterprise Web Content Filtering
 
150928 - Verisign Public DNS
150928 - Verisign Public DNS150928 - Verisign Public DNS
150928 - Verisign Public DNS
 
IDNOG - 2014
IDNOG - 2014IDNOG - 2014
IDNOG - 2014
 
A Designated ENUM DNS Zone Provisioning Architecture
A Designated ENUM DNS Zone Provisioning ArchitectureA Designated ENUM DNS Zone Provisioning Architecture
A Designated ENUM DNS Zone Provisioning Architecture
 

Similar to I Have the Power(View)

Advanced Ops Manager Topics
Advanced Ops Manager TopicsAdvanced Ops Manager Topics
Advanced Ops Manager TopicsMongoDB
 
Veil-PowerView - NovaHackers
Veil-PowerView - NovaHackersVeil-PowerView - NovaHackers
Veil-PowerView - NovaHackersVeilFramework
 
Go Hack Yourself - 10 Pen Test Tactics for Blue Teamers
Go Hack Yourself - 10 Pen Test Tactics for Blue TeamersGo Hack Yourself - 10 Pen Test Tactics for Blue Teamers
Go Hack Yourself - 10 Pen Test Tactics for Blue Teamersjasonjfrank
 
Trusts You Might Have Missed
Trusts You Might Have MissedTrusts You Might Have Missed
Trusts You Might Have MissedWill Schroeder
 
PowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue KidPowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue KidMatthew Johnson
 
Mojo – Simple REST Server
Mojo – Simple REST ServerMojo – Simple REST Server
Mojo – Simple REST Serverhendrikvb
 
Derbycon - Passing the Torch
Derbycon - Passing the TorchDerbycon - Passing the Torch
Derbycon - Passing the TorchWill Schroeder
 
WWHF 2018 - Using PowerUpSQL and goddi for Active Directory Information Gathe...
WWHF 2018 - Using PowerUpSQL and goddi for Active Directory Information Gathe...WWHF 2018 - Using PowerUpSQL and goddi for Active Directory Information Gathe...
WWHF 2018 - Using PowerUpSQL and goddi for Active Directory Information Gathe...ThomasElling1
 
Bridging the Gap: Lessons in Adversarial Tradecraft
Bridging the Gap: Lessons in Adversarial TradecraftBridging the Gap: Lessons in Adversarial Tradecraft
Bridging the Gap: Lessons in Adversarial Tradecraftenigma0x3
 
Php login system with admin features evolt
Php login system with admin features   evoltPhp login system with admin features   evolt
Php login system with admin features evoltGIMT
 
MySQL server security
MySQL server securityMySQL server security
MySQL server securityDamien Seguy
 
2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell
2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell
2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShellScott Sutherland
 
Windows power shell and active directory
Windows power shell and active directoryWindows power shell and active directory
Windows power shell and active directoryDan Morrill
 
Built-in query caching for all PHP MySQL extensions/APIs
Built-in query caching for all PHP MySQL extensions/APIsBuilt-in query caching for all PHP MySQL extensions/APIs
Built-in query caching for all PHP MySQL extensions/APIsUlf Wendel
 
Multi Tenancy With Python and Django
Multi Tenancy With Python and DjangoMulti Tenancy With Python and Django
Multi Tenancy With Python and Djangoscottcrespo
 
Asian Spirit 3 Day Dba On Ubl
Asian Spirit 3 Day Dba On UblAsian Spirit 3 Day Dba On Ubl
Asian Spirit 3 Day Dba On Ublnewrforce
 
General Principles of Web Security
General Principles of Web SecurityGeneral Principles of Web Security
General Principles of Web Securityjemond
 

Similar to I Have the Power(View) (20)

Catalyst MVC
Catalyst MVCCatalyst MVC
Catalyst MVC
 
Advanced Ops Manager Topics
Advanced Ops Manager TopicsAdvanced Ops Manager Topics
Advanced Ops Manager Topics
 
Ace Up the Sleeve
Ace Up the SleeveAce Up the Sleeve
Ace Up the Sleeve
 
Veil-PowerView - NovaHackers
Veil-PowerView - NovaHackersVeil-PowerView - NovaHackers
Veil-PowerView - NovaHackers
 
Go Hack Yourself - 10 Pen Test Tactics for Blue Teamers
Go Hack Yourself - 10 Pen Test Tactics for Blue TeamersGo Hack Yourself - 10 Pen Test Tactics for Blue Teamers
Go Hack Yourself - 10 Pen Test Tactics for Blue Teamers
 
Trusts You Might Have Missed
Trusts You Might Have MissedTrusts You Might Have Missed
Trusts You Might Have Missed
 
PowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue KidPowerShell - Be A Cool Blue Kid
PowerShell - Be A Cool Blue Kid
 
Mojo – Simple REST Server
Mojo – Simple REST ServerMojo – Simple REST Server
Mojo – Simple REST Server
 
Derbycon - Passing the Torch
Derbycon - Passing the TorchDerbycon - Passing the Torch
Derbycon - Passing the Torch
 
WWHF 2018 - Using PowerUpSQL and goddi for Active Directory Information Gathe...
WWHF 2018 - Using PowerUpSQL and goddi for Active Directory Information Gathe...WWHF 2018 - Using PowerUpSQL and goddi for Active Directory Information Gathe...
WWHF 2018 - Using PowerUpSQL and goddi for Active Directory Information Gathe...
 
Bridging the Gap
Bridging the GapBridging the Gap
Bridging the Gap
 
Bridging the Gap: Lessons in Adversarial Tradecraft
Bridging the Gap: Lessons in Adversarial TradecraftBridging the Gap: Lessons in Adversarial Tradecraft
Bridging the Gap: Lessons in Adversarial Tradecraft
 
Php login system with admin features evolt
Php login system with admin features   evoltPhp login system with admin features   evolt
Php login system with admin features evolt
 
MySQL server security
MySQL server securityMySQL server security
MySQL server security
 
2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell
2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell
2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell
 
Windows power shell and active directory
Windows power shell and active directoryWindows power shell and active directory
Windows power shell and active directory
 
Built-in query caching for all PHP MySQL extensions/APIs
Built-in query caching for all PHP MySQL extensions/APIsBuilt-in query caching for all PHP MySQL extensions/APIs
Built-in query caching for all PHP MySQL extensions/APIs
 
Multi Tenancy With Python and Django
Multi Tenancy With Python and DjangoMulti Tenancy With Python and Django
Multi Tenancy With Python and Django
 
Asian Spirit 3 Day Dba On Ubl
Asian Spirit 3 Day Dba On UblAsian Spirit 3 Day Dba On Ubl
Asian Spirit 3 Day Dba On Ubl
 
General Principles of Web Security
General Principles of Web SecurityGeneral Principles of Web Security
General Principles of Web Security
 

More from Will Schroeder

Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Will Schroeder
 
Nemesis - SAINTCON.pdf
Nemesis - SAINTCON.pdfNemesis - SAINTCON.pdf
Nemesis - SAINTCON.pdfWill Schroeder
 
SpecterOps Webinar Week - Kerberoasting Revisisted
SpecterOps Webinar Week - Kerberoasting RevisistedSpecterOps Webinar Week - Kerberoasting Revisisted
SpecterOps Webinar Week - Kerberoasting RevisistedWill Schroeder
 
Not a Security Boundary
Not a Security BoundaryNot a Security Boundary
Not a Security BoundaryWill Schroeder
 
The Unintended Risks of Trusting Active Directory
The Unintended Risks of Trusting Active DirectoryThe Unintended Risks of Trusting Active Directory
The Unintended Risks of Trusting Active DirectoryWill Schroeder
 
An ACE in the Hole - Stealthy Host Persistence via Security Descriptors
An ACE in the Hole - Stealthy Host Persistence via Security DescriptorsAn ACE in the Hole - Stealthy Host Persistence via Security Descriptors
An ACE in the Hole - Stealthy Host Persistence via Security DescriptorsWill Schroeder
 
A Case Study in Attacking KeePass
A Case Study in Attacking KeePassA Case Study in Attacking KeePass
A Case Study in Attacking KeePassWill Schroeder
 
The Travelling Pentester: Diaries of the Shortest Path to Compromise
The Travelling Pentester: Diaries of the Shortest Path to CompromiseThe Travelling Pentester: Diaries of the Shortest Path to Compromise
The Travelling Pentester: Diaries of the Shortest Path to CompromiseWill Schroeder
 
Trusts You Might Have Missed - 44con
Trusts You Might Have Missed - 44conTrusts You Might Have Missed - 44con
Trusts You Might Have Missed - 44conWill Schroeder
 
Building an EmPyre with Python
Building an EmPyre with PythonBuilding an EmPyre with Python
Building an EmPyre with PythonWill Schroeder
 
PSConfEU - Building an Empire with PowerShell
PSConfEU - Building an Empire with PowerShellPSConfEU - Building an Empire with PowerShell
PSConfEU - Building an Empire with PowerShellWill Schroeder
 
PSConfEU - Offensive Active Directory (With PowerShell!)
PSConfEU - Offensive Active Directory (With PowerShell!)PSConfEU - Offensive Active Directory (With PowerShell!)
PSConfEU - Offensive Active Directory (With PowerShell!)Will Schroeder
 
Building an Empire with PowerShell
Building an Empire with PowerShellBuilding an Empire with PowerShell
Building an Empire with PowerShellWill Schroeder
 
Drilling deeper with Veil's PowerTools
Drilling deeper with Veil's PowerToolsDrilling deeper with Veil's PowerTools
Drilling deeper with Veil's PowerToolsWill Schroeder
 
Adventures in Asymmetric Warfare
Adventures in Asymmetric WarfareAdventures in Asymmetric Warfare
Adventures in Asymmetric WarfareWill Schroeder
 

More from Will Schroeder (20)

Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
 
Nemesis - SAINTCON.pdf
Nemesis - SAINTCON.pdfNemesis - SAINTCON.pdf
Nemesis - SAINTCON.pdf
 
Certified Pre-Owned
Certified Pre-OwnedCertified Pre-Owned
Certified Pre-Owned
 
SpecterOps Webinar Week - Kerberoasting Revisisted
SpecterOps Webinar Week - Kerberoasting RevisistedSpecterOps Webinar Week - Kerberoasting Revisisted
SpecterOps Webinar Week - Kerberoasting Revisisted
 
Not a Security Boundary
Not a Security BoundaryNot a Security Boundary
Not a Security Boundary
 
The Unintended Risks of Trusting Active Directory
The Unintended Risks of Trusting Active DirectoryThe Unintended Risks of Trusting Active Directory
The Unintended Risks of Trusting Active Directory
 
An ACE in the Hole - Stealthy Host Persistence via Security Descriptors
An ACE in the Hole - Stealthy Host Persistence via Security DescriptorsAn ACE in the Hole - Stealthy Host Persistence via Security Descriptors
An ACE in the Hole - Stealthy Host Persistence via Security Descriptors
 
Defending Your "Gold"
Defending Your "Gold"Defending Your "Gold"
Defending Your "Gold"
 
A Case Study in Attacking KeePass
A Case Study in Attacking KeePassA Case Study in Attacking KeePass
A Case Study in Attacking KeePass
 
The Travelling Pentester: Diaries of the Shortest Path to Compromise
The Travelling Pentester: Diaries of the Shortest Path to CompromiseThe Travelling Pentester: Diaries of the Shortest Path to Compromise
The Travelling Pentester: Diaries of the Shortest Path to Compromise
 
A Year in the Empire
A Year in the EmpireA Year in the Empire
A Year in the Empire
 
Trusts You Might Have Missed - 44con
Trusts You Might Have Missed - 44conTrusts You Might Have Missed - 44con
Trusts You Might Have Missed - 44con
 
Building an EmPyre with Python
Building an EmPyre with PythonBuilding an EmPyre with Python
Building an EmPyre with Python
 
PSConfEU - Building an Empire with PowerShell
PSConfEU - Building an Empire with PowerShellPSConfEU - Building an Empire with PowerShell
PSConfEU - Building an Empire with PowerShell
 
PSConfEU - Offensive Active Directory (With PowerShell!)
PSConfEU - Offensive Active Directory (With PowerShell!)PSConfEU - Offensive Active Directory (With PowerShell!)
PSConfEU - Offensive Active Directory (With PowerShell!)
 
Building an Empire with PowerShell
Building an Empire with PowerShellBuilding an Empire with PowerShell
Building an Empire with PowerShell
 
Drilling deeper with Veil's PowerTools
Drilling deeper with Veil's PowerToolsDrilling deeper with Veil's PowerTools
Drilling deeper with Veil's PowerTools
 
I Hunt Sys Admins
I Hunt Sys AdminsI Hunt Sys Admins
I Hunt Sys Admins
 
Adventures in Asymmetric Warfare
Adventures in Asymmetric WarfareAdventures in Asymmetric Warfare
Adventures in Asymmetric Warfare
 
Pwnstaller
PwnstallerPwnstaller
Pwnstaller
 

Recently uploaded

Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceDelhi Call girls
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Russian Call girls in Dubai +971563133746 Dubai Call girls
Russian  Call girls in Dubai +971563133746 Dubai  Call girlsRussian  Call girls in Dubai +971563133746 Dubai  Call girls
Russian Call girls in Dubai +971563133746 Dubai Call girlsstephieert
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Sheetaleventcompany
 
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With RoomVIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Roomishabajaj13
 
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call GirlVIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girladitipandeya
 
Challengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya Shirtrahman018755
 
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607dollysharma2066
 
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls KolkataLow Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Standkumarajju5765
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts servicesonalikaur4
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxellan12
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Servicesexy call girls service in goa
 
Radiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsRadiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsstephieert
 
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Roomdivyansh0kumar0
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...APNIC
 

Recently uploaded (20)

Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Dlf City Phase 3 Gurgaon >༒8448380779 Escort Service
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
 
Russian Call girls in Dubai +971563133746 Dubai Call girls
Russian  Call girls in Dubai +971563133746 Dubai  Call girlsRussian  Call girls in Dubai +971563133746 Dubai  Call girls
Russian Call girls in Dubai +971563133746 Dubai Call girls
 
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
Call Girls Service Chandigarh Lucky ❤️ 7710465962 Independent Call Girls In C...
 
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With RoomVIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
 
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Rohini 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call GirlVIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
 
Challengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya Shirt
 
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
 
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls KolkataLow Rate Call Girls Kolkata Avani 🤌  8250192130 🚀 Vip Call Girls Kolkata
Low Rate Call Girls Kolkata Avani 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night StandHot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
Hot Call Girls |Delhi |Hauz Khas ☎ 9711199171 Book Your One night Stand
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
 
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptxAWS Community DAY Albertini-Ellan Cloud Security (1).pptx
AWS Community DAY Albertini-Ellan Cloud Security (1).pptx
 
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine ServiceHot Service (+9316020077 ) Goa  Call Girls Real Photos and Genuine Service
Hot Service (+9316020077 ) Goa Call Girls Real Photos and Genuine Service
 
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICECall Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
 
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Radiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsRadiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girls
 
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
 

I Have the Power(View)

  • 2. @harmj0y Co-founder of Empire | Veil-Framework | PowerTools PowerSploit developer Researcher at Veris Group’s Adaptive Threat Division
  • 3. What I am Not Covering ▣ Any kind of memory corruption attacks ○ We haven’t thrown an exploit in years ▣ Too Much Active Directory background ○ Too many slides, too little time :( ▣ Mimikatz and Kerberos attacks ○ Covered better and in more depth by others ▣ PowerShell Weaponization ○ We like Empire and Cobalt Strike ;)
  • 4. What I am Covering ▣ Offensive Active Directory 101 ○ Why care? And what’s Powerview? ▣ Identifying/Hunting Your Prey ▣ Local Administrator Enumeration ▣ GPO Enumeration and Abuse ▣ AD ACLs (and a few persistence methods) ▣ Domain Trusts (enumeration and abuse) ▣ Lots of PowerView tips and tricks ○ and a lot of ground to cover!
  • 5. 1. Offensive AD 101 and ‘Why PowerShell’
  • 6. Active Directory 101 ▣ At its core, Active Directory is a way to organize user and computer objects ○ Used to authenticate and authorize users and computers on a network and provide access to specific resources ○ Also provides security policies, centralized management, and other rich features ▣ Red teams and real bad guys have been abusing AD for years, but not much offensive AD information has existed publicly (until fairly recently)
  • 7. Why Not The Active Directory Cmdlets? ▣ The RSAT-AD-PowerShell module is: ○ only compatible with PowerShell 3.0+ ○ only installed by default on servers with the Active Directory Domain Services role ▣ We want something: ○ PowerShell 2.0 compliant (yay Win7) ○ fully self-contained with no dependencies ○ usable without any installation
  • 8. PowerView ▣ A pure PowerShell domain/network situational awareness tool ○ everything is kept version 2.0 compliant ○ now part of PowerSploit™! (not really trademarked) ▣ Built to automate large components of the tradecraft on our red team engagements ▣ No installation and can reside purely in memory ○ and PowerShell 2.0 is included by default in Win7
  • 9. Sidenote: LDAP Optimizations ▣ A lot of the PowerView domain functionality reduces down to various chained and optimized LDAP queries ▣ Much is transparent to the user: ○ e.g. LDAP queries for foreign domains are ‘reflected’ through the current domain PDC to get around network segmentation ▣ Much of this of isn’t revolutionary, but chaining functionality lets you pull off some awesome stuff
  • 10. Also: The Pipeline ▣ The PowerShell pipeline allows you to pass full objects between functions (instead of just strings) ▣ This lets you perform complex chaining and filtering, allowing you accomplish a lot very quickly ▣ Users who’ve logged on within the last week: ○ Get-NetUser | ? {$_.lastlogon -gt [DateTime]::Today. AddDays(-7)} | Sort-Object name
  • 11. 2. Identifying and Hunting Your Prey Who Are my Admins and Where Are They At?
  • 12. ▣ Before you start targeted spread, you need to know who you’re going after ▣ PowerView helps with enumeration of: ○ Users: Get-NetUser <*USER*> ○ Groups: Get-NetGroup <*admin*> ○ Group members: Get-NetGroupMember <GroupName> ▣ All of the above also accept manual LDAP filters with -Filter “(field=*value*)” Who Are My Admins?
  • 13. ▣ Get all the groups a user is effectively a member of ('recursing up'): ○ Get-NetGroup -UserName <USER> ▣ Get all the effective members of a group ('recursing down'): ○ Get-NetGroupMember -GoupName <GROUP> -Recurse ▣ Search the forest global catalog: ○ Get-NetUser -UserName <USER> -ADSpath “GC: //domain.com” PowerTips
  • 14. ▣ Machine accounts can sometimes end up in privileged groups https://adsecurity.org/?p=2753 ▣ To find any computer accounts in any privileged groups: Privileged Machine Accounts Get-NetGroup -AdminCount | ` Get-NetGroupMember -Recurse | ` ?{$_.MemberName -like '*$'}
  • 15. ▣ Some organizations separate out administrative functionality into multiple accounts for the same person ○ e.g. “john” and“john-admin” ▣ By performing some correlation on AD data objects, you can often pull out groupings of accounts likely owned by the same person ○ We often hunt for/compromise an admin’s unprivileged account Separated Roles
  • 16. ▣ Finding all user accounts with a specific email address: ▣ Get-NetUser -Filter "(mail=john@domain.com)" Separated Roles - Simple Example
  • 17. ▣ Get-NetGroupMember -GroupName "Domain Admins" -FullData | %{ $a=$_.displayname.split (" ")[0..1] -join " "; Get-NetUser -Filter "(displayname=*$a*)" } | Select-Object - Property displayname,samaccountname Separated Roles - Complex Example
  • 18. Separated Roles - Complex Example
  • 19. 1. Query for all members of “Domain Admins” in the current domain, returning the full data objects 2. Extract out the “Firstname Lastname” from DisplayName for each user object 3. Query for additional users with the same “Firstname Lastname” Separated Roles - Complex Example In plain English:
  • 20. ▣ Once you’ve identified who you want to go after, you need to know where they’re located ▣ We break this down into: ○ pre-elevated access, when you have regular domain privileges. This is usually the lateral spread phase. ○ post-elevated access, when you have elevated (e.g. Domain Admin) privileges. This is usually the ‘demonstrate impact’ phase. I Hunt Sysadmins
  • 21. ▣ Flexible PowerView function that: ○ queries AD for hosts or takes a target list ○ queries AD for users of a target group, or takes a list/single user ○ uses Win32 API calls to enumerate sessions and logged in users, matching against the target user list ○ Doesn’t need administrative privileges! ▣ We like using the -ShowAll flag and grepping results for future analysis Invoke-UserHunter
  • 23. ▣ Uses an old red teaming trick: ○ Queries AD for all users and extracts all homeDirectory/scriptPath/profilePath fields (as well as DFS shares and DCs) to identify highly trafficked servers ○ Runs Get-NetSession against each file server to enumerate remote sessions, match against target users ▣ Reasonable coverage with a lot less traffic ○ also doesn’t need admin privileges ○ also accepts the -ShowAll flag Invoke-UserHunter -Stealth
  • 26. The WinNT Service Provider ▣ Leftover from Windows NT domain deployments ○ ([ADSI]"WinNT://SERVER/Administrators").psbase. Invoke('Members') | %{$_.GetType().InvokeMember ("Name", 'GetProperty', $null, $_, $null)} ▣ With an unprivileged domain account, you can use PowerShell and WinNT to enumerate all members (local and domain) of a local group on a remote machine
  • 27. Get-NetLocalGroup ▣ Get-NetLocalGroup <SERVER> ○ -ListGroups will list the groups ○ a group can be specified with -GroupName <GROUP> ▣ The -Recurse flag will resolve the members of any result that’s a group, giving you a list of effective domain users that can access a given server ○ Invoke-UserHunter -TargetServer <SERVER> will use this to hunt for users who can admin a particular server
  • 29. “Derivative Local Admin” ▣ Large enterprise networks often utilize heavily delegated group roles ▣ From the attacker perspective, anyone who could be used to chain to that local administrative access can be considered a target ▣ More info from @sixdub: http://www.sixdub.net/? p=591
  • 30. “Derivative Local Admin” ▣ Tim (a domain admin) is on a machine w/ WorkstationAdminsA in the local admins ▣ WorkstationAdminsA contains Bob ▣ Bob’s machine has WorkstationAdminsB ▣ WorkstationAdminsB contains Eve ▣ If we exploit Eve, we can get Bob and any workstation he has access to, chaining to compromise Tim ▣ Eve’s admin privileges on A’s machine derive through Bob
  • 32. “Derivative Local Admin” ▣ Can be require several hops ▣ The process: ○ Invoke-UserHunter –Stealth –ShowAll to get required user location data ○ Get-NetLocalGroup –Recurse to identify the local admins on the target ○ Use location data to find those users ○ Get-NetLocalGroup -Recurse on locations discovered ○ Use location data to find those users ○ Continue until you find your path!
  • 33. ▣ Recently released by fellow ATD member Andy Robbins (@_wald0) ▣ Uses input from PowerView along with graph theory and Dijkstra’s algorithm to automate the chaining of local accesses ▣ More information from @_wald0: https://wald0. com/?p=14 “Automated Derivative Local Admin”
  • 34. 4. GPO Abuse Why Not Just Ask the Domain Controller?
  • 35. Group Policy Preferences ▣ Many organizations historically used Group Policy Preference files to set the local administrator password for machines ○ This password is encrypted but reversible ○ The patch for this prevents now reversible passwords from being set but doesn’t remove the old files ▣ PowerSploit’s Get-GPPPassword will find and decrypt any of these passwords found on a DC’s SYSVOL
  • 37. PowerView and GPP ▣ If you’re able to recover a cpassword from a Group Policy Preferences file you can use PowerView to quickly locate all machines that password is set on! ▣ Get-NetOU -GUID <GPP_GUID> | %{ Get- NetComputer -ADSPath $_ }
  • 38. More GPO Enumeration ▣ Group Policy Objects (though a GptTmpl.inf) can determine what users have local admin rights by setting ‘Restricted Groups’ ○ Group Policy Preferences can do something similar with “groups.xml” ▣ If we have a user account, why not just ask the GPO configuration where this user has local administrative rights?
  • 39. More GPO Enumeration ▣ Find-GPOLocation will: 1. resolve a user's sid 2. build a list of group SIDs the user is a part of 3. use Get-NetGPOGroup to pull GPOs that set 'Restricted Groups' or GPPs that set groups.xml 4. match the target SID list to the queried GPO SID list to enumerate all GPOs the user is effectively applied 5. enumerate all OUs and sites and applicable GPO GUIs are applied to through gplink enumeration 6. query for all computers under the given OUs or sites
  • 41. 5. Active Directory ACLs AD Objects Have Permissions Too!
  • 42. ▣ AD objects (like files) have permissions/access control lists ○ These can sometimes be misconfigured, and can also be backdoored for persistence ▣ Get-ObjectACL -ResolveGUIDs - SamAccountName <NAME> ▣ Set-ObjectACL lets you modify ;) ○ more on this in a bit AD ACLs
  • 44. ▣ Group policy objects are of particular interest ▣ Any user with modification rights to a GPO can get code execution for machine the GPO is applied to ▣ Get-NetGPO | %{Get-ObjectAcl -ResolveGUIDs - Name $_.Name} GPO ACLs
  • 46. Auditing AD ACLs ▣ Pulling all AD ACLs will give you A MOUNTAIN of data ▣ Invoke-ACLScanner will scan specifable AD objects (default to all domain objects) for ACLs with modify rights and a domain RID of >1000 ▣ This helps narrow down the search scope to find possibly misconfigured/backdoored AD object permissions
  • 47. AdminSDHolder ▣ AdminSDHolder is a special Active Directory object located at “CN=AdminSDHolder,CN=System, DC=domain,DC=com” ▣ If you modify the permissions of AdminSDHolder, that permission template will be pushed out to all protected admin accounts automatically by SDProp ▣ More info: https://adsecurity.org/?p=1906
  • 48. PowerView and AdminSDHolder ▣ Add-ObjectAcl -TargetADSprefix 'CN=AdminSDHolder,CN=System' … will let you modify AdminADHolder:
  • 49. Targeted Plaintext Downgrades ▣ Another legacy/backwards compatibility feature:
  • 50. Targeted Plaintext Downgrades ▣ We can set ENCRYPTED_TEXT_PWD_ALLOWED with PowerView: ○ Set-ADObject -SamAccountName <USER> - PropertyName useraccountcontrol - PropertyXorValue 128 ▣ Invoke-DowngradeAccount <USER> will downgrade the encryption and forces the user to change their password on next login
  • 51. Targeted Plaintext Downgrades ▣ After Mimimatz’ DCSync
  • 52. Speaking of DCSync... ▣ There’s a small set of permissions needed to execute DCSync on a domain:
  • 53. ▣ PowerView lets you easily enumerate all users with replication/DCSync rights for a particular domain: PowerView and DCSync Get-ObjectACL -DistinguishedName "dc=testlab, dc=local" -ResolveGUIDs | ? { ($_.ObjectType -match 'replication-get') -or ` ($_.ActiveDirectoryRights -match 'GenericAll') }
  • 54. ▣ You can easily modify the permissions of of the domain partition itself with PowerView’s Add- ObjectACL and “-Rights DCSync” A DCSync Backdoor Add-ObjectACL -TargetDistinguishedName "dc=testlab,dc=local" - PrincipalSamAccountName jason -Rights DCSync
  • 56. 6. Domain Trusts Or: Why You Shouldn’t Trust AD
  • 57. Domain Trusts 101 ▣ Trusts allow separate domains to form inter- connected relationships ○ Often utilized during acquisitions (i.e. forest trusts or cross-link trusts) ▣ A trust just links up the authentication systems of two domains and allows authentication traffic to flow between them ▣ A trust allows for the possibility of privileged access between domains, but doesn’t guarantee it*
  • 58. Why Does This Matter? ▣ Red teams often compromise accounts/machines in a domain trusted by their actual target ▣ This allows operators to exploit these existing trust relationships to achieve their end goal ▣ I LOVE TRUSTS: http://www.harmj0y. net/blog/tag/domain-trusts/
  • 59. PowerView Trust Enumeration ▣ Domain/forest trust relationships can be enumerated through several PowerView functions: ○ Get-NetForest: info about the current forest ○ Get-NetForestTrust: grab all forest trusts ○ Get-NetForestDomain: grab all domains in a forest ○ Get-NetDomainTrust: nltest à la PowerShell ▣ If a trust exists, most functions in PowerView can accept a “-Domain <name>” flag to operate across a trust
  • 60. Mapping the Mesh ▣ Large organizations with tons of subgroups/subsidiaries/acquisitions can end up with a huge mesh of domain trusts ○ mapping this mesh used to be manual and time- consuming process ▣ Invoke-MapDomainTrust can recursively map all reachable domain and forest trusts ○ The -LDAP flag gets around network restrictions at the cost of accuracy
  • 62. Visualizing the Mesh ▣ This raw data is great, but it’s still raw ▣ @sixdub’s DomainTrustExplorer tool can perform nodal analysis of trust data ○ https://github.com/sixdub/DomainTrustExplorer ○ It can also generate GraphML output of the entire mesh, which yED can use to build visualizations ▣ More information: http://www.sixdub.net/?p=285
  • 65. The Mimikatz Trustpocalypse ▣ Thanks to @gentilkiwi and @pyrotek3, Mimikatz Golden Tickets now accept SIDHistories though the new /sids:<X> argument ▣ If you compromise a DC in a child domain, you can create a golden ticket with the “Enterprise Admins” in the SID history ▣ This can let you compromise the forest root and all forest domains! ○ won’t work for external domain trusts b/c of sid filtering
  • 66. The Mimikatz Trustpocalypse If you compromise any domain administrator of any domain in a forest, you can compromise the entire forest!
  • 68. Sidenote: CheatSheets! ▣ We’ve released cheetsheets for PowerView as well as PowerUp and Empire at https://github. com/harmj0y/cheatsheets/
  • 69. Credits Thanks to Sean Metcalf (@pyrotek3) for guidance, ideas, and awesome information on offensive Active Directory approaches. Check out his blog at http://adsecurity.org ! Thanks to Benjamin Delpy (@gentilkiwi) and Vincent LE TOUX for Mimikatz and its DCSync capability! Thanks to Ben Campbell (@meatballs__) for PowerView modifications and LDAP optimizations! And a big thanks to Justin Warner (@sixdub) and the rest of the ATD team for tradecraft development and helping making PowerView not suck!
  • 70. Any questions? @harmj0y http://blog.harmj0y.net/ will [at] harmj0y.net harmj0y on Freenode in #psempire