Use Windows 10 legally in Virtualbox
This forum does not endorse piracy - thus this is a guide to do it legally.
Microsoft has made it a priority to tie the key to the system and therefore it is stored in your systems firmware instead of a sticker which can be copied.
This guide might work for earlier versions of Windows, yet only confirmed working with Windows 10 and Windows 8.1 and this article will assume Windows 10.
This How-To is the continuation of a post elsewhere in this forum.
Verify your key
You can retrieve the key using a terminal command (fake key shown)
$ sudo tail -c +56 /sys/firmware/acpi/tables/MSDM ABA2D-TEFJ4-D97PT-9B42Y-H3U5E
Now that you know you have a product key, you can use the key and apply it to a VirtualBox VM.
The source of this How-To is an answer on superuser.com and I have verified the answer - it checks out.
I encourage you to read the above post specifically the part where the author point out that Microsoft actually acknowledge the use in a virtual machine. The requirement is that the key is not used simultanously on several systems.
That also means that you are required to remove your physcal instance once you succesfully moved it to virtual as you are not allowed to dual-boot using this approach.
Get a legal Windows ISO
You can download a legal copy of Microsoft Windows 10 for your system from
This is also the place to download earlier versions as Windows 7 and 8.1 and these downloads might require you to input a valid product key to get a download link.
Create a Windows 10 VM
Use VirtualBox to create a virtual machine named win10 - if you chose another name substitute win10 below with the name you have chosen.
Retrieve your product key
First step is to create a copy of firmware table holding the product key and save it in the folder holding your virtual machine.
The variable $USER used in the command will translate to whatever username you are using on your system.
$ sudo cat /sys/firmware/acpi/tables/MSDM > "/home/$USER/VirtualBox VMs/win10/msdm.bin"
You can check if it worked by listing the content of msdm.bin file
cat "~/VirtualBox VMs/win10/msdm.bin"
Assign product key to virtual machine
Next step is to assign your aquired data to your virtual machine.
$ VBoxManage setextradata "win10" "VBoxInternal/Devices/acpi/0/Config/CustomTable" "/home/$USER/VirtualBox VMs/win10/msdm.bin"
Install Windows 10 in the virtual machine
Now start your virtual Windows machine and when prompted point to your downloaded ISO file presumably stored in your download folder.
Follow the installer and when you reach the point where the installer asks for product key - select
- I don’t have a product key
It is vital you get next step right
- selecting your version
Selecting an incorrect version invalidates your product key - not invalidate as in changing or removing it but the SKU will not verify against the key and you have to start over.
Microsoft is using negative prompts to trick you to create or use a Microsoft account. You can do what you prefer. Later on they offer a lot privacy intrusion which you can select/deselect at your peril.
When installer is done and you have restarted your virtual machine - you have a licensed Windows VM.
Now remember to remove your physical Windows installation - if you continue to run two installations you violate your Windows license.