Detect Hidden File System in Google Chronicle
Adversaries may use a hidden file system to conceal malicious activity from users and security tools. Hidden file systems operate outside normal OS file system abstractions — adversaries write raw data to unused disk space, inside volume slack space, inside NTFS extended attributes, or in specially crafted partitions that aren't mounted by the OS. The Equation Group APT, ComRAT v4, Regin rootkit, and BOOTRASH VBR bootkit all use hidden file systems. This technique makes data invisible to standard forensic tools and EDR sensors that operate at the file system API level.
MITRE ATT&CK
- Tactic
- Defense Evasion
- Technique
- T1564 Hide Artifacts
- Sub-technique
- T1564.005 Hidden File System
- Canonical reference
- https://attack.mitre.org/techniques/T1564/005/
YARA-L Detection Query
rule hidden_file_system_t1564_005 {
meta:
author = "Argus Detection Engineering"
description = "Detects hidden file system creation via raw disk access, diskpart/bcdedit execution from scripting engines, or direct physical device path access (T1564.005)"
mitre_attack_tactic = "Defense Evasion"
mitre_attack_technique = "T1564.005"
severity = "HIGH"
reference = "https://attack.mitre.org/techniques/T1564/005/"
created = "2026-04-21"
events:
$e.metadata.event_type = "PROCESS_LAUNCH"
$e.principal.hostname = $hostname
(
// Disk manipulation tools launched from scripting engines
(
re.regex($e.target.process.file.full_path, `(?i)(diskpart\.exe|format\.com|bcdedit\.exe)$`) and
re.regex($e.principal.process.file.full_path, `(?i)(cmd\.exe|powershell\.exe|wscript\.exe|cscript\.exe)$`)
) or
// Raw physical disk access via shell processes
(
re.regex($e.target.process.file.full_path, `(?i)(powershell\.exe|cmd\.exe)$`) and
re.regex($e.target.process.command_line, `(?i)(\\\\.\\PhysicalDrive|\\\\Device\\\\Harddisk|Device\\HarddiskVolume)`)
)
)
condition:
$e
} Chronicle YARA-L 2.0 rule detecting T1564.005 hidden file system activity by matching raw disk device path access patterns and disk manipulation utilities (diskpart, format, bcdedit) spawned from scripting engines in UDM process launch events.
Data Sources
Required Tables
False Positives & Tuning
- Automated disk provisioning and partition management scripts run by IT operations during scheduled maintenance windows
- Disaster recovery and backup agents invoking bcdedit or diskpart programmatically from service processes that inherit cmd.exe lineage
- Forensic workstation tools that access raw disk device paths for evidence acquisition and are run interactively from PowerShell
Other platforms for T1564.005
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Raw Physical Disk Access via PowerShell
Expected signal: Sysmon Event ID 1: powershell.exe with PhysicalDrive in command line. Security Event ID 4688. No disk modification occurs — only read access.
- Test 2Diskpart Script Execution
Expected signal: Sysmon Event ID 1: diskpart.exe with /s flag and script path. Security Event ID 4688 for diskpart.exe. Script file creation in Temp (Sysmon EventCode=11).
- Test 3BCDEdit Query for Boot Configuration
Expected signal: Sysmon Event ID 1: bcdedit.exe with /enum flag. Security Event ID 4688. Output shows all boot entries including any hidden or non-standard entries.
References (4)
- https://attack.mitre.org/techniques/T1564/005/
- https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1564.005/T1564.005.md
- https://media.kasperskycontenthub.com/wp-content/uploads/sites/43/2018/03/08064459/Equation_group_questions_and_answers.pdf
- https://securelist.com/the-penquin-turla/67962/
Unlock Pro Content
Get the full detection package for T1564.005 including response playbook, investigation guide, and atomic red team tests.