I frequently hear about the security risks of using Android. But few people who write articles on this subject ever identify what parts of Android are at fault, nor do they identify design flaws. Can someone please point me to any sober and level headed explanation of what is ultimately wrong with Android security at the lowest level e.g. Dalvik and libraries and the kernel? Thanks.
The majority of the time that you read or hear about android malware it is in reference to a legitimate android app (apk) that does not actually exploit the android OS. Instead the malware behaves in a malicious fashion. One example is a fake security application which would subscribe the victim to premium text messaging services.
Many other times you will find a cracked app that just has additional ad services placed in it. Cracked apps are typically premium apps that were pirated. These apps are often published on third party stores and not in Google Play.
There is some malware that does use a known exploit. One example is a recompiled version of Angry Birds that received instructions from a Command and Control server. This sample used the GingerBreak exploit. Note that GingerBreak is/was used intentionally by users that wanted to 'root' or unlock their phones.
For a list of known android security bugs see this list of CVEs.
Android malware is a mix of apps that utilize OS exploits and apps that use all legitimate API calls just in a malicious way. If you want to avoid them pay close attention to the permissions of the apps that you install, think about getting a (reputable) antivirus from Google Play and avoid third party app stores with pirated apps. Finally in newer versions of android select "Verify Apps" in the security settings. This will act as a basic anti virus.