You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/documentation.md
+38-38Lines changed: 38 additions & 38 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -458,45 +458,45 @@ VMAware provides a convenient way to not only check for VMs, but also have the f
458
458
|`VM::DMIDECODE`| Check if dmidecode output matches a VM brand | π§ | 55% | Admin |||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4423)|
459
459
|`VM::DMESG`| Check if dmesg output matches a VM brand | π§ | 65% | Admin |||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4557)|
460
460
|`VM::HWMON`| Check if /sys/class/hwmon/ directory is present. If not, likely a VM | π§ | 35% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4594)|
461
-
|`VM::DLL`| Check for VM-specific DLLs | πͺ | 50% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6563)|
|`VM::HWMODEL`| Check if the sysctl for the hwmodel does not contain the "Mac" string | π | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6341)|
461
+
|`VM::DLL`| Check for VM-specific DLLs | πͺ | 50% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6557)|
|`VM::HWMODEL`| Check if the sysctl for the hwmodel does not contain the "Mac" string | π | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6335)|
464
464
|`VM::DISK_SIZE`| Check if disk size is under or equal to 50GB | π§πͺ | 60% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5335)|
465
465
|`VM::VBOX_DEFAULT`| Check for default RAM and DISK sizes set by VirtualBox | π§πͺ | 25% | Admin || Admin only needed for Linux |[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5351)|
|`VM::WINE`| Check if the function "wine_get_unix_file_name" is present and if the OS booted from a VHD container | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6734)|
468
-
|`VM::POWER_CAPABILITIES`| Check what power states are enabled | πͺ | 90% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6774)|
|`VM::WINE`| Check if the function "wine_get_unix_file_name" is present and if the OS booted from a VHD container | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6728)|
468
+
|`VM::POWER_CAPABILITIES`| Check what power states are enabled | πͺ | 90% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6768)|
469
469
|`VM::PROCESSES`| Check for any VM processes that are active | π§ | 40% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5310)|
470
470
|`VM::LINUX_USER_HOST`| Check for default VM username and hostname for linux | π§ | 10% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4604)|
471
-
|`VM::GAMARUE`| Check for Gamarue ransomware technique which compares VM-specific Window product IDs | πͺ | 10% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6815)|
471
+
|`VM::GAMARUE`| Check for Gamarue ransomware technique which compares VM-specific Window product IDs | πͺ | 10% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6809)|
472
472
|`VM::BOCHS_CPU`| Check for various Bochs-related emulation oversights through CPU checks | π§πͺπ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L2162)|
473
-
|`VM::MAC_MEMSIZE`| Check if memory is too low for MacOS system | π | 15% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6374)|
|`VM::IOREG_GREP`| Check for VM-strings in ioreg commands for MacOS | π | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6489)|
476
-
|`VM::MAC_SIP`| Check if System Integrity Protection is disabled (likely a VM if it is) | π | 40% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6546)|
477
-
|`VM::REGISTRY_VALUES`| Check HKLM registries for specific VM strings | πͺ | 50% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6868)|
478
-
|`VM::VPC_INVALID`| Check for official VPC method | πͺ | 75% || 32-bit ||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6969)|
473
+
|`VM::MAC_MEMSIZE`| Check if memory is too low for MacOS system | π | 15% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6368)|
|`VM::IOREG_GREP`| Check for VM-strings in ioreg commands for MacOS | π | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6483)|
476
+
|`VM::MAC_SIP`| Check if System Integrity Protection is disabled (likely a VM if it is) | π | 40% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6540)|
477
+
|`VM::REGISTRY_VALUES`| Check HKLM registries for specific VM strings | πͺ | 50% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6862)|
478
+
|`VM::VPC_INVALID`| Check for official VPC method | πͺ | 75% || 32-bit ||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L6963)|
|`VM::VMWARE_IOMEM`| Check for VMware string in /proc/iomem | π§ | 65% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4633)|
484
484
|`VM::VMWARE_IOPORTS`| Check for VMware string in /proc/ioports | π§ | 70% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5143)|
485
485
|`VM::VMWARE_SCSI`| Check for VMware string in /proc/scsi/scsi | π§ | 40% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4942)|
486
486
|`VM::VMWARE_DMESG`| Check for VMware-specific device name in dmesg output | πͺ | 65% | Admin || Disabled by default |[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4961)|
|`VM::VMWARE_BACKDOOR`| Check for official VMware io port backdoor technique | πͺ | 100% || 32-bit ||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7190)|
489
+
|`VM::MUTEX`| Check for mutex strings of VM brands | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7254)|
490
490
|`VM::ODD_CPU_THREADS`| Check for odd CPU threads, usually a sign of modification through VM setting because 99% of CPUs have even numbers of threads | π§πͺπ | 80% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L2249)|
491
491
|`VM::INTEL_THREAD_MISMATCH`| Check for Intel CPU thread count database if it matches the system's thread count | π§πͺπ | 95% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L2313)|
492
492
|`VM::XEON_THREAD_MISMATCH`| Same as above, but for Xeon Intel CPUs | π§πͺπ | 95% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L3332)|
493
493
|`VM::AMD_THREAD_MISMATCH`| Check for AMD CPU thread count database if it matches the system's thread count | π§πͺπ | 95% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L3516)|
494
-
|`VM::CUCKOO_DIR`| Check for cuckoo directory using crt and WIN API directory functions | πͺ | 30% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7306)|
495
-
|`VM::CUCKOO_PIPE`| Check for Cuckoo specific piping mechanism | πͺ | 30% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7324)|
494
+
|`VM::CUCKOO_DIR`| Check for cuckoo directory using crt and WIN API directory functions | πͺ | 30% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7300)|
495
+
|`VM::CUCKOO_PIPE`| Check for Cuckoo specific piping mechanism | πͺ | 30% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7318)|
496
496
|`VM::HYPERV_HOSTNAME`| Check for default Azure hostname format (Azure uses Hyper-V as their base VM brand) | π§πͺ | 30% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5544)|
497
497
|`VM::GENERAL_HOSTNAME`| Check for commonly set hostnames by certain VM brands | π§πͺ | 10% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5584)|
498
-
|`VM::DISPLAY`| Check for display configurations related to VMs | πͺ | 35% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7351)|
499
-
|`VM::DEVICE_STRING`| Check if bogus device string would be accepted | πͺ | 25% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7399)|
498
+
|`VM::DISPLAY`| Check for display configurations related to VMs | πͺ | 35% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7345)|
499
+
|`VM::DEVICE_STRING`| Check if bogus device string would be accepted | πͺ | 25% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7393)|
500
500
|`VM::BLUESTACKS_FOLDERS`| Check for the presence of BlueStacks-specific folders | π§ | 5% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4649)|
501
501
|`VM::CPUID_SIGNATURE`| Check for signatures in leaf 0x40000001 in CPUID | π§πͺπ | 95% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4132)|
502
502
|`VM::KGT_SIGNATURE`| Check for Intel KGT (Trusty branch) hypervisor signature in CPUID | π§πͺπ | 80% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4161)|
@@ -511,26 +511,26 @@ VMAware provides a convenient way to not only check for VMs, but also have the f
511
511
|`VM::SMBIOS_VM_BIT`| Check for the VM bit in the SMBIOS data | π§ | 50% | Admin |||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5098)|
512
512
|`VM::PODMAN_FILE`| Check for podman file in /run/ | π§ | 5% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5128)|
513
513
|`VM::WSL_PROC`| Check for WSL or microsoft indications in /proc/ subdirectories | π§ | 30% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5160)|
514
-
|`VM::DRIVERS`| Check for VM-specific names for drivers | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7417)|
515
-
|`VM::DISK_SERIAL`| Check for serial numbers of virtual disks | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7525)|
|`VM::GPU_CAPABILITIES`| Check for GPU capabilities related to VMs | πͺ | 100% ||| Admin only needed for some heuristics |[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7707)|
518
-
|`VM::DEVICE_HANDLES`| Check for vm-specific devices | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7745)|
519
-
|`VM::LOGICAL_PROCESSORS`| Check for number of logical processors | πͺ | 50% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7798)|
520
-
|`VM::PHYSICAL_PROCESSORS`| Check for number of physical cores | πͺ | 50% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7818)|
514
+
|`VM::DRIVERS`| Check for VM-specific names for drivers | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7411)|
515
+
|`VM::DISK_SERIAL`| Check for serial numbers of virtual disks | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7519)|
|`VM::GPU_CAPABILITIES`| Check for GPU capabilities related to VMs | πͺ | 100% ||| Admin only needed for some heuristics |[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7701)|
518
+
|`VM::DEVICE_HANDLES`| Check for vm-specific devices | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7739)|
519
+
|`VM::LOGICAL_PROCESSORS`| Check for number of logical processors | πͺ | 50% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7792)|
520
+
|`VM::PHYSICAL_PROCESSORS`| Check for number of physical cores | πͺ | 50% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7812)|
521
521
|`VM::QEMU_FW_CFG`| Detect QEMU fw_cfg interface. This first checks the Device Tree for a fw-cfg node or hypervisor tag, then verifies the presence of the qemu_fw_cfg module and firmware directories in sysfs. | π§ | 70% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5188)|
522
-
|`VM::VIRTUAL_PROCESSORS`| Check if the number of virtual and logical processors are reported correctly by the system | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7850)|
523
-
|`VM::HYPERV_QUERY`| Check if a call to NtQuerySystemInformation with the 0x9f leaf fills a _SYSTEM_HYPERVISOR_DETAIL_INFORMATION structure | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7889)|
522
+
|`VM::VIRTUAL_PROCESSORS`| Check if the number of virtual and logical processors are reported correctly by the system | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7844)|
523
+
|`VM::HYPERV_QUERY`| Check if a call to NtQuerySystemInformation with the 0x9f leaf fills a _SYSTEM_HYPERVISOR_DETAIL_INFORMATION structure | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7883)|
524
524
|`VM::AMD_SEV`| Check for AMD-SEV MSR running on the system | π§π | 50% | Admin |||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L4672)|
525
-
|`VM::VIRTUAL_REGISTRY`| Check for particular object directory which is present in Sandboxie virtual environment but not in usual host systems | πͺ | 90% ||| Admin only needed for Linux |[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7949)|
525
+
|`VM::VIRTUAL_REGISTRY`| Check for particular object directory which is present in Sandboxie virtual environment but not in usual host systems | πͺ | 90% ||| Admin only needed for Linux |[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L7943)|
526
526
|`VM::FIRMWARE`| Check for VM signatures on all firmware tables | π§πͺ | 100% | Admin |||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5616)|
527
527
|`VM::FILE_ACCESS_HISTORY`| Check if the number of accessed files are too low for a human-managed environment | π§ | 15% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5218)|
528
-
|`VM::AUDIO`| Check if no waveform-audio output devices are present in the system | πͺ | 25% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L8039)|
528
+
|`VM::AUDIO`| Check if no waveform-audio output devices are present in the system | πͺ | 25% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L8033)|
529
529
|`VM::NSJAIL_PID`| Check if process status matches with nsjail patterns with PID anomalies | π§ | 75% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5245)|
530
-
|`VM::TPM`| Check if the system has a physical TPM by matching the TPM manufacturer against known physical TPM chip vendors | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L8081)|
531
-
|`VM::PCI_DEVICES`| Check for PCI vendor and device IDs that are VM-specific | π§πͺ | 95% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5985)|
|`VM::TRAP`| Check for two traps being raised at the same RIP, a hypervisor interferes with the instruction pointer delivery| πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L8338)|
530
+
|`VM::TPM`| Check if the system has a physical TPM by matching the TPM manufacturer against known physical TPM chip vendors | πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L8075)|
531
+
|`VM::PCI_DEVICES`| Check for PCI vendor and device IDs that are VM-specific | π§πͺ | 95% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L5979)|
|`VM::TRAP`| Check if after raising two traps at the same RIP, a hypervisor interferes with the instruction pointer deliveryy| πͺ | 100% ||||[link](https://github.com/kernelwernel/VMAware/tree/main/src/vmaware.hpp#L8319)|
0 commit comments