Android N如何限制重置密码以遏制勒索软件

Android N安全特性概览

AndroidN即Android7.0,代号“牛轧糖”,是Google于2016年7月份推出的最新版智能手机操作系统。AndroidN带来了诸多新特性与功能,它们将对系统整体性能进行提升,特别对安全性进行了强化。

图1给出了AndroidN带来的主要变更,一方面,AndroidN对部分原有功能进行了优化,如应用程序编译、电池与内存管理、通知功能、无障碍功能等;另一方面,AndroidN也引入了诸多新特性,如多窗口支持与VulkanAPI等。

图1Android N主要行为变更

AndroidN的诸多新特性归根结底是为了增强系统安全性、提升用户体验。为了应对层出不穷的恶意木马和不断完善Android系统安全机制,Google还对Android系统的安全性进行了诸多优化,这些优化主要涉及系统权限、应用间文件共享以及Androidfor
Work三方面的内容:

1.系统权限变更

弃用GET_ACCOUNTS权限。AndroidN之前,开发者通过AccountManager的getAccounts()方法获取设备上账户信息之前必须保证已申请GET_ACCOUNTS权限;而AndroidN弃用了该权限,开发者可以在不申请GET_ACCOUNTS的情况下访问设备上的账户信息。

新增OPEN_EXTERNAL_DIRECTORY行为。与原先申请WRITE_EXTERNAL_STORAGE权限后即可写外部存储不同的是,在AndroidN中,开发者首先需要通过该Action在外部存储中申请创建一个可写目录,方可对外部存储进行写操作,这种方式进一步加强外部存储的安全性能。

2.应用间文件共享

应用私有目录被限制访问(0700),文件所有者将无法通过设置私有文件访问模式为MODE_WORLD_READABLE与MODE_WORLD_WRITEABLE来开放私有文件的读写权限;此外,通过file:///URI也将无法访问到应用包之外的路径;同时DownloadManager将不能通过文件名来共享私有文件的信息。若要在应用间共享文件,开发者可以发送一项content://URI,并授权URI的临时访问权限。进行此授权的最简单方式是使用FileProvider类。这一改变有效确保了共享文件的安全问题。

3.Android for Work

主要涉及证书安装、重置密码、二级用户管理以及设备标识符访问权限的变更;

除了上述三个方面外,AndroidN还引入了新的开机验证机制,在设备开机时首先会验证系统文件完整性,一旦检测到系统文件被篡改(或者是引导镜像存在被修改的痕迹),则禁止系统启动或限定部分功能(实际上在AndroidM时代,系统也会进行完整性检查,但AndroidM在检测到系统被篡改时只是以弹窗形式提醒用户,而不会采取进一步措施)。AndroidN的新开机验证机制将直接影响到设备Root的困难程度,因为在Root过程中通常以修改系统文件的方式来提升用户权限。从这个角度来看,新的开机验证机制在某种程度上提高了系统的安全性。

AndroidN在用户层与系统层上的安全机制调整增强了设备的安全性。在系统层面,通过限制对私有文件的访问,强化了应用间的隔离效果,进一步保护了应用程序私有数据的安全;在用户层面,通过严控证书安装流程、限制重置密码等操作来降低由非法证书、锁屏勒索类木马带来的威胁。

我们以Androidfor Work对锁屏勒索类木马发展趋势产生的影响为例来深入分析安全新特性。

锁屏勒索类木马现状

锁屏勒索类木马是让Android用户头疼的恶性问题之一,网络上也频频爆出Android用户遭遇各类锁屏勒索的新闻及其引发的相关讨论。

图2Android锁屏勒索问题频现

Android手机锁屏勒索类木马主要是通过操作用户开机密码从而强制锁定用户手机,使得用户无法正常使用手机,并以此威胁用户进行付费解锁,用户只需按照恶意软件的提示进行指定操作。从技术角度看,锁屏勒索类木马主要利用了特殊悬浮窗、Activity劫持、屏蔽虚拟按键、设置手机PIN码和修改系统文件等方式以达到强制多屏的效果。

