在iDevices(如iPhone、iPad等等)的取证方面,那个代表”信任关系”的plist无疑是最为关键的迹证,只要有了它,哪怕是最新机型的iDevice及最新版的iOS,且有着指纹保护或passcode保护,取证人员都能利用这plist在取证工作站上建立与犯嫌的iDevices间的”信任关系”,接着便可顺利进行iDevice的提取了。

那在Android手机上有无上述iPhone取证上如此关键的迹证可供利用呢?我们来看看一支Android手机在以USB线连入计算机时会产生何种迹证。在Android 4.2之后加入了一个新的安全特性,亦即下图左上角所示,在手机屏幕上会弹出一个要求”允许USB侦错”的窗口,此时会随机生成手机与计算机间的认证token,若未进行确认,即使你有在计算机上装妥该手机的驱动程序,也无法对该手机下达任何ADB指令,这是因为它们之间的”信任关系”尚未建立之故。当然了,若在屏幕有图形锁或密码保护的情况下,你也是无法顺利进到手机桌面去点击”允许USB侦错”的窗口。

我们先简化情境,先撇开图形锁或密码保护不论,在手机桌面点击确认允许USB侦错后,看看计算机上有无任何线索,如下图右上角所示,在个人profile的文件夹中产生了一个.android的文件夹,里头出现了一组认证时所生成的public key及private key。同样的,我们连入手机查找有无相关的key存在,如下图下方所示,在/data/misc/adb路径下有个名为adb_keys的档案,检视内容即可看到认证的key储存在此。

那要如何对付有着图形锁或是密码保护的Android手机呢?也许有人会说那就把从犯嫌计算机上找到的那组key搬到取证工作站上,就可以顺利建立与该手机的”信任关系”以进行提取,可惜不然,因为当你把该手机接入取证工作站时,该手机会再随机生成一组认证token,而非使用先前用过的,因此即使你把曾经已进行确认过允许USB侦错的计算机上的key拿来利用,仍无法骗过该手机以绕过信任关系验证。

那在Android设备的取证上是否即因此而无法顺利进行了呢?其实不然,我们还有其它方式可绕过此验证要求。而另一方面,在iOS上目前仍未改变信任关系plist的机制,取证人员在面对一支有个指纹或passcode保护的iDevice时,可留意嫌犯使用的工作站或Mac,也许能找到信任关系的plist,再利用此plist进行取证。

Android手机与计算机间的”信任关系”的更多相关文章

  1. Solaris主机间的信任关系机制

    解决问题: 管理员经常在其他服务器之间登录,是否需要密码切换. 知识点:主机间信任关系.R 命令集 /etc/hosts/equiv 文件 R服务是不加密的,别人可以破解. 主机名 + 用户名. + ...

  2. 第5步:建立主机间的信任关系(sgdb1、sgdb2)

    5.1 Oracle用户下建立信任 5.11创建.ssh目录 [root@sgdb1 /]# su - oracle [oracle@sgdb1 ~]$ mkdir .ssh       创建一个.s ...

  3. [域|Domain] The trust relationship between this workstation and the primary domain failed 此工作站和主域间的信任关系失败

    PS> $cred = Get-Credential domain.sample.com;Reset-ComputerMachinePassword -Credential $cred -Ser ...

  4. Android手机间使用socket进行文件互传实例

    这是一个Android手机间文件传输的例子,两个手机同时装上此app,然后输入接收端的ip,选择文件,可以多选,点确定,就发送到另一个手机,一个简单快捷文件快传实例.可以直接运用到项目中. 下面是文件 ...

  5. 搭建Android手机系统开发环境(转)

    Android作为近来表现十分强劲的手机操作系统,越来越受到开发人员的青睐,本篇文章将带领大家从零开始打造属于自己的开发环境. 一.JDK下载安装 JDK全称是Java Development Kit ...

  6. Android手机一键Root原理分析

    图/文 非虫 一直以来,刷机与Root是Android手机爱好者最热衷的事情.即使国行手机的用户也不惜冒着失去保修的风险对Root手机乐此不疲.就在前天晚上,一年一度的Google I/O大会拉开了帷 ...

  7. 【Android】1.0 第1章 C#之Android手机App开发

    分类:C#.Android.VS2015:创建日期:2016-01-20 目前Android在全世界市场上大约有75%的占有率,国人Android手机的持有比例更甚,甚至达到90%以上.因此搞计算机的 ...

  8. 将Android手机无线连接到Ubuntu实现唱跳Rap

    您想要将Android设备连接到Ubuntu以传输文件.查看Android通知.以及从Ubuntu桌面发送短信 – 你会怎么做?将文件从手机传输到PC时不要打电话给自己:使用GSConnect就可以. ...

  9. android手机和ios手机的分辨率

    Android手机目前常见的分辨率 1.1 手机常见分辨率: 4:3 VGA     640*480 (Video Graphics Array) QVGA  320*240 (Quarter VGA ...

随机推荐

  1. Laravel 部署安装到虚拟主机的方法(折腾了一周,终于成功部署,原来是虚拟机不加载.env,谢谢莫回首http://lxl520.com/index.php/archives/88/!)

      作者:莫回首链接:https://www.zhihu.com/question/35497879/answer/111241182来源:知乎著作权归作者所有,转载请联系作者获得授权. 序 lara ...

  2. 词典对象 NSDictionary与NSMutableDictionary

    做过Java语言或者 C语言开发的朋友应该很清楚关键字map 吧,它可以将数据以键值对儿的形式储存起来,取值的时候通过KEY就可以直接拿到对应的值,非常方便,是一种非常常用的数据结构.在Objecti ...

  3. ruby字符串学习笔记5

    1获取字符串某部分 s = "My kingdom for a string!" s.slice(3,7) # kingdom s[3,7] # kingdom s[/.ing/] ...

  4. Sql Server Text 类型列 查询和更新

    Text(ntext.image)类型为大数据字段,因为存储方式不同,也决定了其查询和更新不同于一般方法. 1.表定义: 2.查询: Like查询是可用的: select * from dbo.nod ...

  5. java获取本机IP地址和MAC地址的方法

    // 获取ip地址 public static String getIpAddress() { try { Enumeration<NetworkInterface> allNetInte ...

  6. 数组排序-冒泡排序-选择排序-插入排序-希尔排序-快速排序-Java实现

    这五种排序算法难度依次增加. 冒泡排序: 第一次将数组相邻两个元素依次比较,然后将大的元素往后移,像冒泡一样,最终最大的元素被移到数组的最末尾. 第二次将数组的前n-1个元素取出,然后相邻两个元素依次 ...

  7. Java SE 第二十四讲----static与final使用陷阱关键字

    1.对于final类型成员变量,一般来说有两种赋值方式: a)在声明final类型的成员变量时就附上初值 package com.cl.staticandfinal; public class Fin ...

  8. eclipse导入不到嵌套的项目

    search for nested projects搜索不到嵌套项目

  9. esriSRGeoCS3Type Constants

    ArcGIS Developer Help  (Geometry)     esriSRGeoCS3Type Constants More available geographic coordinat ...

  10. bitmap size exceeds VM budget

    bitmap size exceeds VM budget we can avoid this error by the following parts:1  its not how much ima ...