手机模拟器取证实验
adb命令
adb devices
adb shell pm list package # 列出所有的应用包
adb shell dumpsys window | findstr mCurrentFocus # 查找当前窗口下的app包名
adb shell pm path com.xxx.xxx # 获取包对应apk的保存位置
adb pull /data/xxx/base.apk # 下载文件包
# Next1【提取】:回到Windows的模拟器安装位置,根据修改时间排序,找到最新的,即为刚刚下载的apk文件。
# Next2【固定】:使用hash工具,获得完整性校验值sha256
数据的提取和固定
SQL数据分析
MySQL数据库的连接与数据导入
phpstudy.exe
navicate
- 桌面打开
phpstudy.exe–> 启动MySQL套件; - 桌面启动
navicate–> 连接MySQL数据库my_sql_name–>导入sql检材;- 但是检材可能是加密的,需要使用
veracrypt导入:选择文件、选择盘符–>加载; - 输入密码
- 加载完成后,到对应盘下,查看检材
- ::attention::使用
记事本打开sql文件,确定头信息,是新建的表还是新建的数据库。- 如果只是个table,导入到
navicate会报错。需要先在my_sql_name中右键创建数据库,并刷新后,执行sql文件实现sql检材的导入。
- 如果只是个table,导入到
- 但是检材可能是加密的,需要使用
SQL数据分析一般步骤
根据题目要求,一般分为数据查找、数据求和等
0. 对象
总览数据库所有的表,及其注释,方便大致了解数据类型、定位关键表格和数据
查找
工具–在数据库或模式中查找–关键词–(按“数据”或“结构查找”)- 根据返回结果定位相关表格
筛选
- 双击
some_table_name,主界面有筛选选项,可根据字段进行条件设置–应用 - 根据返回结果定位信息
图表
-
双击
some_table_name,主界面有创建图表选项,可跳转到一个新窗口,拖动表的字段到轴、值的位置,并设置值的计算方式(求和、计数等) -
图表–新建工作区–新建数据源,可以拖动两个表,应用并刷新数据,实现关联表
日志分析
配置文件
- MySQL–my.ini
- web-nginx–nginx.conf
- apache–httpd.conf
数据恢复
磁盘
分区判断工具X-Ways
拖镜像到X-ways,恢复磁盘镜像
MBR(Master Boot Record)主引导启动记录
GPT(GUID Partition Table)GUID分区表
分区表类型1:MBR
MBR(0扇区开头的十六进制以55 AA结尾),最多4个主分区- 分区结构
- 主分区:引导分区(操作系统所在分区),首字节可设置引导标识
0x80 - 扩展分区:
0x05/0x0F - 逻辑分区:理论上数量不受限制
- 最多有一个扩展分区,可以在这个扩展分区中设置多个逻辑分区
- 主分区:引导分区(操作系统所在分区),首字节可设置引导标识
分区表类型2:GPT
GPT(不是MBR,且0扇区都是protect MBR,1扇区有EFI PARTASCII码)- 分区结构
- 只有主分区,最多
128个
- 只有主分区,最多
分区标识符
0xEE
文件类型:十六进制文件头
- 文件开始标识
FF D8 - 文件结束标识
FF D9 - JPG文件标识
FF E0
移动端分析取证
Android手机取证一般步骤:
使用手机取证大师注意在取证项中选中文件系统
- 找到data目录
- 确定包名
- 找到database数据库文件(一般是
.dbs.sqlite文件) - 本地打开
- 使用
sqlite-expert-pro应用打开它- 记得主界面切换到data
- 使用
如何确定目标程序的包名
- 在
/app目录下,判断哪个包为目标应用数据包- 题目【计算哈希】进去可以找到对应apk
- 切换到
/data目录,进一步找对应的包- 题目【应用保存数据】找对应的
/data/database目录
- 题目【应用保存数据】找对应的
/data/shared/*.xml文件保存账号、密码、服务器IP等敏感信息- 题目【配置信息】打开目录下的
xml文件 - 在ios中配置文件保存在
/library/.plist中,使用plistxx应用打开。
- 题目【配置信息】打开目录下的