效率源数据恢复论坛

 找回密码
 免费注册

QQ登录

用新浪微博登录

快捷导航
查看: 1458|回复: 0
打印 上一主题 下一主题

一种有效判定智能手机是否Root成功的方法

[复制链接]

646

主题

809

帖子

3587

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
3587
跳转到指定楼层
楼主
发表于 2017-1-23 18:04:41 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
【文章来源:效率源科技(微信号)】微信号:xiaolvyuantech1

      编者按:在手机电子数据取证过程中,获取手机Root权限有重要意义。由于取证人员往往使用不同的第三方应用软件对手机进行强行破解,因此存在着破解不完整的假Root情况。这种假Root情况,会影响到手机数据提取的成功率和效率。为此,数据恢复四川省重点实验室科研人员将介绍一种有效判定智能手机是否Root的方法,有助于提升工作效率。


一、什么是Root权限

      Root权限,指的是智能移动设备的最高权限。一旦智能设备开放了Root权限,那么设备自身的安全机制就已经被破坏,第三方使用将能够完全掌控这个设备。在手机电子数据取证过程中,对手机采取直接数据提取或者全盘镜像,大部分情况下都取决于能否成功获取到手机的Root权限。


二、判定是否Root的意义

      只有有效判定智能移动设备是否Root,才能够有效地选择使用哪种方式对智能手机进行取证。无论是Root后对智能手机进行镜像备份,还是直接对手机进行快速数据提取,或者是直接对智能设备进行镜像备份,Roo都是十分关键的一步。

      由于绝大部分智能手机本身是不开放Root权限的,因此往往采取第三方应用软件队手机进行Root。目前,国内比较出名的Root软件有360Root、Root精灵、KingRoot等软件。

360Root


三、如何判定手机是否获取到完整Root 权限

      1.su文件判定

      市面上绝大部分针对Root权限的获取都是根据开源的su.c进行的修改,甚至某些软件只是进行了界面重构。所以判定智能手机是否Root,可以先通过该款手机中是否存在su文件,进行第一步筛选。

      a:判断su文件是否存在

      su文件一般存在于智能手机系统目录即system目录下,只是由于使用不同的Root工具,造成su文件存放的子文件夹不同。大部分情况下,su文件都存在于bin目录下;小部分情况下,存在xbin,sbin目录下;其他特殊情况是,不存在system目录下,而直接存在"/sbin/","/vendor/bin/"目录下。

      b:判定su是否具有执行权限

      如果通过以上步骤判定到su文件已经存在,开启Process进程,执行ls -l权限,通过Process.getInputStream,输出Process中的结果,这个结果就是关于su文件的所有权限。在手机没有Root时是-rw-rw-rw- ,Root之后将会开放给用户可执行的权限,当第四个位置的字符是x或者s时,代表设备具有su文件的执行权限。

      通过以上步骤,便完成了Root权限的初步判定。但这只是确认了智能手机拥有最高权限的可能性,需要通过第二步完成权限判定的优化。

      2.Root权限优化判定

      a:权限修改

      权限优化判定是在第一步判定了手机拥有su文件之后,对手机做进一步检测。同样开启Process进程,执行权限修改指令 chmod 777 data,执行列表展示指令ls -l data。chmod 指令是一个权限修改指令,这个指令是将目标文件修改777,这代表该目录对所有用户开放。ls -l data指令将会将data目录下面所有的文件或者文件夹展示出来,同时展示这些目标的权限。

      b:结果获取

      通过执行指令process.waitFor(),获取到执行以上指令后的结果值,记为result。这个值将会是判定智能手机是否获取到Root权限的标志。同时,读取结果输入流process.getInputStream(),结果记为successResult,以及读取错误输出流process.getErrorStream(),结果记为errorResult。并将result、successResultc、errorResult返回给数据处理界面。

      c:逻辑处理

      判断result结果,当是0时,代表该智能设备具备最高权限,这时需要进一步判定是否开放了权限。

      判断errorMessage是否为空,是空时,代表已经授权,对第三方开放了最高权限;当errorMessage不为空时,代表虽然获取到了最高权限,但是却并没有授权给该应用。这时需要提示用户手动同意,允许目标应用使用最高权限。

      当result结果不是0的时候,代表该智能设备没有获取到Root权限,或者没有对该应用授权。

      注意:当result结果不是0时,它的返回值无法精确判定,是因为经过对多个Root工具的测试,当没有授权或者没有Root时各个工具返回的值都是不一样的。就现在的结果而言,kingRoot在没有授权给应用时,返回值是固定的;其他工具并没有完全确认,因此要进一步优化的话,可以从这一方面继续优化。


小结:

      只有判定智能手机是否成功Root,才能够有效地选择使用哪种方式对智能手机进行数据提取。本期,数据恢复四川省重点实验室科研人员介绍的su文件判定及Root权限优化判定方案,能有效判定智能手机是否成功Root。目前,此方法已经成功在效率源MTF 手机可视化行踪取证系统和SPA7100智能手机快速采集系统应用,大幅提升了取证人员工作效率。






分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

Copyright(C)2015-2016 四川效率源信息安全技术股份有限公司 版权所有|蜀ICP备09015844号|效率源数据恢复论坛  

GMT+8, 2024-11-24 05:06 , Processed in 0.189630 second(s), 30 queries .

Powered by Discuz! X3.2

© 2001-2014 技术支持: Weixiaoduo.com

快速回复 返回顶部 返回列表