Adversaries may attempt to identify the primary user, currently logged in user, set of users that commonly uses a system, or whether a user is actively using the system. They may do this, for example, by retrieving account usernames or by using OS Credential Dumping. The information may be collected in a number of different ways using other Discovery techniques, because user and username details are prevalent throughout a system and include running process ownership, file/directory ownership, session information, and system logs. Adversaries may use the information from System Owner/User Discovery during automated discovery to shape follow-on behaviors, including whether or not the adversary fully infects the target and/or attempts specific actions.
攻撃者は、プライマリユーザー、現在ログインしているユーザー、システムを通常使用しているユーザーのセット、またはユーザーがシステムをアクティブに使用しているかどうかを識別を試みることがあります。例えば、アカウントユーザ名を取得したり、OS認証情報ダンピングを使用することでこれを行うことがあります。ユーザとユーザ名の詳細はシステム全体に広がっており、実行中のプロセスの所有権、ファイル/ディレクトリの所有権、セッション情報、システムログを含むため、他の発見テクニックを使って様々な方法で情報を収集することもあります。攻撃者は、ターゲットを十分に感染させるかどうか、特定のアクションを試みるかどうかなど、その後の行動を形成するために、自動検出中にシステム所有者/ユーザー検出からの情報を使用することがあります。
Various utilities and commands may acquire this information, including whoami
. In macOS and Linux, the currently logged in user can be identified with w
and who
. On macOS the dscl . list /Users | grep -v '_'
command can also be used to enumerate user accounts. Environment variables, such as
%USERNAME%
and $USER
, may also be used to access this information.
whoamiを含む様々なユーティリティやコマンドでこの情報を取得することができます。macOSとLinuxでは、現在ログインしているユーザはwとwhoで識別できます。macOSでは、dscl .list /Users | grep -v
'_'コマンドもユーザーアカウントを列挙するために使用できます。%USERNAME%や$USERなどの環境変数も、この情報にアクセスするために使用されることがあります。
ID | Name | Description |
---|---|---|
S1028 | Action RAT |
Action RAT has the ability to collect the username from an infected host.[1] |
S0331 | Agent Tesla |
Agent Tesla can collect the username from the victim’s machine.[2][3][4] |
S0092 | Agent.btz |
Agent.btz obtains the victim username and saves it to a file.[5] |
S1025 | Amadey |
Amadey has collected the user name from a compromised host using |
G0073 | APT19 |
APT19 used an HTTP malware variant and a Port 22 malware variant to collect the victim’s username.[7] |
G0022 | APT3 |
An APT3 downloader uses the Windows command |
G0050 | APT32 |
APT32 collected the victim's username and executed the |
G0067 | APT37 |
APT37 identifies the victim username.[12] |
G0082 | APT38 |
APT38 has identified primary users, currently logged in users, sets of users that commonly use a system, or inactive users.[13] |
G0087 | APT39 |
APT39 used Remexi to collect usernames from the system.[14] |
G0096 | APT41 |
APT41 used the WMIEXEC utility to execute |
S0456 | Aria-body |
Aria-body has the ability to identify the username on a compromised host.[16] |
S1029 | AuTo Stealer |
AuTo Stealer has the ability to collect the username from an infected host.[1] |
S0344 | Azorult |
Azorult can collect the username from the victim’s machine.[17] |
S0414 | BabyShark |
BabyShark has executed the |
S0093 | Backdoor.Oldrea |
Backdoor.Oldrea collects the current username from the victim.[19] |
S0534 | Bazar |
Bazar can identify the username of the infected user.[20] |
S0017 | BISCUIT |
BISCUIT has a command to gather the username from the system.[21] |
S0521 | BloodHound |
BloodHound can collect information on user sessions.[22] |
S0657 | BLUELIGHT |
BLUELIGHT can collect the username on a compromised host.[23] |
S0486 | Bonadan |
Bonadan has discovered the username of the user running the backdoor.[24] |
S0635 | BoomBox |
BoomBox can enumerate the username on a compromised host.[25] |
S1039 | Bumblebee |
Bumblebee has the ability to identify the user name.[26] |
S0351 | Cannon |
Cannon can gather the username from the system.[27] |
S0348 | Cardinal RAT |
Cardinal RAT can collect the username from a victim machine.[28] |
S0572 | Caterpillar WebShell |
Caterpillar WebShell can obtain a list of user accounts from a victim's machine.[29] |
S0631 | Chaes |
Chaes has collected the username and UID from the infected machine.[30] |
G0114 | Chimera |
Chimera has used the |
S0667 | Chrommme |
Chrommme can retrieve the username from a targeted system.[32] |
S0660 | Clambling |
Clambling can identify the username on a compromised host.[33][34] |
S1024 | CreepySnail |
CreepySnail can execute |
S0115 | Crimson |
Crimson can identify the user on a targeted system.[36][37][38] |
S0498 | Cryptoistic |
Cryptoistic can gather data on the user of a compromised host.[39] |
S0334 | DarkComet |
DarkComet gathers the username from the victim’s machine.[40] |
S0673 | DarkWatchman |
DarkWatchman has collected the username from a victim machine.[41] |
S0354 | Denis |
Denis enumerates and collects the username from the victim’s machine.[42][11] |
S0021 | Derusbi |
A Linux version of Derusbi checks if the victim user ID is anything other than zero (normally used for root), and the malware will not execute if it does not have root privileges. Derusbi also gathers the username of the victim.[43] |
S0659 | Diavol |
Diavol can collect the username from a compromised host.[44] |
S1021 | DnsSystem |
DnsSystem can use the Windows user name to create a unique identification for infected users and systems.[45] |
S0186 | DownPaper |
DownPaper collects the victim username and sends it to the C2 server.[46] |
G0035 | Dragonfly |
Dragonfly used the command |
S0694 | DRATzarus |
DRATzarus can obtain a list of users from an infected machine.[48] |
S0024 | Dyre |
Dyre has the ability to identify the users on a compromised host.[49] |
G1006 | Earth Lusca |
Earth Lusca collected information on user accounts via the |
S0554 | Egregor |
Egregor has used tools to gather information about users.[51] |
S0363 | Empire |
Empire can enumerate the username on targeted hosts.[52] |
S0091 | Epic |
Epic collects the user name from the victim’s machine.[53] |
S0568 | EVILNUM |
EVILNUM can obtain the username from the victim's machine.[54] |
S0401 | Exaramel for Linux |
Exaramel for Linux can run |
S0569 | Explosive |
Explosive has collected the username from the infected host.[56] |
S0171 | Felismus |
Felismus collects the current username and sends it to the C2 server.[57] |
S0267 | FELIXROOT |
FELIXROOT collects the username from the victim’s machine.[58][59] |
G0051 | FIN10 |
FIN10 has used Meterpreter to enumerate users on remote systems.[60] |
S0696 | Flagpro |
Flagpro has been used to run the |
S0381 | FlawedAmmyy |
FlawedAmmyy enumerates the current user during the initial infection.[62][63] |
C0001 | Frankenstein |
During Frankenstein, the threat actors used Empire to enumerate hosts and gather username, machine name, and administrative permissions information.[52] |
S1044 | FunnyDream |
FunnyDream has the ability to gather user information from the targeted system using |
G0093 | GALLIUM |
GALLIUM used |
G0047 | Gamaredon Group |
A Gamaredon Group file stealer can gather the victim's username to send to a C2 server.[66] |
S0168 | Gazer |
Gazer obtains the current user's security identifier.[67] |
S0666 | Gelsemium |
Gelsemium has the ability to distinguish between a standard user and an administrator on a compromised host.[32] |
S0460 | Get2 |
Get2 has the ability to identify the current username of an infected host.[68] |
S0249 | Gold Dragon |
Gold Dragon collects the endpoint victim's username and uses it as a basis for downloading additional components from the C2 server.[69] |
S0477 | Goopy |
Goopy has the ability to enumerate the infected system's user name.[11] |
S0531 | Grandoreiro |
Grandoreiro can collect the username from the victim's machine.[70] |
S0237 | GravityRAT |
GravityRAT collects the victim username along with other account information (account type, description, full name, SID and status).[71] |
S0632 | GrimAgent |
GrimAgent can identify the user id on a target machine.[72] |
S0214 | HAPPYWORK |
can collect the victim user name.[73] |
S0391 | HAWKBALL |
HAWKBALL can collect the user name of the system.[74] |
G1001 | HEXANE |
HEXANE has run |
S0431 | HotCroissant |
HotCroissant has the ability to collect the username on the infected host.[76] |
S0260 | InvisiMole |
InvisiMole lists local users and session information.[77] |
S0015 | Ixeshe |
Ixeshe collects the username from the victim’s machine.[78] |
S0201 | JPIN |
JPIN can obtain the victim user name.[79] |
S0265 | Kazuar |
Kazuar gathers information on users.[80] |
G0004 | Ke3chang |
Ke3chang has used implants capable of collecting the signed-in username.[81] |
S0250 | Koadic |
Koadic can identify logged in users across the domain and views user sessions.[82][83] |
S0162 | Komplex |
The OsInfo function in Komplex collects the current running username.[84] |
S0356 | KONNI |
KONNI can collect the username from the victim’s machine.[85] |
S0236 | Kwampirs |
Kwampirs collects registered owner details by using the commands |
G0032 | Lazarus Group |
Various Lazarus Group malware enumerates logged-on users.[87][88][89][90][91][39][92] |
S0362 | Linux Rabbit |
Linux Rabbit opens a socket on port 22 and if it receives a response it attempts to obtain the machine's hostname and Top-Level Domain. [93] |
S0513 | LiteDuke |
LiteDuke can enumerate the account name on a targeted system.[94] |
S0680 | LitePower |
LitePower can determine if the current user has admin privileges.[95] |
S0681 | Lizar |
Lizar can collect the username from the system.[96] |
S0447 | Lokibot |
Lokibot has the ability to discover the username on the infected host.[97] |
S0532 | Lucifer |
Lucifer has the ability to identify the username on a compromised host.[98] |
S1016 | MacMa |
MacMa can collect the username from the compromised machine.[99] |
G0059 | Magic Hound |
Magic Hound malware has obtained the victim username and sent it to the C2 server.[100][101] |
S0652 | MarkiRAT |
MarkiRAT can retrieve the victim’s username.[102] |
S0459 | MechaFlounder |
MechaFlounder has the ability to identify the username and hostname on a compromised host.[103] |
S0455 | Metamorfo |
Metamorfo has collected the username from the victim's machine.[104] |
S0339 | Micropsia |
Micropsia collects the username from the victim’s machine.[105] |
S1015 | Milan |
Milan can identify users registered to a targeted machine.[106] |
S0280 | MirageFox |
MirageFox can gather the username from the victim’s machine.[107] |
S0084 | Mis-Type |
Mis-Type runs tests to determine the privilege level of the compromised user.[108] |
S0149 | MoonWind |
MoonWind obtains the victim username.[109] |
S0284 | More_eggs |
More_eggs has the capability to gather the username from the victim's machine.[110][111] |
S0256 | Mosquito |
Mosquito runs |
G0069 | MuddyWater |
MuddyWater has used malware that can collect the victim’s username.[113][114] |
S0228 | NanHaiShu |
NanHaiShu collects the username from the victim.[115] |
S0590 | NBTscan |
NBTscan can list active users on the system.[116][117] |
S0272 | NDiskMonitor |
NDiskMonitor obtains the victim username and encrypts the information to send over its C2 channel.[118] |
S0691 | Neoichor |
Neoichor can collect the user name from a victim's machine.[81] |
C0002 | Night Dragon |
During Night Dragon, threat actors used password cracking and pass-the-hash tools to discover usernames and passwords.[119] |
S0385 | njRAT |
njRAT enumerates the current user during the initial infection.[120] |
S0353 | NOKKI |
NOKKI can collect the username from the victim’s machine.[121] |
S0644 | ObliqueRAT |
ObliqueRAT can check for blocklisted usernames on infected endpoints.[122] |
S0340 | Octopus |
Octopus can collect the username from the victim’s machine.[123] |
G0049 | OilRig |
OilRig has run |
S0439 | Okrum |
Okrum can collect the victim username.[127] |
C0012 | Operation CuckooBees |
During Operation CuckooBees, the threat actors used the |
C0014 | Operation Wocao |
During Operation Wocao, threat actors enumerated sessions and users on a remote host, and identified privileged users logged into a targeted system.[129] |
G0040 | Patchwork |
Patchwork collected the victim username and whether it was running as admin, then sent the information to its C2 server.[130][118] |
S0428 | PoetRAT |
PoetRAT sent username, computer name, and the previously generated UUID in reply to a "who" command from C2.[131] |
S0139 | PowerDuke |
PowerDuke has commands to get the current user's name and SID.[132] |
S0441 | PowerShower |
PowerShower has the ability to identify the current user on the infected host.[133] |
S0223 | POWERSTATS |
POWERSTATS has the ability to identify the username on the compromised host.[134] |
S0184 | POWRUNER |
POWRUNER may collect information about the currently logged in user by running |
S0113 | Prikormka |
A module in Prikormka collects information from the victim about the current user name.[136] |
S0192 | Pupy |
Pupy can enumerate local information for Linux hosts and find currently logged on users for Windows hosts.[137] |
S1032 | PyDCrypt |
PyDCrypt has probed victim machines with |
S0650 | QakBot |
QakBot can identify the user name on a compromised system.[139] |
S0269 | QUADAGENT |
QUADAGENT gathers the victim username.[140] |
S0262 | QuasarRAT |
QuasarRAT can enumerate the username and account type.[141] |
S0241 | RATANKBA |
RATANKBA runs the |
S0662 | RCSession |
RCSession can gather system owner information, including user and administrator privileges.[143] |
S0172 | Reaver |
Reaver collects the victim's username.[144] |
S0153 | RedLeaves |
RedLeaves can obtain information about the logged on user both locally and for Remote Desktop sessions.[145] |
S0125 | Remsec |
Remsec can obtain information about the current user.[146] |
S0379 | Revenge RAT |
Revenge RAT gathers the username from the system.[147] |
S0258 | RGDoor |
RGDoor executes the |
S0433 | Rifdoor |
Rifdoor has the ability to identify the username on the compromised host.[76] |
S0448 | Rising Sun |
Rising Sun can detect the username of the infected host.[149] |
S0270 | RogueRobin |
RogueRobin collects the victim’s username and whether that user is an admin.[150] |
S0240 | ROKRAT |
ROKRAT can collect the username from a compromised host.[151] |
S0148 | RTM |
RTM can obtain the victim username and permissions.[152] |
S0085 | S-Type |
S-Type has run tests to determine the privilege level of the compromised user.[108] |
S1018 | Saint Bot |
Saint Bot can collect the username from a compromised host.[153] |
G0034 | Sandworm Team |
Sandworm Team has collected the username from a compromised host.[154] |
S0461 | SDBbot |
SDBbot has the ability to identify the user on a compromised host.[68] |
S0382 | ServHelper |
ServHelper will attempt to enumerate the username of the victim.[155] |
S0596 | ShadowPad |
ShadowPad has collected the username of the victim system.[156] |
S0450 | SHARPSTATS |
SHARPSTATS has the ability to identify the username on the compromised host.[134] |
S0610 | SideTwist |
SideTwist can collect the username on a targeted system.[126] |
G0121 | Sidewinder |
Sidewinder has used tools to identify the user of a compromised host.[157] |
S0692 | SILENTTRINITY |
SILENTTRINITY can gather a list of logged on users.[158] |
S0533 | SLOTHFULMEDIA |
SLOTHFULMEDIA has collected the username from a victim machine.[159] |
S1035 | Small Sieve |
Small Sieve can obtain the id of a logged in user.[160] |
S0649 | SMOKEDHAM |
SMOKEDHAM has used |
S0627 | SodaMaster |
SodaMaster can identify the username on a compromised host.[162] |
S0615 | SombRAT |
SombRAT can execute |
S0543 | Spark |
Spark has run the whoami command and has a built-in command to identify the user logged in.[165] |
S0374 | SpeakUp |
SpeakUp uses the |
S1030 | Squirrelwaffle |
Squirrelwaffle can collect the user name from a compromised host.[167] |
S0058 | SslMM |
SslMM sends the logged-on username to its hard-coded C2.[168] |
S1037 | STARWHALE |
STARWHALE can gather the username from an infected host.[169][170] |
G0038 | Stealth Falcon |
Stealth Falcon malware gathers the registered user and primary owner name via WMI.[171] |
S1034 | StrifeWater |
StrifeWater can collect the user name from the victim's machine.[172] |
S0559 | SUNBURST |
SUNBURST collected the username from a compromised host.[173][174] |
S0242 | SynAck |
SynAck gathers user names from infected hosts.[175] |
S0060 | Sys10 |
Sys10 collects the account name of the logged-in user and sends it to the C2.[168] |
S0098 | T9000 |
T9000 gathers and beacons the username of the logged in account during installation. It will also gather the username of running processes to determine if it is running as SYSTEM.[176] |
G0027 | Threat Group-3390 |
Threat Group-3390 has used |
S0266 | TrickBot |
TrickBot can identify the user and groups the user belongs to on a compromised host.[177] |
S0094 | Trojan.Karagany |
Trojan.Karagany can gather information about the user on a compromised host.[178] |
G0081 | Tropic Trooper |
Tropic Trooper used |
S0647 | Turian |
Turian can retrieve usernames.[180] |
S0130 | Unknown Logger |
Unknown Logger can obtain information about the victim usernames.[181] |
S0275 | UPPERCUT |
UPPERCUT has the capability to collect the current logged on user’s username from a machine.[182] |
S0476 | Valak |
Valak can gather information regarding the user.[183] |
S0257 | VERMIN |
VERMIN gathers the username from the victim’s machine.[184] |
S0515 | WellMail |
WellMail can identify the current username on the victim system.[185] |
S0514 | WellMess |
WellMess can collect the username on the victim machine to send to C2.[186] |
S0155 | WINDSHIELD |
WINDSHIELD can gather the victim user name.[187] |
G0112 | Windshift |
Windshift has used malware to identify the username on a compromised host.[188] |
S0219 | WINERACK |
WINERACK can gather information on the victim username.[73] |
S0059 | WinMM |
WinMM uses NetUser-GetInfo to identify that it is running under an "Admin" account on the local system.[168] |
G0102 | Wizard Spider |
Wizard Spider has used "whoami" to identify the local user and their privileges.[189] |
S0161 | XAgentOSX |
XAgentOSX contains the getInfoOSX function to return the OS X version as well as the current user.[190] |
S0248 | yty |
yty collects the victim’s username.[191] |
S0251 | Zebrocy |
Zebrocy gets the username from the system.[192][193] |
G0128 | ZIRCONIUM |
ZIRCONIUM has used a tool to capture the username on a compromised host in order to register it with C2.[194] |
S0350 | zwShell |
zwShell can obtain the name of the logged-in user on the victim.[119] |
S0412 | ZxShell |
ZxShell can collect the owner and organization information from the target workstation.[195] |
S1013 | ZxxZ |
This type of attack technique cannot be easily mitigated with preventive controls since it is based on the abuse of system features.
ID | Data Source | Data Component | Detects |
---|---|---|---|
DS0026 | Active Directory | Active Directory Object Access |
Monitor domain controller logs for replication requests and other unscheduled activity possibly associated with DCSync. [197] [198] [199] Note: Domain controllers may not log replication requests originating from the default domain controller account. [200]. Monitor for replication requests [201] from IPs not associated with known domain controllers. [202] |
DS0017 | Command | Command Execution |
Monitor executed commands and arguments that may attempt to dump credentials to obtain account login and credential material, normally in the form of a hash or a clear text password, from the operating system and software. Look for command-lines that invoke AuditD or the Security Accounts Manager (SAM). Remote access tools may contain built-in features or incorporate existing tools like Mimikatz. PowerShell scripts also exist that contain credential dumping functionality, such as PowerSploit's Invoke-Mimikatz module, [203] which may require additional logging features to be configured in the operating system to collect necessary information for analysis. |
DS0022 | File | File Access |
Monitor for hash dumpers opening the Security Accounts Manager (SAM) on the local file system ( |
DS0029 | Network Traffic | Network Traffic Content |
Monitor and analyze traffic patterns and packet inspection associated to protocol(s) that do not follow the expected protocol standards and traffic flows (e.g extraneous packets that do not belong to established flows, gratuitous or anomalous traffic patterns, anomalous syntax, or structure). Consider correlation with process monitoring and command line to detect anomalous processes execution and command line arguments associated to traffic patterns (e.g. monitor anomalies in use of files that do not normally initiate connections for respective protocol(s)). |
Network Traffic Flow |
Monitor network data for uncommon data flows. Processes utilizing the network that do not normally have network communication or have never been seen before are suspicious. |
||
DS0009 | Process | OS API Execution |
Monitor for API calls that may attempt to dump credentials to obtain account login and credential material, normally in the form of a hash or a clear text password, from the operating system and software. |
Process Access |
Monitor for unexpected processes interacting with lsass.exe.[204] Common credential dumpers such as Mimikatz access the LSA Subsystem Service (LSASS) process by opening the process, locating the LSA secrets key, and decrypting the sections in memory where credential details are stored. Credential dumpers may also use methods for reflective Process Injection to reduce potential indicators of malicious activity. Linux
To obtain the passwords and hashes stored in memory, processes must open a maps file in the /proc filesystem for the process being analyzed. This file is stored under the path
|
||
Process Creation |
Monitor for newly executed processes that may be indicative of credential dumping. On Windows 8.1 and Windows Server 2012 R2, monitor Windows Logs for LSASS.exe creation to verify that LSASS started as a protected process. |
||
DS0024 | Windows Registry | Windows Registry Key Access |
Monitor for the SAM registry key being accessed that may attempt to dump credentials to obtain account login and credential material, normally in the form of a hash or a clear text password, from the operating system and software. |