Re:Slabbed-or-not: Detect if your VPS container is running u...
by nailer on Thursday January 30, 2014 @08:36AM
(#7150555)
CPUID is available in /proc/cpuinfo (or whatever the /sys or modern equivalent is, my Linux is a bit rusty)
Not sure re: UD2 though.
Re:Slabbed-or-not: Detect if your VPS container is running u...
by nenolod on Thursday January 30, 2014 @09:22AM
(#7150761)
The point here is that the information in /proc/cpuinfo is virtualized, and therefore may not reflect reality...
Re:Slabbed-or-not: Detect if your VPS container is running u...
by nailer on Thursday January 30, 2014 @10:19AM
(#7151054)
Would you have to be a kernel module to access the CPU directly?
Re:Slabbed-or-not: Detect if your VPS container is running u...
by aryastark on Thursday January 30, 2014 @02:09PM
(#7152690)
No. All binary programs access the CPU directly. Only certain instructions require being in a certain "ring" (i.e. access level). The CPUID instruction is non-privileged, meaning you can access it from user space.
In particular, the fact that it's using inline asm directly (for cpuid, ud2, some others). Maybe with 'as' but that's not exactly pure bash (and I suspect not embedding it in C would need a non-trivial main function anyway).
Reading an arbitrary memory address (for the cpuid scans) might be a bit tricky too, though it could be doable with /proc/$PID/mem.