Google为移动应用程序提升了Android密钥安全性

  • A+
所属分类:未分类

对数据加密方式的更改可以帮助开发人员避免数据泄漏和泄漏。

谷歌正在对其为Android移动开发者提供的工具进行一些调整,以提高其产品的安全性 - 在最近由于开发实践不力引发的安全问题的背景下发布了适当的声明。

Android Keystore本周的密码更改为开发人员提供了更多方法来防止敏感数据无意中暴露给其他应用程序或操作系统,并有助于防止数据泄漏。

Keystore为应用程序开发人员提供了一组基于硬件的加密工具,旨在通过基于密钥的系统保护用户数据。 开发人员可以使用密钥库来定义哪些应用程序“机密”被加密,以及在什么情况下可以解锁它们。

随着谷歌最新移动操作系统Android Pie的发布,开发人员现在能够通过阻止应用程序解密密钥来更好地保护敏感信息(如果用户未使用该设备)。

这是通过“keyguard-bound”加密密钥的实现来完成的,可以为开发人员选择的任何算法完成。 执行数据解密的这种密钥的可用性直接与屏幕锁定状态相关联; 因此,一旦设备被锁定,密钥就会变得不可用,并且只有在用户解锁设备时才能再次使用。

“有时移动应用程序会收到数据,但如果用户当前没有使用该设备,则无需立即访问数据,”Google Play研究人员周三在一篇帖子中表示。 “[现在]当屏幕被锁定时,这些密钥可用于加密或验证操作,但不可用于解密或签名。 如果设备当前使用PIN,模式或密码锁定,则任何使用这些密钥的尝试都将导致无效操作。“

此键盘锁绑定由操作系统强制执行(因为安全硬件无法知道屏幕何时被锁定),并且作为现有硬件强制Android Keystore保护功能的附加层。

另一项名为Secure Key Import的新功能可以保护敏感数据不被应用程序或操作系统看到 - 考虑到今年秋天早些时候报道的系统广播漏洞,这是一个及时的变化。

从技术角度来看,当远程服务器使用来自用户设备的公共包装密钥加密安全密钥时,安全密钥导入允许它还包含允许使用导入密钥的方式的描述,并确保key只能在属于生成包装密钥的特定设备的密钥库硬件中解密。

由于密钥在传输过程中是加密的并且对应用程序和操作系统保持不透明,因此可以防止它们被截获或从内存中提取,然后用于窃取数据。

为开发人员提供额外的措施,以帮助他们锁定他们的应用程序,以防止数据泄漏或数据泄漏的可能性是及时的; 最近,Android开发人员一直处于草率数据封存实践的热门席位。

更具体地说,在过去几个月中,利用跨进程信息泄漏的几种可能性被曝光。

开发人员面临的一个主要问题是与进程间通信有关。 虽然Android上的应用程序通常由操作系统彼此隔离并且与操作系统本身隔离,但仍然存在在需要时在它们之间共享信息的机制。 其中一个机制是使用Android所谓的“意图”。

应用程序或操作系统本身可以发送“意图”消息,该消息在系统范围内广播并且可以由其他应用程序监听。 如果没有适当的访问限制和围绕这些意图的权限,恶意应用程序可能会拦截它不应该访问的信息。 这个“API破坏”问题被证明可以打开一系列恶意活动的大门,包括流氓位置跟踪本地WiFi网络攻击

DEFCON揭示了另一个跨流程问题,研究人员证明,不遵守外部存储安全准则的邋Android Android开发人员可能会让攻击者破坏数据,窃取敏感信息甚至控制手机。

Android的外部存储机制在整个操作系统中共享,因为它旨在使应用程序能够将数据从一个应用程序传输到另一个应用程序。 因此,如果用户拍照并希望使用消息传递应用程序将其发送给某人,则外部存储是允许这种情况发生的平台。

如果开发人员没有锁定进入外部存储的数据类型,那么坏的角色可能会劫持特权应用程序和设备磁盘之间的通信,绕过沙箱保护以获取对应用程序功能的访问权并可能造成严重破坏。 这被称为“磁盘中的男人”问题,并很快被发现会影响一系列应用程序,包括Fortnite的Android应用程序

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: