6

In a virtual environment using VMware, I want to setup a Windows license server. Unfortunately, the vendor's license server refuses to run on a VM; it must be installed on a physical machine.

Since we have no physical Windows servers and don't want to have them: is it possible to set up a virtual environment which is mostly undetected by applications? How do applications detect that they are running on a virtual box?

I want to emphasize that we are not attempting to circumvent licensing requirements. This is just about avoiding cost for maintenance and energy for another mostly useless single point of failure.

2
  • Be warned that depending on your location, tricking the software into running on a VM may be illegal regardless of why you are doing it. Daft, I know, but nobody ever said the law makes sense. Oct 6, 2011 at 3:55
  • Thanks for the edit, Miles, this helps to pimp my English. Dec 5, 2011 at 9:40

2 Answers 2

6

Unfortunately, I think there's too many different bits of virtual hardware that get stamped as VMware to completely mask the fact that it's a VM, and not a ton of ways to change what's getting presented.

However, there is some hope for tricking this specific application, if you can figure out what it's keying on and hide that information.

If it's keying on the hard drive's model info, you could try a directly mapped disk instead of a VMDK.

If it's looking for an 00:0c MAC address, easy fix.

First thing I'd try, though, would be to change the Product and Manufacturer strings exposed in the VM to use what's on the host instead - if I had to guess at what some bad licensing software would check, this would be my first guess.

Set SMBIOS.reflectHost = TRUE:

reflecthost

1
  • In the end, the vendor allowed us to use a virtual box for the license server, so I didn't try this. Still accepting the answer as the one with most hints. Btw, not installing vmware tools would be another idea. Thanks! Oct 21, 2011 at 20:52
2

I'd suspect you are violating the license for the software if you install it on a VM.

What you are asking is actually pretty difficult. VMware defined all sorts of fake hardware (ranging from disk drives to the motherboard), you have to trace the software and determine what it's accessing before it tells you to install it on a physical machine. Process Monitor might be of some help to you. You would be able to use it to trace a number of the system calls the application does, which may give you some indication as to what it's looking for.

As far as hiding the actual device, this is going to vary depending on what exactly the application is looking for. There's no 100% way to fully hide that VMware is active.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .