The most dangerous code in the world: validating SSL certificates in non-browser software