百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

Android 7.0 四大新改进(android系统7.0)

toyiye 2024-07-06 23:49 12 浏览 0 评论

搜索加关注Google官方微信公众号『谷歌开发者』。与谷歌一起创造未来!

今年夏季,我们预览了 Android 7.0 Nougat 中的各种安全性增强功能(查看详情可点击下方蓝字):

  • 更加注重安全性的漏洞奖励计划

  • 全新的直接启动模式

  • 重新设计的媒体服务器和加固的媒体栈

  • 防止应用意外退回至明文通信

  • 对 Android 处理受信任的证书颁发机构的方式所作的更新

  • 严格执行纠错验证启动

  • 以及旨在减少攻击面并加强内存保护的 Linux 内核更新

真是太棒了!

如今,Nougat 已经开始部署,我们想简要回顾一下这些更新并重点介绍几项新的改进。

直接启动和加密

在之前的 Android 版本中,在启动过程中,默认情况下,使用加密设备的用户必须输入自己的 PIN 码/图案/密码对存储区进行解密并完成启动。在 Android 7.0 Nougat 中,我们更新了底层加密方案并精简了启动过程,从而加快手机的重启。目前,手机的主要功能(例如电话应用和闹钟),在未键入 PIN 码之前便已准备就绪,这样,人们可以打电话给您,闹钟可以唤醒您。我们将这项功能称之为直接启动。

从底层技术来讲,基于文件的加密实现了这项用户体验的改进。通过这种新的加密方案,系统存储区以及每一个用户配置文件存储区都是单独加密的。与将所有数据整体加密的全盘加密不同,采用基于配置文件的加密,系统只需使用设备密钥即可正常重启进入正常运行状态。基本应用可以选择重新启动之后以受限状态运行,当您输入锁屏凭据之后,这些应用可以访问您的用户数据,以提供完整的功能。

基于文件的加密方案对数据进行更精细的加密,从而更好地隔离和保护设备上的各个用户和配置文件。每个配置文件使用唯一密钥进行加密,只能通过 PIN 码或密码解锁,因此,您的数据只能由您来解密。

整个 Android 生态系统对加密的支持也越来越给力。从 Marshmallow 开始,要求所有有条件的设备都支持加密。许多设备(如 Nexus 5X 和 6P)也使用只有通过受信任硬件(如 ARM TrustZone)才能访问的唯一密钥。如今,使用 7.0 Nougat,所有有条件的新 Android 设备也必须能够为密钥存储提供这种硬件支持,从而提供强力保护,只有通过锁屏凭据验证后,才可以使用这些密钥。这样,您所有的数据都只能在本机解密,而且只能由您来解密。 媒体栈和平台加固

在 Android Nougat 中,我们已加固并重新设计了媒体服务器,媒体服务器是处理不信任输入的主要系统服务之一。

首先,通过合并整型溢出处理(为 Clang 的 UndefinedBehaviorSanitizer 的一部分),我们封堵了一整类漏洞,大多数已报告的 libstagefright 错误均属此列。一旦检测到整型溢出,我们就关闭该进程,从而阻止攻击。其次,我们对媒体栈进行了模块化,将不同组件分别放入不同的沙盒中,同时限制每个沙盒只具有执行其功能所需的最低权限。通过这种遏制技术,攻击者通过侵入媒体栈众多区域中的某一处所获得的访问权限相比以前大大减少了,暴露的内核攻击面也随之显著减少。

除了加固媒体服务器之外,我们还为平台增加了大量保护功能,包括:

  • 验证启动:目前,严格执行验证启动以阻止遭到入侵的设备启动;它支持纠错功能,从而减少了非恶意数据的损坏,提升了可靠性。

  • SELinux:更新了 SELinux 配置,扩大了 Seccomp 作用范围,从而进一步锁定应用沙盒,减少攻击面。

  • 库加载顺序随机化和改进的 ASLR:增大随机性降低了某些代码重用攻击的有效性。

  • 内核加固:通过将内核内存部分标记为只读、限制内核访问用户空间地址以及进一步减少现有攻击面,为新内核提供额外的内存保护。

  • APK 签名方案 v2:引入全文签名方案,可提高验证速度和加强完整性保证。

应用安全性改进

Android Nougat 是供应用开发者使用的最安全、最简单的 Android 版本。

  • 现在,希望与其他应用共享数据的应用必须通过内容提供程序(如FileProvider)来提供文件,从而显式加入共享。对于 API 级别 24 以上的应用,应用私有目录(通常为 /data/data/)的 Linux 权限现在设置为 0700。

  • 为了使应用更容易控制对其安全网络流量的访问,对于 API 级别 24 以上的应用,由用户安装的证书颁发机构以及通过 Device Admin API 安装的证书颁发机构在默认情况下不再受信任。此外,所有新的 Android 设备必须出厂时配置相同的受信任 CA 存储。

  • 借助网络安全性配置,开发者可以通过声明式配置文件更轻松地配置网络安全策略。其中包括阻止明文通信、配置一组受信任的 CA 和证书,以及设置一个独立的调试配置。

我们还会继续完善应用权限和功能,以防止您遭受潜在的有害应用的危害。

  • 为了加强设备的隐私保护,我们已经进一步限制和取消对永久性设备标识符(如 MAC 地址)的访问。

  • 权限对话框上不会再重叠显示用户界面。有些应用使用这种“点击劫持”技术,试图非法获取权限。

  • 我们已经降低了设备管理应用的权限,如果您已设置锁屏保护,该应用将无法再改变您的锁屏设置;如有禁用请求,将不再通过 onDisableRequested() 通知设备管理应用。以上是某些劫持软件用来控制设备的手段。

系统更新

最后,我们大幅增强了 OTA 更新系统,让您的设备始终拥有最新的系统软件和安全补丁,从而更轻松地保持最新状态。我们加快了 OTA 安装速度,缩小了 OTA 安全更新文件的大小。您不必再等待应用优化步骤,这是更新过程中最慢的步骤之一,因为新的 JIT 编译器已经进行了优化,使安装和更新快如闪电。

对于已更新固件、运行 Nougat 的新 Android 设备,更新体验甚至更快。就像 Chromebook 一样,更新将在后台执行,设备仍继续正常运行。这些更新应用于不同的系统分区,当您重新启动时,它会无缝切换到运行新系统软件版本的新分区。

我们正在不断努力加强 Android 的安全性,Android Nougat 在安全性方面实现了全方位的显著改善。我们一如既往地感谢您对我们工作的反馈,欢迎就改进 Android 提供宝贵建议。请通过security@android.com 联系我们。

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码