{"id":8981,"date":"2017-08-29T10:30:07","date_gmt":"2017-08-29T18:30:07","guid":{"rendered":"http:\/\/www.palada.net\/index.php\/2017\/08\/29\/news-2754\/"},"modified":"2017-08-29T10:30:07","modified_gmt":"2017-08-29T18:30:07","slug":"news-2754","status":"publish","type":"post","link":"http:\/\/www.palada.net\/index.php\/2017\/08\/29\/news-2754\/","title":{"rendered":"Android 8.0 in-depth: Oreo&#039;s not-so-obvious security enhancements"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/images.idgesg.net\/images\/article\/2017\/08\/android-8-oreo-security-100733763-large.3x2.jpg\"\/><\/p>\n<p><strong>Credit to Author: JR Raphael| Date: Tue, 29 Aug 2017 10:01:00 -0700<\/strong><\/p>\n<p>When you read about a splashy new software update like Google&#8217;s fresh-from-the-oven <a href=\"http:\/\/www.computerworld.com\/article\/3218154\/android\/android-80-oreo.html\">Android 8.0 Oreo<\/a> release, you tend to hear mostly about the marquee features \u2014 the most <a href=\"http:\/\/www.computerworld.com\/article\/3219126\/android\/oreo-android-8.html\">attention-grabbing elements and refinements<\/a> you&#8217;re likely to notice <a href=\"http:\/\/www.computerworld.com\/article\/3215085\/android\/when-will-phone-get-android-o.html\">when you get the update<\/a> on your own device.<\/p>\n<p>It&#8217;s understandable, since those are the things we all see most immediately and directly. Beneath the surface, though, Oreo has some pretty significant stuff going on in the realm of security \u2014 stuff that hasn&#8217;t been widely covered\u00a0but is as important as anything else to understand.<\/p>\n<p>Some of it&#8217;s fairly technical and much of it&#8217;s the sort of info you&#8217;d probably never encounter if you didn&#8217;t frequent developer-targeted talks and forums. But all of it affects your phone&#8217;s ability to keep you safe from theoretical threats \u2014 and all of it is worthwhile to be aware of.<\/p>\n<p>Here are the high points, translated from mumbo jumbo into practical, plain-English terms.<\/p>\n<p>Whenever you install a new app, you grant it permission to access certain types of data and perform certain types of functions on your device. (You know when you first run an app, and it shows you a bunch of info \u2014 all those prompts you hit &#8220;OK&#8221; on without paying close attention? Yeah, that&#8217;s the stuff.) With Oreo, Android is rethinking a couple of those permissions and scaling back what apps are allowed to do.<\/p>\n<p>Up first is a permission for generating something called a System Alert Window. It&#8217;s ostensibly for displaying, y&#8217;know, system alerts \u2014 but over time, it&#8217;s been adopted for a variety of other overlay-oriented purposes. Some apps use it to provide picture-in-picture-like elements that float on top of other apps, for instance, while password management utilities have traditionally used it to generate pop-up boxes for filling in forms across the operating system.<\/p>\n<p>That&#8217;s all well and good, but Google realized the same System Alert Window permission actually raised the potential for abuse. Randomware apps could essentially use it to take over your screen and trick you into providing sensitive info or clicking on questionable links to escape.<\/p>\n<p>Oreo addresses this by introducing some new System Alert Window limits. Specifically, the contents of such windows can no longer cover up critical areas of your screen like your status bar or lock screen, and a new persistent notification now appears whenever an overlay is present so you always have a built-in way to dismiss it and move on.<\/p>\n<p>Another long-standing Android permission, Device Admin, is also being restricted as of Oreo so that apps can no longer use it to prevent themselves from being uninstalled or to alter your system password \u2014 again, with the goal of reducing the potential for abuse by any ill-intending apps.<\/p>\n<p>So why did the broader versions of the permissions stick around for so long? That&#8217;s what I wondered, too. I had the chance to ask Xiaowen Xin, Google&#8217;s product manager for Android platform security. Xin says that in some cases, Google recognized the legitimate ways developers wanted to use the permissions and wanted to make sure those use-cases were covered \u2014 by implementing <a href=\"http:\/\/www.computerworld.com\/article\/3218154\/android\/android-80-oreo.html#pip\">a proper picture-in-picture option<\/a> and <a href=\"http:\/\/www.computerworld.com\/article\/3218154\/android\/android-80-oreo.html#autofill\">native auto-fill function<\/a>, in the case of Oreo and the System Alert Window \u2014 before introducing any limits.<\/p>\n<p>&#8220;Android comes from a stance of trying to be more open, and we&#8217;re trying to provide APIs that in some cases are for power users,&#8221; Xin explains. &#8220;It&#8217;s a constant challenge for us and that&#8217;s unique to Android of balancing how to protect users and [yet still providing advanced] functionality.&#8221;<\/p>\n<p>Android has had a Verified Boot system since 2013, when KitKat was the name of the day. From its beginning, the system has checked your phone&#8217;s software every time your device starts up to make sure everything&#8217;s in proper working order.<\/p>\n<p>With Oreo, the system is expanding: In addition to performing the standard startup checks, Android&#8217;s Verified Boot feature will now prevent your device from starting if it&#8217;s been rolled back to an older and thus less secure version of the operating system.<\/p>\n<p>Why? Simple: Such protection would prevent anyone from taking control of your device and manually downgrading you to a previous version of Android in order to exploit an old bug that&#8217;s patched in the more\u00a0current version.<\/p>\n<p>&#8220;Once you reboot, you&#8217;d actually be clean again \u2014 so any exploit would no longer be running on your phone,&#8221; Xin says.<\/p>\n<p>Oreo also supports the ability for the secure hardware area of a device to generate a statement guaranteeing that the system has passed that Verified Boot check <em>and <\/em>has a reasonably recent Android security patch. That could be utilized by something like a bank \u2014 to ensure a device hasn&#8217;t been compromised before granting access to a customer \u2014 or even an enterprise, to confirm with near-certainty that its employees&#8217; phones are secure.<\/p>\n<p>Ready for more? Oreo introduces support for new tamper-resistant hardware \u2014 so basically, the same sort of chip that stores sensitive info in a modern credit card could store your PIN, pattern or password on a future Android phone. That info is already stored in an area known as the Secure Element, but moving it to the chip makes it even more difficult for someone to perform a physical attack on your device and get around your lock screen.<\/p>\n<p>So what about fingerprint data? That&#8217;s precisely what I wondered, too. (You and I are just on the same page today, aren&#8217;t we? We really oughta hang out more often.) Turns out biometric security info like your pawprints <em>aren&#8217;t<\/em> included in the new chip-based system \u2014 because the tradeoff of the system&#8217;s added security is reduced speed. In other words, it&#8217;s slower than the regular method of authentication, and Google doesn&#8217;t want you to have to wait multiple seconds for your pointer to be recognized.<\/p>\n<p>But for an enterprise scenario where bulletproof security trumps everything else in importance, it&#8217;s easy to see how this capability could be beneficial.<\/p>\n<p>This isn&#8217;t the playground kind of sandbox fun (though if you&#8217;re reading this while in a sandbox, kudos to you, sir and\/or madam). Android has long utilized sandboxing to keep different parts of the operating system in their own isolated areas \u2014 so that if something does manage to infect one part of the software, it won&#8217;t be able to reach another.<\/p>\n<p>With Oreo, the effort expands on a few different levels. First, there&#8217;s Project Treble \u2014 you&#8217;ve heard of it, right? Treble isolates the device-independent parts of the operating system from the device-dependent parts of the operating system. Much of the focus thus far has revolved around how this separation could (theoretically, <a href=\"http:\/\/www.computerworld.com\/article\/3196830\/android\/google-android-upgrades-project-treble.html\">with some asterisks<\/a>) make it easier for manufacturers to process and send out Android OS updates, but there&#8217;s an equally important factor in its effect on security. Remember? Sandboxing.<\/p>\n<p>&#8220;If you have an exploit in one [area], it&#8217;s now harder for that to affect a different part of the operating system,&#8221; Xin says.<\/p>\n<p>Android 8.0 also sandboxes apps more closely with something called a seccomp filter (gesundheit!). For the non-engineers among us, the short version is that this makes it more difficult for a naughty app to do anything dangerous to the kernel \u2014 the operating system&#8217;s brain or command center, in the simplest possible terms \u2014 by limiting the ways in which apps can interact directly with it. (If you want the full technical version, you can find it <a href=\"https:\/\/android-developers.googleblog.com\/2017\/07\/seccomp-filter-in-android-o.html\" target=\"_blank\">here<\/a>. Godspeed.)<\/p>\n<p>Last but not least, Android&#8217;s WebView function \u2014 which allows developers to show you web-based content within their apps \u2014 moves to its own separate process as of Oreo. That means if you run into some sort of web-based bug while viewing a site within an app, it shouldn&#8217;t be able to reach or affect any other areas of the operating system. Sandboxing. Again.<\/p>\n<p>Got all that? Good. Let&#8217;s move on.<\/p>\n<p>This point&#8217;s relatively minor, but if you&#8217;re using Android in an enterprise environment, it&#8217;s significant: As of Android 8.0, all devices use a different key for encrypting personal profiles and work profiles. And beyond that, the device administrator has the ability to activate the work profile key remotely and make sure work data is fully secured anytime, anywhere.<\/p>\n<p>Oh, and a tantalizing tease: Google is working on &#8220;a lot more&#8221; with encryption for 2018&#8217;s Android P release, Xin says. So stay tuned.<\/p>\n<p>Last but not least: If you&#8217;re using two-factor authentication to protect your accounts (and you <a href=\"http:\/\/www.computerworld.com\/article\/3012630\/android\/android-security-audit.html#8\">absolutely should be<\/a> \u2014 c&#8217;mon!), Oreo allows you to use a <a href=\"https:\/\/support.google.com\/accounts\/answer\/6103523?co=GENIE.Platform%3DAndroid&amp;hl=en\" target=\"_blank\">physical security key<\/a> as your second form of authentication. Just connect your key to your Android device via Bluetooth, NFC or USB, and you won&#8217;t have to find and input the usual two-factor code when you sign into a secured account.\u00a0<\/p>\n<p>The asterisk is that this is available via a new API \u2014 so that means it&#8217;ll be up to individual apps to support it as a feature, and you won&#8217;t find many places where it&#8217;ll work just yet. Long-term, though, it could be a relevant addition for security-minded users who don&#8217;t mind carrying an extra contraption for convenience.<\/p>\n<p>And a bonus: This update is actually being delivered via Google Play Services, so it&#8217;ll apply to devices running software all the way back to Android 5.0 (Lollipop) or higher. Google tells me it&#8217;ll eventually be supported at the system level, too, for adding two-factor-protected Google accounts onto your device.<\/p>\n<p>From a bigger picture perspective, of course, Android security is a puzzle with lots of moving pieces. All the stuff we&#8217;re talking about here works alongside a <a href=\"http:\/\/www.computerworld.com\/article\/3210587\/android\/google-play-protect-android.html\">multilayered system for scanning and protection<\/a> \u2014 one that&#8217;s present and functional on practically every reasonably recent Android device\u00a0\u2014 and is supplemented by monthly security patches to fill in the gaps between OS releases.<\/p>\n<p>When it comes to both security and mobile software, the evolution never ends.<\/p>\n<p><strong>[<a href=\"http:\/\/www.computerworld.com\/article\/3218154\/\">Android 8.0: The complete Oreo FAQ<\/a>]<\/strong><\/p>\n<p><a href=\"https:\/\/www.computerworld.com\/article\/3220446\/android\/android-8-oreo-security.html#tk.rss_security\" target=\"bwo\" >http:\/\/www.computerworld.com\/category\/security\/index.rss<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/images.idgesg.net\/images\/article\/2017\/08\/android-8-oreo-security-100733763-large.3x2.jpg\"\/><\/p>\n<p><strong>Credit to Author: JR Raphael| Date: Tue, 29 Aug 2017 10:01:00 -0700<\/strong><\/p>\n<article>\n<section class=\"page\">\n<p>When you read about a splashy new software update like Google&#8217;s fresh-from-the-oven <a href=\"http:\/\/www.computerworld.com\/article\/3218154\/android\/android-80-oreo.html\">Android 8.0 Oreo<\/a> release, you tend to hear mostly about the marquee features \u2014 the most <a href=\"http:\/\/www.computerworld.com\/article\/3219126\/android\/oreo-android-8.html\">attention-grabbing elements and refinements<\/a> you&#8217;re likely to notice <a href=\"http:\/\/www.computerworld.com\/article\/3215085\/android\/when-will-phone-get-android-o.html\">when you get the update<\/a> on your own device.<\/p>\n<p>It&#8217;s understandable, since those are the things we all see most immediately and directly. Beneath the surface, though, Oreo has some pretty significant stuff going on in the realm of security \u2014 stuff that hasn&#8217;t been widely covered\u00a0but is as important as anything else to understand.<\/p>\n<p class=\"jumpTag\"><a href=\"\/article\/3220446\/android\/android-8-oreo-security.html#jump\">To read this article in full or to leave a comment, please click here<\/a><\/p>\n<\/section>\n<\/article>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout","footnotes":""},"categories":[11062,10643],"tags":[10462,10554,10463,714],"class_list":["post-8981","post","type-post","status-publish","format-standard","hentry","category-computerworld","category-independent","tag-android","tag-mobile","tag-mobile-security","tag-security"],"_links":{"self":[{"href":"http:\/\/www.palada.net\/index.php\/wp-json\/wp\/v2\/posts\/8981","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.palada.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.palada.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.palada.net\/index.php\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"http:\/\/www.palada.net\/index.php\/wp-json\/wp\/v2\/comments?post=8981"}],"version-history":[{"count":0,"href":"http:\/\/www.palada.net\/index.php\/wp-json\/wp\/v2\/posts\/8981\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.palada.net\/index.php\/wp-json\/wp\/v2\/media?parent=8981"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.palada.net\/index.php\/wp-json\/wp\/v2\/categories?post=8981"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.palada.net\/index.php\/wp-json\/wp\/v2\/tags?post=8981"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}