T1062 Google Chronicle · YARA-L

Detect Hypervisor in Google Chronicle

Adversaries may install a type-1 hypervisor below the operating system to achieve persistent, stealthy access that survives reboots and is hidden from the guest OS. A malicious hypervisor intercepts hardware-level operations and can conceal its presence from all software running above it, including security tools and the OS kernel. This technique has been deprecated by MITRE ATT&CK but remains relevant for detection engineering due to its theoretical use by sophisticated threat actors and nation-state groups targeting high-value environments. Practical implementations include Blue Pill-style subvirt attacks, malicious Xen-based hypervisors, or abuse of legitimate hypervisor platforms (Hyper-V, VMware) as persistence anchors. Detection relies on pre-installation indicators (hypervisor binary drops, boot configuration changes, driver installs) since post-installation detection from inside the guest OS is unreliable.

MITRE ATT&CK

Tactic
Persistence
Canonical reference
https://attack.mitre.org/techniques/T1062/

YARA-L Detection Query

Google Chronicle (YARA-L)
yaral
rule t1062_hypervisor_install_indicators {
  meta:
    author = "Argus Detection Engineering"
    description = "Detects T1062 Hypervisor pre-installation indicators including bcdedit boot configuration changes, hypervisor driver file drops, registry service entries for hypervisor binaries, and EFI/boot sector modification by untrusted processes."
    mitre_attack_tactic = "Persistence"
    mitre_attack_technique = "T1062"
    mitre_attack_url = "https://attack.mitre.org/techniques/T1062/"
    severity = "CRITICAL"
    priority = "HIGH"
    status = "PRODUCTION"
    created = "2026-04-16"

  events:
    (
      // Branch 1: bcdedit modifying hypervisor boot configuration
      (
        $e.metadata.event_type = "PROCESS_LAUNCH"
        and re.regex($e.target.process.file.full_path, `(?i)bcdedit\.exe`)
        and (
          re.regex($e.target.process.command_line, `(?i)hypervisorlaunchtype`) or
          re.regex($e.target.process.command_line, `(?i)hypervisordebugtype`) or
          re.regex($e.target.process.command_line, `(?i)hypervisorloadoptions`) or
          re.regex($e.target.process.command_line, `(?i)hypervisordebugport`) or
          re.regex($e.target.process.command_line, `(?i)hypervisorbaudrate`) or
          re.regex($e.target.process.command_line, `(?i)testsigning\s+on`) or
          re.regex($e.target.process.command_line, `(?i)nointegritychecks\s+on`) or
          re.regex($e.target.process.command_line, `(?i)loadoptions.*hypervisor`)
        )
      ) or
      // Branch 2: Hypervisor driver file dropped to system directories
      (
        $e.metadata.event_type = "FILE_CREATION"
        and (
          re.regex($e.target.file.full_path, `(?i)\\(system32|syswow64)\\drivers\\`) or
          re.regex($e.target.file.full_path, `(?i)\\EFI\\`) or
          re.regex($e.target.file.full_path, `(?i)\\Boot\\.`)
        )
        and (
          re.regex($e.target.file.full_path, `(?i)(xen\.sys|xenbus\.sys|xennet\.sys|xenvbd\.sys|xenvif\.sys)`) or
          re.regex($e.target.file.full_path, `(?i)(hvax64\.exe|hvix64\.exe|hvloader\.exe|winhvr\.sys)`)
        )
      ) or
      // Branch 3: Registry service key created for hypervisor driver
      (
        $e.metadata.event_type = "REGISTRY_CREATION"
        and re.regex($e.target.registry.registry_key, `(?i)CurrentControlSet\\Services`)
        and (
          re.regex($e.target.registry.registry_key, `(?i)(xen|hvloader|bluepill|subvirt|hypervisor)`) or
          re.regex($e.target.registry.registry_value_data, `(?i)(xen\.sys|xenbus\.sys|hvloader|bluepill|subvirt|vmm\.exe)`)
        )
      ) or
      // Branch 4: EFI or boot sector file modified by untrusted process
      (
        $e.metadata.event_type = "FILE_MODIFICATION"
        and (
          re.regex($e.target.file.full_path, `(?i)\\EFI\\(Microsoft|Boot)\\`) or
          re.regex($e.target.file.full_path, `(?i)(bootmgfw\.efi|bootmgr|\\Boot\\BCD)`)
        )
        and not re.regex($e.principal.process.file.full_path, `(?i)(TrustedInstaller\.exe|wuauclt\.exe|svchost\.exe|MoUsoCoreWorker\.exe|WaaSMedicAgent\.exe)`)
      ) or
      // Branch 5: Suspicious kernel driver load matching hypervisor names
      (
        $e.metadata.event_type = "DRIVER_LOAD"
        and (
          re.regex($e.target.file.full_path, `(?i)(xen\.sys|xenbus\.sys|xenvbd\.sys|winhvr\.sys|hvax64\.exe|bluepill)`) or
          re.regex($e.target.file.full_path, `(?i)(hvix64\.exe|hvloader\.exe|subvirt)`)
        )
      )
    )

  condition:
    $e
}
critical severity medium confidence

