Hide Artifacts: Hidden Window

Adversaries may use hidden windows to conceal malicious activity from the plain sight of users. In some cases, windows that would typically be displayed when an application carries out an operation can be hidden. This may be utilized by system administrators to avoid disrupting user work environments when carrying out administrative tasks.

Adversaries may abuse these functionalities to hide otherwise visible windows from users so as not to alert the user to adversary activity on the system.[1]

On macOS, the configurations for how applications run are listed in property list (plist) files. One of the tags in these files can be apple.awt.UIElement, which allows for Java applications to prevent the application's icon from appearing in the Dock. A common use for this is when applications run in the system tray, but don't also want to show up in the Dock.

Similarly, on Windows there are a variety of features in scripting languages, such as PowerShell, Jscript, and Visual Basic to make windows hidden. One example of this is powershell.exe -WindowStyle Hidden.[2]

In addition, Windows supports the CreateDesktop() API that can create a hidden desktop window with its own corresponding explorer.exe process.[3][4] All applications running on the hidden desktop window, such as a hidden VNC (hVNC) session,[3] will be invisible to other desktops windows.

ID: T1564.003
Sub-technique of:  T1564
Tactic: Defense Evasion
Platforms: Linux, Windows, macOS
Contributors: Mark Tsipershtein; Travis Smith, Tripwire
Version: 1.2
Created: 13 March 2020
Last Modified: 13 April 2024

Procedure Examples

ID Name Description
S0331 Agent Tesla

Agent Tesla has used ProcessWindowStyle.Hidden to hide windows.[5]

G0073 APT19

APT19 used -W Hidden to conceal PowerShell windows by setting the WindowStyle parameter to hidden. [6]

G0007 APT28

APT28 has used the WindowStyle parameter to conceal PowerShell windows.[7] [8]

G0022 APT3

APT3 has been known to use -WindowStyle Hidden to conceal PowerShell windows.[9]

G0050 APT32

APT32 has used the WindowStyle parameter to conceal PowerShell windows. [10] [11]

S0373 Astaroth

Astaroth loads its module with the XSL script parameter vShow set to zero, which opens the application with a hidden window. [12]

S1087 AsyncRAT

AsyncRAT can hide the execution of scheduled tasks using ProcessWindowStyle.Hidden.[13]

S1053 AvosLocker

AvosLocker has hidden its console window by using the ShowWindow API function.[14]


BONDUPDATER uses -windowstyle hidden to conceal a PowerShell window that downloads a payload.[15]

G0052 CopyKittens

CopyKittens has used -w hidden and -windowstyle hidden to conceal PowerShell windows. [16]

S0625 Cuba

Cuba has executed hidden PowerShell windows.[17]

G0079 DarkHydrus

DarkHydrus has used -WindowStyle Hidden to conceal PowerShell windows. [18]

G0009 Deep Panda

Deep Panda has used -w hidden to conceal PowerShell windows by setting the WindowStyle parameter to hidden. [19]

G0047 Gamaredon Group

Gamaredon Group has used hidcon to run batch files in a hidden console window.[20]

G0078 Gorgon Group

Gorgon Group has used -W Hidden to conceal PowerShell windows by setting the WindowStyle parameter to hidden. [21]


HAMMERTOSS has used -WindowStyle hidden to conceal PowerShell windows.[22]

G0126 Higaisa

Higaisa used a payload that creates a hidden window.[23]

S0431 HotCroissant

HotCroissant has the ability to hide the window for operations performed on a given file.[24]

S0260 InvisiMole

InvisiMole has executed legitimate tools in hidden windows.[25]

S1020 Kevin

Kevin can hide the current window from the targeted user via the ShowWindow API function.[26]

S0387 KeyBoy

KeyBoy uses -w Hidden to conceal a PowerShell window that downloads a payload. [27]

G0094 Kimsuky

Kimsuky has used an information gathering module that will hide an AV software window from the victim.[28]

S0437 Kivars

Kivars has the ability to conceal its activity through hiding active windows.[29]

S0250 Koadic

Koadic has used the command Powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden to hide its window.[30]


KOCTOPUS has used -WindowsStyle Hidden to hide the command window.[30]

G0059 Magic Hound

Magic Hound malware has a function to determine whether the C2 server wishes to execute the newly dropped file in a hidden window.[31]

S0500 MCMD

MCMD can modify processes to prevent them from being visible on the desktop.[32]

S0455 Metamorfo

Metamorfo has hidden its GUI using the ShowWindow() WINAPI call.[33]

S0688 Meteor

Meteor can hide its console window upon execution to decrease its visibility to a victim.[34]

G0133 Nomadic Octopus

Nomadic Octopus executed PowerShell in a hidden window.[35]

S0441 PowerShower

PowerShower has added a registry key so future powershell.exe instances are spawned with coordinates for a window position off-screen by default.[36]

S0262 QuasarRAT

