Say you have a virtual machine at one of the larger hosting companies. You're sharing a system with some unknown number of other users. Wouldn't it be nice to be able to chat with people from the other VMs on the machine? Assume that the hosting company doesn't particularly want you do to this; they prefer you don't know that the machine's CPU is split 30 ways and that you're migrated to a new, random machine every night at 3 am.

I wonder how to accomplish this? The coolest hack would be to frob some kind of available on-machine data source that the other users could watch. This basically requires finding and exploiting a minor security hole, though.

Maybe a centralised registry would be better, if there's some way to uniquely identify a given host machine from inside the VM. Focusing on xen, I think enough data is leaked to make this possible.

  • /proc/cpuinfo
  • uname -a
  • /sys/hypervisor/compilation/*
  • /sys/hypervisor/properties/*

This should at least narrow it down to a set of similar boxes at a given hosting company, and then you can start looking at the network..


On a not-unrelated note, this diversidial system is way cool. 300 baud via telnet! I especially like the use of an ipod as a tape drive for booting the Apple IIe.

discussion