How to hide from a program that it is running on a virtual machine?

Some software contains tests to see if they are running on a virtual machine.

It's very unpleasant to see alert messages such as "Sorry, this application cannot run under a Virtual Machine." and have your software stopped!

There are lots of legal reasons to override such tests. Moreover such limitations are (most of the time) not written in User License Agreements.

So... how do I hide the fact that a Virtual Machine is running the program? I don't want programs that do this scan to successfully detect the VM that is running.

I'm using a Virtual Private Server (VPS) with Hyper-V... I'm administrator of the Operating System (Windows 2003) installed on this VPS, not administrator of Hyper-V.

7

2 Answers

In short, I think you just cannot. It's the discussion about malware trying to detect if it is running in a VM to avoid being detected by systems that use VMs to run code to check for malware.

Some quick references are: VRT: How does malware know the difference between the virtual world and the real world? and The Dead Giveaways of VM-Aware Malware .

3

As far as I know, it depends on the kind of virtualization you are using.

Let's start saying that you can surely mitigate some things (E.G. change MAC address, uninstall guest additions).

That said, if you are running a full virtualization, the hypervisor emulates the hardware for the guests. An emulated CPU will have its own (software) clock that, soon or later, will show different speeds, when it shouldn't.

This is one of the things you can't repair in any way, and a program (mostly malwares) will know it is running in a VM.

You can get it straight using a Paravirtualization that consists in using your real hardware in a closed environment.

1

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like