QuasarRAT can hide process windows and make web requests invisible to the compromised user. Requests marked as invisible have been sent with user-agent string Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A though QuasarRAT can only be run on Windows systems.[37]


QUIETCANARY can execute processes in a hidden window.[38]

S0686 QuietSieve

QuietSieve has the ability to execute payloads in a hidden window.[39]

S1089 SharpDisco

SharpDisco can hide windows using ProcessWindowStyle.Hidden.[40]


SILENTTRINITY has the ability to set its window state to hidden.[41]

S1086 Snip3

Snip3 can execute PowerShell scripts in a hidden window.[42]

S0491 StrongPity

StrongPity has the ability to hide the console window for its document search module from the user.[43]

G1022 ToddyCat

ToddyCat has hidden malicious scripts using powershell.exe -windowstyle hidden. [44]

S0266 TrickBot

TrickBot has used a hidden VNC (hVNC) window to monitor the victim and collect information stealthily.[45]

S0386 Ursnif

Ursnif droppers have used COM properties to execute malware in hidden windows.[46]

S0670 WarzoneRAT

WarzoneRAT has the ability of performing remote desktop access via a hVNC window for decreased visibility.[47]

S0466 WindTail

WindTail can instruct the OS to execute an application without a dock icon or menu.[48]


ID Mitigation Description
M1038 Execution Prevention

Limit or restrict program execution using anti-virus software. On MacOS, allowlist programs that are allowed to have the plist tag. All other programs should be considered suspicious.

M1033 Limit Software Installation

Restrict the installation of software that may be abused to create hidden desktops, such as hVNC, to user groups that require it.


ID Data Source Data Component Detects
DS0017 Command Command Execution

Monitor executed commands and arguments that may use hidden windows to conceal malicious activity from the plain sight of users. In Windows, enable and configure event logging and PowerShell logging to check for the hidden window style.

DS0022 File File Modification

Monitor for changes made to files that may use hidden windows to conceal malicious activity from the plain sight of users. In MacOS, plist files are ASCII text files with a specific format, so they're relatively easy to parse. File monitoring can check for the apple.awt.UIElement or any other suspicious plist tag in plist files and flag them.

DS0009 Process Process Creation

Monitor newly executed processes that may use hidden windows to conceal malicious activity from the plain sight of users. For example, monitor suspicious windows explorer execution – such as an additional explorer.exe holding a handle to an unknown desktop – that may be used for hidden malicious activity via hVNC.[49]

DS0012 Script Script Execution

