Detecting VMs Co-residency in the Cloud: Using Cache-based Side Channel Attacks