VM Spoofer camufla máquinas virtuales de VirtualBox como equipos reales del mercado: DMI/SMBIOS, CPU, disco, MAC y dispositivos PCI. Sin instalar nada dentro del invitado para el camuflaje base.VM Spoofer camouflages VirtualBox virtual machines as real, off-the-shelf computers: DMI/SMBIOS, CPU, disk, MAC and PCI devices. Nothing to install inside the guest for the base disguise.
$ sudo node check.js [SYSTEM] manufacturer Dell Inc. model XPS 15 9530 serial DLHOQ5PV virtual false [CPU] brand Core™ i7-1355U [DISKS] - Samsung Samsung SSD 870 EVO 1TB [FINDINGS] No common VM indicators detected. Score: 0/100
// Qué hace// What it does
Los cambios se aplican desde el host con VBoxManage, coherentes entre sí: un disco "Samsung" con BIOS "Dell" ya no delata nada.Changes are applied from the host with VBoxManage, coherent with each other: a "Samsung" disk with a "Dell" BIOS no longer gives anything away.
Fabricante, modelo, serial, UUID, BIOS, placa y chasis de 43 equipos reales: ThinkPad, XPS, EliteBook, MacBook…Manufacturer, model, serial, UUID, BIOS, board and chassis from 43 real machines: ThinkPad, XPS, EliteBook, MacBook…
El nombre de la CPU se escribe en las hojas CPUID 0x80000002-4 vía --cpuid-set. El invitado reporta la CPU del perfil, no la del host.The CPU name is written to CPUID leaves 0x80000002-4 via --cpuid-set. The guest reports the profile's CPU, not the host's.
Modelo, serial y firmware de discos reales (Samsung 990 PRO, WD Black…), escritos en el controlador correcto: AHCI o NVMe según la VM.Model, serial and firmware from real drives (Samsung 990 PRO, WD Black…), written to the right controller: AHCI or NVMe depending on the VM.
Prefijos OUI reales del IEEE de OEMs plausibles y sufijo aleatorio. Adiós al 08:00:27 de VirtualBox.Real IEEE OUI prefixes from plausible OEMs plus a random suffix. Goodbye to VirtualBox's 08:00:27.
Paravirtualización desactivada, ACPI OEM cambiado (adiós "VBOX") y sync de hora de VMMDev desactivada. Guest Additions siguen funcionando.Paravirtualization disabled, ACPI OEM changed (goodbye "VBOX") and VMMDev time sync off. Guest Additions keep working.
Wrapper de lspci (solo Linux) que renombra chipset, VGA, audio, SATA y red al perfil elegido, sin tocar Guest Additions.lspci wrapper (Linux only) renaming chipset, VGA, audio, SATA and network to the chosen profile, without touching Guest Additions.
Backup automático (config + extradata + .vbox) antes de aplicar, y restauración completa con un clic, incluida la limpieza de overrides CPUID.Automatic backup (config + extradata + .vbox) before applying, and full one-click restore, including CPUID override cleanup.
check.js audita la VM con systeminformation y puntúa los indicadores residuales. Además: watch de procesos y validación de hooks.check.js audits the VM with systeminformation and scores residual indicators. Plus: process watch and hook validation.
// Catálogo de hardware// Hardware catalog
Todo lo que puedes combinar en el asistente: fabricante y modelo, CPU, disco, GPU, tarjeta de red y chipset PCI. Cada perfil replica los identificadores exactos de un equipo del mercado.Everything you can combine in the wizard: manufacturer and model, CPU, disk, GPU, network card and PCI chipset. Each profile replicates the exact identifiers of a real, off-the-shelf machine.
// Para qué sirve// What it's for
Muchas herramientas leen identificadores de hardware y rechazan entornos virtualizados. VM Spoofer los sustituye por los de equipos reales del mercado.Many tools read hardware identifiers and refuse virtualized environments. VM Spoofer replaces them with those of real, off-the-shelf machines.
SECURITY.md antes de usarlo en entornos de cliente.Intended use: labs, QA, validation and integration in environments you own or are explicitly authorized for. Check SECURITY.md before using it on client environments.Prueba tu software como si corriera en un ThinkPad, un XPS o un MacBook real sin comprar el hardware.Test your software as if it ran on a real ThinkPad, XPS or MacBook without buying the hardware.
Aplicaciones y plataformas que detectan y bloquean entornos virtualizados dejan de ver la VM.Apps and platforms that detect and block virtualized environments stop seeing the VM.
Reduce la huella de hardware única que expone tu máquina virtual frente a terceros.Reduce the unique hardware fingerprint your virtual machine exposes to third parties.
Verifica perfiles de detección (OK VM Proctoring) contra systeminformation, procesos y hooks de entrada.Validate detection profiles (OK VM Proctoring) against systeminformation, processes and input hooks.
Analiza cómo las herramientas de detección cruzan indicadores DMI, CPUID, disco y red.Analyze how detection tools correlate DMI, CPUID, disk and network indicators.
// Cómo se usa// How to use
Un asistente guiado detecta tus VMs, te deja elegir el equipo a simular (fabricante, CPU, disco, GPU, red, chipset) y aplica todo de una vez, con backup automático.A guided wizard detects your VMs, lets you pick the machine to simulate (manufacturer, CPU, disk, GPU, network, chipset) and applies everything at once, with automatic backup.
Clona el repo o baja la release. Requisitos: VirtualBox, jq, whiptail/dialog y Node.js.Clone the repo or grab the release. Requirements: VirtualBox, jq, whiptail/dialog and Node.js.
./start.sh en Linux, start.ps1 en Windows, start.command en macOS. Elige VM y perfil de hardware../start.sh on Linux, start.ps1 on Windows, start.command on macOS. Pick VM and hardware profile.
Arranca la VM y ejecuta sudo node check.js dentro. Objetivo: virtual: false y Score 0/100.Boot the VM and run sudo node check.js inside. Goal: virtual: false and Score 0/100.
# Linux $ git clone https://github.com/686f6c61/vm-spoofer && cd vm-spoofer $ ./start.sh # Windows (PowerShell) PS> powershell -ExecutionPolicy Bypass -File start.ps1 # macOS $ ./start.command # Verificación dentro de la VMVerification inside the VM $ npm install systeminformation@5.31.6 $ sudo node check.js [FINDINGS] No common VM indicators detected. Score: 0/100
// Verificado en real// Verified for real
Guests Linux reales (Alpine y Debian Live 13) camuflados como un Dell XPS 15 9530. Esto es lo que ve un detector dentro del invitado, antes y después del post-install:Real Linux guests (Alpine and Debian Live 13) disguised as a Dell XPS 15 9530. This is what a detector sees inside the guest, before and after post-install:
00:00.0 Host bridge: Intel 440FX - 82441FX PMC 00:02.0 VGA: VMware SVGA II Adapter 00:04.0 System peripheral: InnoTek VirtualBox Guest Service 00:05.0 Audio: Intel 82801FB ICH6 HD Audio 00:0d.0 SATA: Intel 82801HM ICH8M
00:00.0 Host bridge: 13th Gen Core Processor 00:02.0 VGA: Intel Iris Xe Graphics 00:04.0 System peripheral: Thunderbolt 4 NHI 00:05.0 Audio: Raptor Lake-P HD Audio 00:0d.0 SATA: Raptor Lake SATA AHCI
// FAQ
No. Solo modifica metadatos de VirtualBox (el archivo .vbox). El sistema operativo invitado y tus datos no se tocan, y hay backup automático con restauración.No. It only modifies VirtualBox metadata (the .vbox file). The guest OS and your data are untouched, and there's automatic backup with restore.
No, es exclusivo de VirtualBox. Cada hipervisor guarda los identificadores de hardware de forma distinta.No, it's VirtualBox-only. Each hypervisor stores hardware identifiers differently.
No. Los cambios son identificadores y nombres; el rendimiento no se ve afectado. El camuflaje de CPU solo cambia el nombre visible, no las prestaciones.No. Changes are identifiers and names; performance is unaffected. CPU spoofing only changes the visible name, not performance.
Sí. El script guarda un backup (config, extradata y copia del .vbox) antes de aplicar, y la opción Restaurar devuelve todo, incluidos los overrides CPUID con --cpuid-remove-all.Yes. The script saves a backup (config, extradata and a .vbox copy) before applying, and the Restore option brings everything back, including CPUID overrides via --cpuid-remove-all.
No. VRDE/RDP queda desactivado por defecto en las tres plataformas. Si lo activas, solo escucha en 127.0.0.1 (y el asistente te avisa de que va sin autenticación).No. VRDE/RDP is off by default on all three platforms. If you enable it, it only listens on 127.0.0.1 (and the wizard warns you it runs without authentication).