[发明专利]一种基于固件更新协议的Android取证方法在审
申请号: | 201911304443.9 | 申请日: | 2019-12-17 |
公开(公告)号: | CN111190619A | 公开(公告)日: | 2020-05-22 |
发明(设计)人: | 俞研;彭伟航;邓芳伟;苏铓;付安民;张晗 | 申请(专利权)人: | 南京理工大学 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/72;G06F3/06 |
代理公司: | 南京理工大学专利中心 32203 | 代理人: | 封睿 |
地址: | 210094 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 更新 协议 android 取证 方法 | ||
1.一种基于固件更新协议的Android取证方法,其特征在于,包括以下步骤:
步骤1、获取Android固件更新协议中转储指令;
步骤2、逆向分析固件更新程序与设备的数据交互例程,发送步骤1获取的转储指令,从Android设备转储数据;
步骤3、基于字符串匹配算法从转储数据中提取信息。
2.根据权利要求书1中所述的基于固件更新协议的Android取证方法,其特征在于,步骤1中,获取转储指令的具体步骤为:
步骤1-1、控制Android设备进入download模式,进行固件更新升级;
步骤1-2、监控固件更新程序的API调用,对Android设备进行抓包;
步骤1-3、根据转储指令格式生成测试用例,进行Fuzzing测试得到隐藏的转储指令。
3.根据权利要求书2中所述的基于固件更新协议的Android取证方法,其特征在于,步骤1-1中,Android设备进入download模式有三种方式:(1)设备关机状态下使用组合键进入;(2)通过adb指令“adb reboot fastboot”进入;(3)通过发送AT指令“AT+FUS?”进入。
4.根据权利要求书2中所述的基于固件更新协议的Android取证方法,其特征在于,步骤1-2中,API监控重点关注三个函数:CreateFile(),ReadFile()和WriteFile(),因为CreateFile()打开了串行端口,WriteFile()将数据从PC传输到智能手机,而ReadFile()从智能手机读取了数据。
5.根据权利要求书2中所述的基于固件更新协议的Android取证方法,其特征在于,步骤1-3中,Fuzzing测试分为三个部分:(1)不考虑协议数据包的格式,生成任意的数据发送至设备;(2)基于变异的模糊测试;(3)基于生长的模糊测试。
6.根据权利要求书1中所述的基于固件更新协议的Android取证方法,其特征在于,步骤2中,逆向分析通过动态分析查找例程,步骤如下:
首先将断点放在调试器的ReadFile()上,然后开始执行固件更新程序,接收数据时程序停止,如果接收到的数据是压缩的扇区信息,那么需要跟踪调试器中的函数调用,以找到压缩数据被解压缩的点并找到相关的代码块;如果接收到的数据是密文,在调用特定函数后找到与内存和扇区相关的字符串,将其视为客户端程序对响应数据的解密,找到相关的例程后,将其用C或Python重写,完成例程的重构。
7.根据权利要求书1中所述的基于固件更新协议的Android取证方法,其特征在于,步骤3中,字符串匹配算法采用Sunday算法,从原始数据开始依次遍历,与关键字的hex十六进制流作比对,匹配到关键字相应的位置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京理工大学,未经南京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911304443.9/1.html,转载请声明来源钻瓜专利网。