2016年前三个季度捕获锁屏勒索类木马11.1万余个,与2015年同季度对比发现,2016年一季度呈现出爆发式增长,同比增长767%;2016年二季度同比增长360%;2016年三季度同比增长56%,如图3所示。由图4可以看到,直接与重置密码相关的锁屏勒索类木马在这类木马中占了很大比重。这既足以反映出锁屏勒索类木马已成为Android安全的重灾区,也表现出重置密码是这类木马的最常采用的手段,同时这类木马展现的巨大利益诱惑吸引着大量的木马作者,无形中给广大用户带来了巨大的安全隐患。

图32015和2016年同季度Android锁屏勒索类木马数量对比

图4锁屏勒索木马中设置锁屏密码勒索木马占比

重置密码特性变更

图5给出了一个Android手机上的锁屏勒索类木马示例,可以看出木马运行后首先会要求获取设备管理权限,用户按要求激活设备管理器后则会发现手机立刻被强制锁屏,并且锁屏界面出现了“提示性”语句,用户根据“提示性”信息向指定账户支付一定金额后才能取得新密码解锁进入手机桌面。

图5Android锁屏勒索木马示例

1.锁屏勒索类木马实现重置密码

Android
N之前,通过操作设备管理器可以很容易地实现重置密码,只需调用设备管理器DevicePolicyManager提供的resetPassword(Stringpassword,
int
flags)接口,其中password为新的密码。图6所示为勒索木马重置密码的代码:首先需要为设备管理器添加reset-password动作,然后只要监听到用户激活设备管理器便立即调用resetPassword接口进行重置密码进而锁定用户的手机,如图6所示。

图6勒索软件示例代码

2.Android N中的resetPassword接口

与Android N之前版本可任意设置或重置设备密码不同的是,AndroidN中明确规定,第三方应用开发者只能使用DevicePolicyManager.resetPassword为无密码设备设置初始密码,而不能重置或清除已有的设备密码。

若设备当前没有密码,如图7( 左)所示,此时可以调用resetPassword方法成功设置锁屏密码,如图7(右)。

图7成功设置密码

若设备已有密码,当尝试调用resetPassword方法重置锁屏密码时,系统会抛出SecurityException异常,并提示“Admincannot change current password”,如图8所示。

图8修改已有密码失败

从上述内容可以看到,AndroidN中对于resetPasswordAPI所添加的限制能阻止木马对已有锁屏密码的重置,从而使得部分勒索软件失效。

小结

1.在Android N中,锁屏勒索类木马只能利用系统提供的重置密码API来设置设备的初始密码,而不能用来修改已有密码,这也就意味着那些从不设锁屏密码的用户仍然会处在危险之中,由此可见用户养成主动设置锁屏密码等良好习惯对提高设备安全性而言非常重要;

2.由于在针对Android N以下版本的锁屏勒索类木马中,重置密码相关的木马占比较大,因此AndroidN对该API的使用限制将会大幅缩小锁屏勒索类木马的影响范围;

3.面对此种对重置密码功能的限定,锁屏勒索类木马可能会另辟蹊径,比如结合伪装、诱导等其他手段来扰乱用户正常使用设备,以达到敲诈勒索的目的。对此我们会继续关注,让用户更安全地使用手机。

作者:佚名

来源:51CTO

时间: 2024-11-02 23:23:27

Android N如何限制重置密码以遏制勒索软件的相关文章

Android 7.1 内置“一键清理内存”功能,专治流氓勒索软件

本文讲的是Android 7.1 内置"一键清理内存"功能,专治流氓勒索软件, 在打击Android恶意勒索软件上,Google最近迈出了一大步,它推出的一项隐藏新功能,让用户在中招后还能保持对设备的控制权. XDA论坛的开发者发现,Android 7.1新增了一个紧急模式,可以通过连续四次短按后退按钮来触发.当激活紧急模式后,设备会回到桌面界面,关闭所有正在运行的应用程序,不受它们的锁定限制. 紧急模式连续短按的最大触发时间是0.3秒,也就是说,一秒内大概要按下四次后退按钮才能触发,

针对Android的勒索软件攻击在一年多的时间里增长了50%

