博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
通过python获取苹果手机备份文件中的照片,视频等信息采集
阅读量:6405 次
发布时间:2019-06-23

本文共 1597 字,大约阅读时间需要 5 分钟。

前言:

苹果手机用户通常会将手机备份到电脑上,而备份文件通常不会自动删除。在我们电脑取证,或者***到一台电脑后可以通过python脚本获取到备份文件中的一些隐私信息,比如照片、视频、相关软件中的一些账号,联系信息等等。但是我们进入到备份文件目录,会发现文件都没有后缀名,而且很乱。似乎没有什么用。我们看到的如下:
备份目录(win7):C:\Users\你的用户名\AppData\Roaming\Apple Computer\MobileSync\Backup\
通过python获取苹果手机备份文件中的照片,视频等信息采集

在备份文件的根目录下有个Manifest.db文件,用数据库管理工具打开后如下:

通过python获取苹果手机备份文件中的照片,视频等信息采集

经过观察可以猜测fileID就是文件名,文件名的前面两个字符是所在文件夹的名称,如文件夹“12”,domain字段应该保存的是文件相关的软件信息,可以大致看出是哪个软件的文件。relativePath保存的是文件的原始路径信息和文件相关的内容。        文件里还有很多sqlite的数据库文件,我们都可以通过这个库查出相关的文件,然后用fileID这个字段的值去备份文件夹中搜索出来,然后用数据库工具打开查看,也可以直接通过python脚本连接。

通过python获取苹果手机备份文件中的照片,视频等信息采集

下图打开好像是大众点评的一个文件,里面有坐标信息,可以绘制用户的位置活动情况,其他信息类似获取

通过python获取苹果手机备份文件中的照片,视频等信息采集

通过调用百度地图等api可以获取到其坐标信息,好接下来看看怎么把照片、视频等从这些文件中分类出来吧。用到的库有filetype、getpass、os等。filetype是python判断文件名类型的库,getpass用来获取当前系统名、os python操作系统相关的库。通过遍历文件类型,将图片和视频复制到其他地方保存。

系统:win7 64位

python:3.6版本

import filetype

import os
import shutil
import getpass

def main():

#获取系统当前登陆用户名
username=getpass.getuser()
#苹果手机默认备份文件路径(win7系统下)
apple_bak_path=r"C:\Users{}\AppData\Roaming\Apple Computer\MobileSync\Backup".format(username)
#如果备份路径存在,则遍历文件夹下的所有文件
if os.path.exists(apple_bak_path):
g=os.walk(apple_bak_path)
for path,d,filelist in g:
for filename in filelist:
file=os.path.join(path,filename)
print(file)
#获取文件类型信息
kind = filetype.guess(file)
if kind is None:
print('Connot guess file type!')
#如果文件类型是jpg,则复制文件到其他地方
elif kind.extension=='jpg':
print(filename)
shutil.copyfile(file,'d:\new\jpg\{}.jpg'.format(filename))
#如果文件类型是MP4,则复制文件到其他地方
elif kind.extension=='mp4':
shutil.copyfile(file,'d:\new\mp4\{}.mp4'.format(filename))
else:
print("没有发现苹果手机备份文件!")

if name == 'main':

main()

其他文件类型类似操作,手机中的其他信息感兴趣的朋友可以继续挖掘。

转载于:https://blog.51cto.com/hackyao/2309551

你可能感兴趣的文章
RHCA教材翻译计划
查看>>
js-小括号在不同场合下的作用
查看>>
我的友情链接
查看>>
kvm中虚拟机的硬盘扩容
查看>>
Android (Launch Mode) 四种启动模式
查看>>
透视学理论(二)
查看>>
Dubbo/HSF在Service Mesh下的思考和方案
查看>>
Django form表单
查看>>
CTYL-9.14(tomcat端口与阿里云安全组,域名与tomcat配置,域名与反向代理)
查看>>
Java 多线程相关问题记录
查看>>
LNMP架构介绍、MySQL安装、PHP安装、 Nginx介绍
查看>>
es6 class 笔记
查看>>
简单的Spark+Mysql整合开发
查看>>
阿里java面试经验大汇总(附阿里职位需求)
查看>>
Python全套零基础视频教程+软件2018最新编程视频!
查看>>
内存管理之1:x86段式内存管理与保护模式
查看>>
20180925上课截图
查看>>
IO输入/输出流的简单总结
查看>>
JavaScript之DOM-9 HTML DOM(HTML DOM概述、常用HTML DOM对象、HTML表单)
查看>>
技术成长之路(一)
查看>>