Nov 05, 2013 (06:11 AM EST)
Android KitKat Security Teardown: 4 Hits, 1 Miss
Read the Original Article at InformationWeek
According to Google's developer overview, KitKat packs in "dozens of security enhancements to protect users" -- meaning bug fixes -- plus an experimental boot verification feature and better sandbox. Those features, plus the patches, have already been shared with handset manufacturers, carriers and the Android Open Source Project (AOSP).
Based on teardowns of that code, here's a rundown of the Android security changes -- including why they're important, and what they'll offer users -- as well as one glaring omission:
1. Verified Boot Combats Rootkits
Android 4.4 builds an optional -- and "experimental" -- verified-boot capability into the kernel. According to Google, the feature, dubbed device-mapper-verity (dm-verity), "helps prevent persistent rootkits that can hold onto root privileges and compromise devices."
[ Do you think BYOD presents special security challenges? See It's Not 'Mobile Security,' It's Just Security. ]
In particular, the feature can spot rootkits that have a more privileged access level than security tools, and which are thus able to fool those malware-detection programs. "The dm-verity feature lets you look at a block device, the underlying storage layer of the file system, and determine if it matches its expected configuration," according to Google. If the cryptographic hash of a program has changed, it means malware is likely at work.
While this feature is great news for stopping malware, kernel-level file system integrity validation could make life difficult for Android modders. "By verifying the integrity of the device's file system at a low level via cryptography, rooting the phone becomes a thing of the past for most devices that come with a locked-down bootloader," according a study of Android 4.4 conducted by the Romanian information security firm BitDefender. "This means that alternative ROMs such as CyanogenMod, Paranoid Android or others will have a hard time getting on devices other than developer or Nexus ones running stock Android."
2. Android Sandbox Gets SELinux Boost
Android 4.3 (Jelly Bean) saw the addition of the Linux security module known as security-enhanced Linux (SELinux), which was developed by the National Security Agency more than 10 years ago, and which allows a number of security policies -- including access controls -- to be enforced in Linux.
In Android 4.3, SELinux was available only in "permissive mode," meaning it was could only be used for logging purposes, rather than policy enforcement. With Android 4.4, however, SELinux can be used in "enforcing" mode, meaning its use can be made mandatory. As a result, the module can be used "to prevent privilege escalation attacks such as an application gaining root privileges over the device, regardless of the application's permissions," according to BitDefender.
3. Strong Crypto Improvements
Android 4.4 now has certificate pinning, which Google said "detects and prevents the use of fraudulent Google certificates used in secure SSL/TLS communications." In addition, Android now flashes a warning "if any certificate has been added to the device certificate store that could allow monitoring of encrypted network traffic."
Both features are designed to ensure that a digital certificate is the real deal -- not a fake planted to allow a third party to eavesdrop on the device. "Long story short, if a digital certificate for a specific site has been fraudulently obtained by either breaking into the [certificate authority] or by just tricking them into issuing a new certificate on somebody else's behalf, Android will notify the user that the certificate's fingerprint does not match what Google has on record," according to BitDefender.
But that security improvement may also make life difficult for intrusion detection systems. "This is a welcome mitigation against man-in-the-middle attacks, but will also make traffic scanning via SSL more difficult for security solutions running in enterprises," said BitDefender.
4. Per-User VPN
Another security improvement is the inclusion of a VPN which -- on multiuser devices, meaning tablets -- can be applied on a per-user basis. "This can allow a user to route all network traffic through a VPN without affecting other users on the device," according to Google.
But there is a caveat. "The downside is that -- from what we see with the AOSP build -- VPN settings are only available for the first tablet user, while other users have to do without VPN at all," according to BitDefender.
5. Finally, Individual App Permission Controls -- Not
One notable omission from Android 4.4 was the promised ability to review the permissions being used by apps, and to revoke them on an app-by-app basis.
"Back in Android 4.3, Android introduced a feature that was supposed to let users individually deny or allow permissions for every application installed on the device," according to BitDefender. "The feature, buried inside an activity called App Ops, was something both average users and security companies have been demanding for years and it would have been for sure nice to have it introduced in KitKat."
Now, however, App Ops appears to have been excised completely, following an Aug. 2, "completely remove app ops activity" change to the Android code base made by Google.
A Google spokeswoman didn't immediately respond to an emailed request for comment on the status of the App Ops feature.
Numerous Security Upsides
The uncertain status of App Ops notwithstanding, the KitKat security enhancements are good news for Android fans. As always, users of older Android devices may have to wait for weeks or months -- or forever, in the case of some particularly laggard carriers and manufacturers -- to see a KitKat update for their devices. But everyone else, including buyers of many new Android smartphones and tablets, will get KitKat installed by default, and from a security standpoint, benefit accordingly.