Chronicle YARA-L 2.0 rule detecting T1062 Hypervisor installation pre-indicators via five detection branches covering bcdedit boot configuration tampering, hypervisor driver file creation in privileged directories, registry service key creation for known hypervisor drivers, EFI/boot sector modification by untrusted processes, and suspicious kernel driver load events for known hypervisor binaries.

Data Sources

Windows Event Logs via Chronicle UDM ingestion (PROCESS_LAUNCH, FILE_CREATION, FILE_MODIFICATION, REGISTRY_CREATION, DRIVER_LOAD event types)Endpoint telemetry forwarded to Google Chronicle via Bindplane or direct Chronicle forwarder

Required Tables

UDM Events (PROCESS_LAUNCH)UDM Events (FILE_CREATION)UDM Events (FILE_MODIFICATION)UDM Events (REGISTRY_CREATION)UDM Events (DRIVER_LOAD)

False Positives & Tuning

  • Hyper-V installation or Windows Subsystem for Linux 2 (WSL2) setup triggers legitimate winhvr.sys driver registration and bcdedit hypervisorlaunchtype configuration — correlate with Windows Update or IT change management records to distinguish.
  • Amazon EC2 Windows instances using Xen-based virtualization (older instance types) receive legitimate xen.sys, xenbus.sys, xenvbd.sys driver updates from the AWS PV Drivers installer package.
  • Enterprise virtualization environment provisioning scripts that configure test signing or disable integrity checks for internal driver development in authorized lab environments — correlate with approved change tickets.
  • Incident response or forensics tools that access EFI partitions for live triage (e.g., KAPE, Arsenal Image Mounter) may trigger boot sector file access alerts.
Download portable Sigma rule (.yml)

Other platforms for T1062


Testing Methodology

Validate this detection against 5 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.

  1. Test 1Enable Hyper-V Hypervisor via bcdedit (Boot Configuration Change)

    Expected signal: Sysmon Event ID 1: Process Create with Image=bcdedit.exe, CommandLine containing '/set hypervisorlaunchtype auto'. Security Event ID 4688 (if command line auditing enabled). Parent process will be the test runner (cmd.exe or PowerShell).

  2. Test 2Disable Driver Signature Enforcement via bcdedit (Prerequisite for Unsigned Hypervisor)

    Expected signal: Sysmon Event ID 1: Process Create with Image=bcdedit.exe, CommandLine='bcdedit /set nointegritychecks on'. Security Event ID 4688 with same command. Microsoft-Windows-CodeIntegrity/Operational may log subsequent policy change at next boot.

  3. Test 3Create Fake Hypervisor Driver Service Registry Entry

    Expected signal: Security Event ID 7045 (Service Control Manager: new service installed) with ServiceName=ArgusTestHV, ServiceType=kernel driver, StartType=boot start, ServiceFileName=C:\Windows\System32\drivers\argus_hv_test.sys. Sysmon Event ID 13 (Registry value set) for HKLM\SYSTEM\CurrentControlSet\Services\ArgusTestHV entries including ImagePath, Start (value 0 = boot), and Type.

  4. Test 4Drop Suspicious Driver File to System32\drivers (Staging Simulation)

    Expected signal: Sysmon Event ID 11 (File Create) with TargetFilename=C:\Windows\System32\drivers\xentest.sys and Image=cmd.exe or powershell.exe. The file will be created but is a renamed benign executable — SHA256 will match notepad.exe.

  5. Test 5Enable Test Signing Mode (Unsigned Driver Loading Prerequisite)

    Expected signal: Sysmon Event ID 1: Process Create with Image=bcdedit.exe, CommandLine='bcdedit /set testsigning on'. Security Event ID 4688 with same content. Windows boot splash screen will show 'Test Mode' watermark after next reboot. Microsoft-Windows-CodeIntegrity/Operational logs policy change.

Unlock Pro Content

Get the full detection package for T1062 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections