1. Home
  2. Application Vulnerabilities
  3. How to remediate – Active Directory – Enumerate Computer Objects

How to remediate – Active Directory – Enumerate Computer Objects

1. Introduction

Active Directory – Enumerate Computer Objects allows retrieval of a list of computers and their join dates via ADSI. This vulnerability could allow local attackers to gather information about domain-joined machines, potentially aiding in further reconnaissance or attacks. Affected systems are typically Active Directory domains running on Windows servers. A successful exploit could lead to the disclosure of sensitive computer names and domain join information.

2. Technical Explanation

The vulnerability stems from the ability to query Active Directory for a list of computer objects using ADSI (Active Directory Service Interfaces). This is not an inherent flaw, but rather the exposure of this functionality without sufficient restriction. An attacker with local access can use scripting tools or directly interact with ADSI to enumerate computers and their join dates. There is no known CVE associated with this specific enumeration activity; it represents a standard information gathering technique. For example, an attacker could use PowerShell to query Active Directory for all computer objects in the domain.

  • Root cause: Unrestricted access to ADSI queries allowing enumeration of computer objects.
  • Exploit mechanism: An attacker uses scripting or tools to query Active Directory via ADSI and retrieve a list of computers and their join dates.
  • Scope: Windows servers running Active Directory Domain Services.

3. Detection and Assessment

Confirming vulnerability involves checking if computer objects can be enumerated through ADSI queries. A quick check is to see if PowerShell can connect to Active Directory. A thorough method involves attempting a full enumeration query.

  • Quick checks: Verify PowerShell connectivity to Active Directory using Get-ADComputer -Filter *.
  • Scanning: Nessus plugin ID 10389 (Active Directory Computer Object Enumeration) can be used as an example, but results should be interpreted carefully.
  • Logs and evidence: Security event logs may show ADSI query activity related to computer object enumeration; however, this is not a reliable indicator due to normal administrative access.
Get-ADComputer -Filter * | Select Name, WhenCreated

4. Solution / Remediation Steps

Remediating this vulnerability involves restricting access to ADSI queries or monitoring for suspicious activity. The following steps aim to limit the potential impact of enumeration.

4.1 Preparation

  • Services: No services need to be stopped.
  • Roll back plan: Restore from snapshot if unexpected issues occur. Change window approval may be needed depending on internal policies.

4.2 Implementation

  1. Step 1: Implement least privilege access controls for Active Directory users and groups, limiting who can query computer objects.
  2. Step 2: Review Group Policy Objects (GPOs) to ensure no unnecessary permissions are granted for ADSI queries.
  3. Step 3: Enable auditing of Active Directory object access events to monitor for suspicious enumeration activity.

4.3 Config or Code Example

Before

# Default permissions allowing broad access to ADSI queries

After

# Restrict permissions on ADSI queries to only authorized users and groups. Use the Active Directory Users and Computers console to modify permissions on the relevant organizational units (OUs).  Grant 'Read' permission to specific groups, denying access to others.

4.4 Security Practices Relevant to This Vulnerability

List only practices that directly address this vulnerability type. Use neutral wording and examples instead of fixed advice. For example: least privilege, input validation, safe defaults, secure headers, patch cadence. If a practice does not apply, do not include it.

  • Practice 1: Least privilege access to reduce the impact if an account is compromised.
  • Practice 2: Regular auditing of Active Directory object access events to detect and respond to suspicious activity.

4.5 Automation (Optional)

# Example PowerShell script to review permissions on an OU:
# Get-Acl "OU=Computers,DC=example,DC=com" | Format-List

5. Verification / Validation

Confirm the fix by verifying that unauthorized users can no longer enumerate computer objects via ADSI queries. Re-run the earlier detection to confirm access is restricted.

  • Post-fix check: Attempt to enumerate computers with a non-privileged account using Get-ADComputer -Filter *; it should return an error or limited results.
  • Re-test: Re-run the PowerShell command from Detection and Assessment (Step 3) as a non-privileged user. The query should fail or return significantly fewer results.
  • Smoke test: Verify that authorized users can still perform necessary Active Directory tasks, such as computer account management.
  • Monitoring: Monitor security event logs for failed ADSI queries from unauthorized accounts.
Get-ADComputer -Filter *

6. Preventive Measures and Monitoring

Suggest only measures that are relevant to the vulnerability type. Use “for example” to keep advice conditional, not prescriptive.

  • Baselines: Update security baselines or policies to enforce least privilege access controls for Active Directory objects.
  • Pipelines: Incorporate checks in CI/CD pipelines to validate ADSI permissions during infrastructure deployments.
  • Asset and patch process: Regularly review Active Directory group memberships and permissions as part of a standard asset management process.

7. Risks, Side Effects, and Roll Back

  • Risk or side effect 1: Incorrectly configured permissions could disrupt legitimate Active Directory operations.
  • Risk or side effect 2: Overly restrictive permissions may hinder administrative tasks.
  • Roll back: Restore from snapshot if unexpected issues occur. Revert any changes made to ADSI permissions using the Active Directory Users and Computers console.

8. References and Resources

Updated on December 27, 2025

Was this article helpful?

Related Articles