I think this is related to this question, but I would like to know if there's also a way to prevent "third party" applications from seeing hardware IDs (motherboard, hard disks, and others), or giving them fake values, on real OS, not using a virtual machine. I'm interested here in modern mainstream desktop OSes, (and especially interesting are Windows 7 and Windows 8 for x86-64).

  • 1
    can you also specify which "software" you mean? drivers are software. Shareware is software. A webbrowser is software. surely it might matter Apr 7, 2014 at 16:13
  • @humanityANDpeace I mean all the software except the OS itself. Apr 7, 2014 at 16:18
  • No, you cannot prevent a software from accessing hardware IDs, as this is how its designed in most operating systems. However, for changing the IDs you'll need root access to the OS.
    – xkcd
    Apr 7, 2014 at 18:05

2 Answers 2


There is a way to do this via Google's Native Client. However, executables have to be compiled for this environment explicitely.

It is difficult to achieve otherwise (i.e. without a sandbox). DEP can't do this for you, as it only prevents memory segments without the executable flag from being executed.

Just think of reading the CPUID, which is a simple instruction which you can normally not prevent from being executed.

Anyway, there may be programs to do this which utilize debugging features, but I am not aware of any.


Hardware enforced DEP may be able to prevent, unsure about returning false values

  • How it does this? From my understanding, it only disallows executing instructions that are stored in memory that's not marked as executable. Apr 7, 2014 at 16:20
  • You're likely going to get a quicker more accurate answer asking on the Microsoft forums if you ask me... social.technet.microsoft.com/Forums/windows/en-US/…
    – munkeyoto
    Apr 7, 2014 at 16:35

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.