NTFS File Attributes

From enterprise
Jump to: navigation, search
NTFS File Attributes
ID T1096
Tactic Defense Evasion
Platform Windows
System Requirements NTFS partitioned hard drive
Data Sources File monitoring, Kernel drivers, API monitoring
Defense Bypassed Signature-based detection, Anti-virus, Host forensic analysis
Contributors Red Canary

Every New Technology File System (NTFS) formatted partition contains a Master File Table (MFT) that maintains a record for every file/directory on the partition.1 Within MFT entries are file attributes,2 such as Extended Attributes (EA) and Data [known as Alternative Data Streams (ADSs) when more than one Data attribute is present], that can be used to store arbitrary data (and even complete files).1345

Adversaries may store malicious data or binaries in file attribute metadata instead of directly in files. This may be done to evade some defenses, such as static indicator scanning tools and anti-virus.64


  • Gazer stores configuration items in alternate data streams (ADSs) if the Registry is not accessible.7
  • If the victim is using PowerShell 3.0 or later, POWERSOURCE writes its decoded payload to an alternate data stream (ADS) named kernel32.dll that is saved in %PROGRAMDATA%\Windows\.8
  • PowerDuke hides many of its backdoor payloads in an alternate data stream (ADS).9
  • The Regin malware platform uses Extended Attributes to store encrypted executables.10
  • Some variants of the Zeroaccess Trojan have been known to store data in Extended Attributes.11


It may be difficult or inadvisable to block access to EA and ADSs.512 Efforts should be focused on preventing potentially malicious software from running. Identify and block potentially malicious software that may contain functionality to hide information in EA and ADSs by using whitelisting13 tools like AppLocker1415 or Software Restriction Policies16 where appropriate.17

Consider adjusting read and write permissions for NTFS EA, though this should be tested to ensure routine OS operations are not impeded.18


Forensic techniques exist to identify information stored in NTFS EA.6 Monitor calls to the ZwSetEaFile and ZwQueryEaFile Windows API functions, used to interact with EA, and consider regularly scanning for the presence of modified information.1

The Streams tool of Sysinternals can be used to uncover files with ADSs. The dir /r command can also be used to display ADSs.12 Many PowerShell commands (such as Get-Item, Set-Item, Remove-Item, and Get-ChildItem) can also accept a -stream parameter to interact with ADSs.45

Monitor for operations (execution, copies, etc.) with file names that contain colons. This syntax (ex: file.ext:ads[.ext]) is commonly associated with ADSs.5