No-permission Android App Gives Remote Shell
viaforensics.com
viaforensics.com
The basic problem is that the permissions model is very leaky; there are lots of ways to work around it, by sending intents to other apps that have more permissions, by relying on certain OS services to call you in a more privileged way, by providing custom notifications that display on top of everything, and so on.
For instance, even if you don't request internet permissions, you can still open a URL, with whatever data you want to send encoded in the URL; and you can even do this in sneaky ways that the user can't detect if you're careful (only doing so when the screen is off, for instance, and redirecting to Google so they don't see anything odd when you turn the screen back on). And you can register a URL handler, that the page can redirect to, to communicate back to your app.
I'm guessing the exploit in the article is pushing this method to the next level.