Hacking Tools

Invoke-ADEnum for Active Directory Enumeration

Invoke-ADEnum is a PowerShell-based Active Directory enumeration tool that automates the collection of information from Windows domain environments. It helps security professionals review directory configurations, map domain relationships, and identify areas that may require further investigation during authorized security assessments.

The tool collects information about Active Directory forests, domains, trusts, domain controllers, users, groups, computers, shared resources, subnets, access control lists (ACLs), organizational units (OUs), and Group Policy Objects (GPOs). It can also generate an HTML audit report that organizes the collected information into tables and presents remediation recommendations for identified findings.

Key Features of Invoke-ADEnum

  • Active Directory enumeration: Collects information about domains, forests, trusts, users, groups, computers, and domain controllers.
  • Share and network discovery: Enumerates shared resources and subnets to help map the environment.
  • Permission analysis: Reviews access control lists and related directory permissions to support security assessments.
  • Group Policy and OU enumeration: Gathers information about organizational units and Group Policy Objects.
  • HTML audit reporting: Generates an organized report with tables covering the discovered Active Directory infrastructure and recommendations for addressing findings.
  • CSV exports: Allows users to select table titles in the HTML report to generate downloadable CSV files.
  • XLSX export: Supports exporting the full Active Directory Audit report to an Excel workbook, with separate worksheets for individual result tables.

How to Use Invoke-ADEnum

Invoke-ADEnum is a PowerShell script. Before running it, review the project’s source code and confirm that the assessment is authorized. Downloading and executing a remote script directly can run code without giving you an opportunity to inspect it first, so reviewing a local copy is the safer approach.

1. Download the Script

Open the official Invoke-ADEnum GitHub repository and review the available source code and usage instructions. Download the script into your assessment environment.

If you have saved the script as Invoke-ADEnum.ps1, you can load it into the current PowerShell session with:

. .\Invoke-ADEnum.ps1

This dot-sourcing command makes the script’s functions available in the current session, assuming the script is compatible with your PowerShell environment.

2. Display the Help Information

Use the tool’s help option to review its available parameters and supported enumeration functions:

Invoke-ADEnum -Help

Check the project’s current documentation for the expected parameter syntax and any environment requirements before starting an assessment.

3. Review the Target Scope

Invoke-ADEnum provides a -TargetsOnly option for checking target information before running broader enumeration. Use it to review the intended scope and verify that the systems belong to the approved assessment:

Invoke-ADEnum -TargetsOnly

Confirm the authorized domains and systems with the environment owner. Avoid running enumeration against unrelated domains, networks, or shared resources.

Understanding the Active Directory Audit Report

The HTML report presents collected Active Directory information in a navigable format. Security teams can use the results to review directory structure, account and group information, domain relationships, shared resources, policy objects, and permissions.

Where available, clicking a table title generates a CSV version of that table. The full report can also be exported to XLSX by selecting Active Directory Audit at the top of the report. Each table of findings is placed on a separate worksheet, making it easier to filter, sort, and review results during an audit.

Recommendations in the report can help administrators prioritize follow-up checks. Validate findings against the organization’s security policies and configuration requirements before making changes to production systems.

Security Assessment and Best Practices

Active Directory enumeration can expose sensitive details about users, permissions, systems, and domain architecture. Run Invoke-ADEnum only in environments where you have explicit authorization, and protect generated reports because they may contain information useful to an attacker.

  • Review the script before executing it, especially if it was downloaded from a remote source.
  • Confirm target scope and permissions before collecting directory information.
  • Store HTML, CSV, and XLSX reports in access-controlled locations.
  • Validate potential security issues before applying remediation changes.
  • Share findings only with authorized administrators and assessment stakeholders.

For related directory security assessment tools, explore Adalanche for Active Directory attack-path analysis. Used within an approved scope, Invoke-ADEnum can help teams document their directory environment, review configurations, and organize findings for security and compliance assessments.

Cyber Defence

Recent Posts

What Is a Data Protection Platform and Why Your Organization Needs One

A data protection platform is a unified system that helps organizations discover, classify, monitor, and…

2 weeks ago

How Swiss Privacy Rules Affect AI Companies Under GDPR

AI companies operating in or around Switzerland face a compliance challenge that most legal teams…

2 weeks ago

Swiss FADP vs EU GDPR: Key Differences for AI and Data Privacy

Two major data privacy laws now govern how organizations handle personal data across Europe; the…

2 weeks ago

Kali Linux Commands Cheat Sheet: Complete Quick Reference

This cheat sheet covers the essential Kali Linux commands every pentester and ethical hacker uses…

1 month ago

What I Wish I Knew Before Learning Malware Analysis and Reverse Engineering

When I first started learning malware analysis and reverse engineering, I thought the hardest part…

2 months ago

git fetch vs git pull: How They Work and When to Use Each

Both git fetch and git pull talk to a remote repository, but they do very different things to your…

2 months ago