Monitor for any attempts to enable scripts running on a system would be considered suspicious. If scripts are not commonly used on a system, but enabled, scripts running out of cycle from patching or other administrator functions are suspicious. Scripts should be captured from the file system when possible to determine their actions and intent.


  1. Thomas Reed. (2017, January 18). New Mac backdoor using antiquated code. Retrieved July 5, 2017.
  2. Wheeler, S. et al.. (2019, May 1). About PowerShell.exe. Retrieved October 11, 2019.
  3. Hutchins, Marcus. (2015, September 13). Hidden VNC for Beginners. Retrieved November 28, 2023.
  4. Keshet, Lior. Kessem, Limor. (2017, January 25). Anatomy of an hVNC Attack. Retrieved November 28, 2023.
  5. Jazi, H. (2020, April 16). New AgentTesla variant steals WiFi credentials. Retrieved May 19, 2020.
  6. Ahl, I. (2017, June 06). Privileges and Credentials: Phished at the Request of Counsel. Retrieved May 17, 2018.
  7. Lee, B., Falcone, R. (2018, June 06). Sofacy Group’s Parallel Attacks. Retrieved June 18, 2018.
  8. Sherstobitoff, R., Rea, M. (2017, November 7). Threat Group APT28 Slips Office Malware into Doc Citing NYC Terror Attack. Retrieved November 21, 2017.
  9. Moran, N., et al. (2014, November 21). Operation Double Tap. Retrieved January 14, 2016.
  10. Carr, N.. (2017, May 14). Cyber Espionage is Alive and Well: APT32 and the Threat to Global Corporations. Retrieved June 18, 2017.
  11. Dahan, A. (2017). Operation Cobalt Kitty. Retrieved December 27, 2018.
  13. Jornet, A. (2021, December 23). Snip3, an investigation into malware. Retrieved September 19, 2023.
  14. Hasherezade. (2021, July 23). AvosLocker enters the ransomware scene, asks for partners. Retrieved January 11, 2023.
  15. Sardiwal, M, et al. (2017, December 7). New Targeted Attack in the Middle East by APT34, a Suspected Iranian Threat Group, Using CVE-2017-11882 Exploit. Retrieved December 20, 2017.
  16. ClearSky Cyber Security and Trend Micro. (2017, July). Operation Wilted Tulip: Exposing a cyber espionage apparatus. Retrieved August 21, 2017.
  17. Roccio, T., et al. (2021, April). Technical Analysis of Cuba Ransomware. Retrieved June 18, 2021.
  18. Falcone, R., et al. (2018, July 27). New Threat Actor Group DarkHydrus Targets Middle East Government. Retrieved August 2, 2018.
  19. Alperovitch, D. (2014, July 7). Deep in Thought: Chinese Targeting of National Security Think Tanks. Retrieved November 12, 2014.
  20. Unit 42. (2022, February 3). Russia’s Gamaredon aka Primitive Bear APT Group Actively Targeting Ukraine. Retrieved February 21, 2022.
  21. Falcone, R., et al. (2018, August 02). The Gorgon Group: Slithering Between Nation State and Cybercrime. Retrieved August 7, 2018.
  22. FireEye Labs. (2015, July). HAMMERTOSS: Stealthy Tactics Define a Russian Cyber Threat Group. Retrieved September 17, 2015.
  23. PT ESC Threat Intelligence. (2020, June 4). COVID-19 and New Year greetings: an investigation into the tools and methods used by the Higaisa group. Retrieved March 2, 2021.
  24. Knight, S.. (2020, April 16). VMware Carbon Black TAU Threat Analysis: The Evolution of Lazarus. Retrieved May 1, 2020.
  25. Hromcova, Z. and Cherpanov, A. (2020, June). INVISIMOLE: THE HIDDEN PART OF THE STORY. Retrieved July 16, 2020.
  1. Kayal, A. et al. (2021, October). LYCEUM REBORN: COUNTERINTELLIGENCE IN THE MIDDLE EAST. Retrieved June 14, 2022.
  2. Parys, B. (2017, February 11). The KeyBoys are back in town. Retrieved June 13, 2019.
  3. An, J and Malhotra, A. (2021, November 10). North Korean attackers use malicious blogs to deliver malware to high-profile South Korean targets. Retrieved December 29, 2021.
  4. Bermejo, L., et al. (2017, June 22). Following the Trail of BlackTech’s Cyber Espionage Campaigns. Retrieved May 5, 2020.
  5. Jazi, H. (2021, February). LazyScripter: From Empire to double RAT. Retrieved November 24, 2021.
  6. Lee, B. and Falcone, R. (2017, February 15). Magic Hound Campaign Attacks Saudi Targets. Retrieved December 27, 2017.
  7. Secureworks. (2019, July 24). MCMD Malware Analysis. Retrieved August 13, 2020.
  8. Erlich, C. (2020, April 3). The Avast Abuser: Metamorfo Banking Malware Hides By Abusing Avast Executable. Retrieved May 26, 2020.
  9. Check Point Research Team. (2021, August 14). Indra - Hackers Behind Recent Attacks on Iran. Retrieved February 17, 2022.
  10. Cherepanov, A. (2018, October 4). Nomadic Octopus Cyber espionage in Central Asia. Retrieved October 13, 2021.
  11. Lancaster, T. (2018, November 5). Inception Attackers Target Europe with Year-old Office Vulnerability. Retrieved May 8, 2020.
  12. CISA. (2018, December 18). Analysis Report (AR18-352A) Quasar Open-Source Remote Administration Tool. Retrieved August 1, 2022.
  13. Hawley, S. et al. (2023, February 2). Turla: A Galaxy of Opportunity. Retrieved May 15, 2023.
  14. Microsoft Threat Intelligence Center. (2022, February 4). ACTINIUM targets Ukrainian organizations. Retrieved February 18, 2022.
  15. Faou, M. (2023, August 10). MoustachedBouncer: Espionage against foreign diplomats in Belarus. Retrieved September 25, 2023.
  16. Salvati, M. (2019, August 6). SILENTTRINITY Modules. Retrieved March 24, 2022.
  17. Lorber, N. (2021, May 7). Revealing the Snip3 Crypter, a Highly Evasive RAT Loader. Retrieved September 13, 2023.
  18. Mercer, W. et al. (2020, June 29). PROMETHIUM extends global reach with StrongPity3 APT. Retrieved July 20, 2020.
  19. Dedola, G. et al. (2023, October 12). ToddyCat: Keep calm and check logs. Retrieved January 3, 2024.
  20. Cybereason Nocturnus. (n.d.). Triple Threat: Emotet Deploys TrickBot to Steal Data & Spread Ryuk. Retrieved November 28, 2023.
  21. Holland, A. (2019, March 7). Tricks and COMfoolery: How Ursnif Evades Detection. Retrieved June 10, 2019.
  22. Radu Tudorica. (2021, July 12). A Fresh Look at Trickbot’s Ever-Improving VNC Module. Retrieved September 28, 2021.
  23. Wardle, Patrick. (2018, December 20). Middle East Cyber-Espionage analyzing WindShift's implant: OSX.WindTail (part 1). Retrieved October 3, 2019.
  24. Safran, Or. Asinovsky, Pavel. (2017, November). Who Hid My Desktop: Deep Dive Into HVNC. Retrieved November 28, 2023.