趋势科技进行的一项调查发现,针对Android操作系统的勒索攻击在短短一年内增长了超过50%,因为越来越多的消费者从他们的PC切换到他们的智能手机,使移动操作系统生态系统成为网络犯罪分子更有价值的目标. 根据安全公司ESET的报告,加密恶意软件攻击的最大峰值来自2016年上半年.还发现锁定屏幕上的所谓"警察勒索软件"一直是Android平台上勒索软件的主要类型,可以有效地吓唬一些受害者,这类软件声称受害者犯罪,这导致许多人向攻击者支付所谓赎金. 除此之外,研究人员还发现,犯罪者通过将恶

谷歌:正规预装Android系统不会感染勒索软件

Google表示正规Android 系统不太可能感染勒索软件,这个平台上的受感染率比被闪电击中两次的几率还低.Android安全性高级项目经理Jason Woloz说:"自2015年以来,用户因为从Google Play商店下载而感染勒索软件的几率低于0.00001%,而从Google Play之外其它商店下载而感染勒索软件的几率低于0.01%. 勒索软件是一种应用程序,限制人们访问设备,直到受害者支付一笔钱,最常见的是比特币.它们通常存在于限制设备访问和需求支付的应用程序中,并且加密设备外部存

绿盟科技网络安全威胁周报2017.18 ​WordPress 远程代码执行/非授权重置密码漏洞CVE-2017-8295

绿盟科技发布了本周安全通告,周报编号NSFOCUS-17-18,绿盟科技漏洞库本周新增36条,其中高危5条.本次周报建议大家关注 WordPress 远程代码执行/非授权重置密码漏洞 . CVE-2016-10033是之前phpmailer在不同场景下的新利用,漏洞可使未经身份验证的远程攻击者在Web服务器用户上下文中执行任意代码,远程控制目标web应用.CVE-2017-8295存在于WordPress 4.7.4之前版本,远程攻击者通过构造密码重置请求,并伪造Host HTTP标识头,可以获

阿里云如何重置密码

阿里云如何重置密码 如果您在创建实例时候没有设置密码,或者忘记密码,您可以重新设置实例的密码. Windows 实例的默认用户名是 Administrator Linux 实例的默认用户名是 root 操作如下: 登录云服务器管理控制台. 单击左侧导航栏中的 实例 . 单击页面顶部的地域. 选择需要的实例.可以多选,但是所选实例的状态必须一致. 单击 重置密码 . 在弹出的提示框中,输入新密码,单击 提交 . 获取并输入手机验证码.单击 确定 . 选中刚刚重置密码的实例,然后单击 重启 . 重置

WIN8平板电脑如何重置密码?

       为了保护个人隐私给自己一点安全空间,我们大多会为自己的PC机或WIN8平板电脑设置密码,假如不幸忘记了WIN8平板电脑的密码怎么办?WIN8平板电脑可以重置密码吗?下面小编就告诉大家WIN8平板电脑如何重置密码. 初始化电脑可重设WIN8平板电脑密码 在生活中,我们都会有这些习惯,比如电脑设置密码.手机设置密码反正能设置密码都会设置.这也是一个好的习惯,如果我们忘记了该怎么办?其实解决方法非常简单,只需三步即可解决.下面小编就给大家作演示看看WIN8平板电脑如何重置密码. 第一步:

效能日记本怎么重置密码?

  用户可以重新设置密码,如上图所示,用户在初次设置密码后,如果需要重新设置密码可以通过单击"文件->密码"选项,打开下图所示的重置密码界面进行重新设置.

android-如何获取Android中所有账号的密码?

问题描述 如何获取Android中所有账号的密码? 我想要获取我的android系统中所有账号的密码,编了下面的代码,没实现: AccountManager am = AccountManager.get(this); Account [] acc = am.getAccounts(); if (acc.length > 0){ for (int i=0; i<acc.length; i++){ String password = am.getPassword(acc[i]); listedA

windows azure的 windows2008 虚机如何重置密码

问题描述 windows azure的 windows2008 虚机如何重置密码 windows azure的 windows2008 虚机如何重置密码 解决方案 Hi, 据我所知目前我们无法在门户网站上重置密码,我们可以通过PowerShell的方式来实现,详细步骤请阅读中国版Azure的官方网站:http://www.windowsazure.cn/documentation/articles/virtual-machines-windows-reset-password/,需要注意以下几点