Create Account

Adversaries with a sufficient level of access may create a local system, domain, or cloud tenant account. Such accounts may be used for persistence that do not require persistent remote access tools to be deployed on the system.

In cloud environments, adversaries may create accounts that only have access to specific services, which can reduce the chance of detection.

Windows

The net user commands can be used to create a local or domain account.

Office 365

An adversary with access to a Global Admin account can create another account and assign it the Global Admin role for persistent access to the Office 365 tenant.[1][2]

ID: T1136
Tactic: Persistence
Platform: Linux, macOS, Windows, AWS, GCP, Azure AD, Azure, Office 365
Permissions Required: Administrator
Data Sources: Office 365 account logs, Azure activity logs, AWS CloudTrail logs, Process monitoring, Process command-line parameters, Authentication logs, Windows event logs
Contributors: Microsoft Threat Intelligence Center (MSTIC); Praetorian
Version: 2

Procedure Examples

Name Description
APT3 APT3 has been known to create or enable accounts, such as support_388945a0. [17]
APT41 APT41 created user accounts and adds them to the User and Admin groups. [19]
Calisto Calisto has the capability to add its own account to the victim's machine. [9]
Carbanak Carbanak can create a Windows account. [10]
Dragonfly 2.0 Dragonfly 2.0 created accounts on victims, including administrator accounts, some of which appeared to be tailored to each individual staging target. [14] [15]
Empire Empire has a module for creating a new domain user or local user if permissions allow. [5]
Flame Flame can create backdoor accounts with the login "HelpAssistant" with the Limbo module. [7] [8]
HiddenWasp HiddenWasp creates a user account as a means to provide initial persistence to the compromised machine. [12]
Leafminer Leafminer used a tool called Imecab to set up a persistent remote access account on the victim machine. [16]
Mis-Type Mis-Type may create a temporary user on the system named “Lost_{Unique Identifier}.” [6]
Net The net user username \password and net user username \password \domain commands in Net can be used to create a local or domain account respectively. [3]
Pupy Pupy can user PowerView to perform “net user” commands and create local system and domain accounts. [4]
S-Type S-Type may create a temporary user on the system named “Lost_{Unique Identifier}” with the password “pond~!@6”{Unique Identifier}.” [6]
ServHelper ServHelper may create a new account and add the new user to the "Remote Desktop Users" and "Administrators" groups. [11]
Soft Cell Soft Cell created rogue, high-privileged domain user accounts to maintain access across waves of a compromise. [18]
ZxShell ZxShell has a feature to create local user accounts. [13]

Mitigations

Mitigation Description
Multi-factor Authentication Use multi-factor authentication for user and privileged accounts.
Network Segmentation Configure access controls and firewalls to limit access to domain controllers and systems used to create and manage accounts.
Operating System Configuration Protect domain controllers by ensuring proper security configuration for critical servers.
Privileged Account Management Do not allow domain administrator accounts to be used for day-to-day operations that may expose them to potential adversaries on unprivileged systems.

Detection

Collect data on account creation within a network. Event ID 4720 is generated when a user account is created on a Windows system and domain controller. [20] Perform regular audits of domain and local system accounts to detect suspicious accounts that may have been created by an adversary.

Collect usage logs from cloud administrator accounts to identify unusual activity in the creation of new accounts and assignment of roles to those accounts. Monitor for accounts assigned to admin roles that go over a certain threshold of known admins.

References