Account Discovery

Adversaries may attempt to get a listing of valid accounts, usernames, or email addresses on a system or within a compromised environment. This information can help adversaries determine which accounts exist, which can aid in follow-on behavior such as brute-forcing, spear-phishing attacks, or account takeovers (e.g., Valid Accounts).

Adversaries may use several methods to enumerate accounts, including abuse of existing tools, built-in commands, and potential misconfigurations that leak account names and roles or permissions in the targeted environment.

For examples, cloud environments typically provide easily accessible interfaces to obtain user lists.[1][2] On hosts, adversaries can use default PowerShell and other command line functionality to identify accounts. Information about email addresses and accounts may also be extracted by searching an infected system’s files.

ID: T1087
Sub-techniques:  T1087.001, T1087.002, T1087.003, T1087.004
Tactic: Discovery
Platforms: IaaS, Identity Provider, Linux, Office Suite, SaaS, Windows, macOS
Contributors: Daniel Stepanic, Elastic; Microsoft Threat Intelligence Center (MSTIC); Travis Smith, Tripwire
Version: 2.5
Created: 31 May 2017
Last Modified: 15 October 2024

Procedure Examples

ID Name Description
G0143 Aquatic Panda

Aquatic Panda used the last command in Linux environments to identify recently logged-in users on victim machines.[3]

G1016 FIN13

FIN13 has enumerated all users and their roles from a victim's main treasury system.[4]

S0445 ShimRatReporter

ShimRatReporter listed all non-privileged and privileged accounts available on the machine.[5]

C0024 SolarWinds Compromise

During the SolarWinds Compromise, APT29 obtained a list of users and their roles from an Exchange server using Get-ManagementRoleAssignment.[6]

S1065 Woody RAT

Woody RAT can identify administrator accounts on an infected machine.[7]

S0658 XCSSET

XCSSET attempts to discover accounts from various locations such as a user's Evernote, AppleID, Telegram, Skype, and WeChat data.[8]

Mitigations

ID Mitigation Description
M1028 Operating System Configuration

Prevent administrator accounts from being enumerated when an application is elevating through UAC since it can lead to the disclosure of account names. The Registry key is located HKLM\ SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\CredUI\EnumerateAdministrators. It can be disabled through GPO: Computer Configuration > [Policies] > Administrative Templates > Windows Components > Credential User Interface: E numerate administrator accounts on elevation. [9]

M1018 User Account Management

Manage the creation, modification, use, and permissions associated to user accounts.

Detection

ID Data Source Data Component Detects
DS0017 Command Command Execution

Monitor logs and other sources of command execution history for actions that could be taken to gather information about accounts, including the use of calls to cloud APIs that perform account discovery.

System and network discovery techniques normally occur throughout an operation as an adversary learns the environment, and also to an extent in normal network operations. Therefore discovery data and events should not be viewed in isolation, but as part of a chain of behavior that could lead to other activities, such as Lateral Movement, based on the information obtained.

DS0022 File File Access

Monitor access to file resources that contain local accounts and groups information such as /etc/passwd, /Users directories, and the SAM database.

If access requires high privileges, look for non-admin objects (such as users or processes) attempting to access restricted file resources.

DS0009 Process Process Creation

Monitor for processes that can be used to enumerate user accounts and groups such as net.exe and net1.exe, especially when executed in quick succession.[10] Information may also be acquired through Windows system management tools such as Windows Management Instrumentation and PowerShell.

References