IOS 设备备份文件详解 (一)
IOS设备如果没有越狱的话想获取一些敏感的信息还是有写复杂的,比如获取上网信息,短信,通话记录等等这些,但是有一个通用的方法可以获取到这些信息,那就是IOS 设备的备份功能。文章不涉及如何备份以及恢复的原理,这里详细讲解一下IOS 备份之后的文件。先看第一张图IOS 备份下来的文件
打开备份的目录可以看到里面有很多的文件,一大堆40个字符组成的文件名,还有4个其他的文件。
1) 40个字符组成的文件名其实是IOS 设备上该文件的一个域+路径然后做的一个SHA1得出来的。
比如IOS 设备上的路径 /var/mobile/Applications/cairot/Library/Preferences。他的域 AppDomain-,路径为/Library/Preferences, 这两个组合在一起 AppDomain-Library/Preferences,然后做一个SHA1得到一个40位的文件名。 聪明的你肯定就会想到,如果备份多次的话,文件名很多都是一样的。
2) Info.Plist ,一般情况这个文件是明文的,里面记录了备份的信息,比如设备名字,IOS 版本,型号,备份日期等等,当然还有几个很重要的文件。 IC-Info.sidv ,iTunesPrefs.plist
3) Manifest.mbdb
这个文件里面保存了基本上所有的备份文件的信息,比如上面那一坨40个数字的文件名文件到底和设备上的哪个文件相对应。这个文件需要一定的格式才能解析出来。 下一讲将会详细讲解这个文件的格式
4) Manifest.plist
这个文件是一个二进制的plist 文件,主要是保存了设备上安装的应用信息,还有一些其他的辅助信息。还原成明文xml形式如下
展开Applications 节点如下
4) Status.plist
从名字可以看出这个文件是保存了备份的状态,也是一个二进制的plist 文件。翻译成明文
转让Android,IOS 手机助手各种技术资料,文档,以及源码,有需要的可以联系我QQ: 2506314894
IOS 设备备份文件详解 (一)的更多相关文章
- IOS 设备备份文件详解 (二)
这篇主要讲解如何解析Manifest.mbdb文件. 使用二进制工具打开这个文件,文件的头6个字节是固定的,相当于是文件的一种标识 后面的内容是一个一个的项,可以使用一个循环来读取文件,一个一个解析. ...
- iOS应用开发详解
<iOS应用开发详解> 基本信息 作者: 郭宏志 出版社:电子工业出版社 ISBN:9787121207075 上架时间:2013-6-28 出版日期:2013 年7月 开本:16开 ...
- 了解iOS消息推送一文就够:史上最全iOS Push技术详解
本文作者:陈裕发, 腾讯系统测试工程师,由腾讯WeTest整理发表. 1.引言 开发iOS系统中的Push推送,通常有以下3种情况: 1)在线Push:比如QQ.微信等IM界面处于前台时,聊天消息和指 ...
- iOS开发者证书-详解
iOS开发者证书-详解/生成/使用 本文假设你已经有一些基本的Xcode开发经验, 并注册了iOS开发者账号. 相关基础 加密算法 现代密码学中, 主要有两种加密算法: 对称密钥加密 和 公开密钥加密 ...
- 转载]IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本 )
原文地址:IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本作者:佐佐木小次郎 因为最近项目上要用有关LBS的功能.于是我便做一下预研. 一般说来LBS功能一般分为两块:一块是地理 ...
- iOS中-Qutarz2D详解及使用
在iOS中Qutarz2D 详解及使用 (一)初识 介绍 Quartz 2D是二维绘图引擎. 能完成的工作有: 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成 ...
- iOS 2D绘图详解(Quartz 2D)之路径(点,直线,虚线,曲线,圆弧,椭圆,矩形)
前言:一个路径可以包含由一个或者多个shape以及子路径subpath,quartz提供了很多方便的shape可以直接调用.例如:point,line,Arc(圆弧),Curves(曲线),Ellip ...
- iOS开发——Block详解
iOS开发--Block详解 1. Block是什么 代码块 匿名函数 闭包--能够读取其他函数内部变量的函数 函数变量 实现基于指针和函数指针 实现回调的机制 Block是一个非常有特色的语法,它可 ...
- iOS开发:详解Objective-C runTime
Objective-C总Runtime的那点事儿(一)消息机制 最近在找工作,Objective-C中的Runtime是经常被问到的一个问题,几乎是面试大公司必问的一个问题.当然还有一些其他问题也几乎 ...
随机推荐
- Oracle 中包(Package)
一.什么要使用包? 在一个大型项目中,可能有很多模块,而每个模块又有自己的过程.函数等.而这些过程.函数默认是放在一起的(如在PL/SQL中,过程默认都是放在一起 的,即Procedur ...
- POJ 3268 Bookshelf 2 动态规划法题解
Description Farmer John recently bought another bookshelf for the cow library, but the shelf is gett ...
- cpan安装报错Invalid host name on line 1 at *FirstTime.pm line 1857.
今天鼓捣一下CPAN,安装时出错: root@ubuntu:~# cpan install DBI CPAN.pm requires configuration, but most of it can ...
- 【树莓派+.NET MF打造视频监控智能车】控制篇(树莓派)
对已经具备一定Linux基础的人来说,树莓派学习起来应该非常简单自然.在他们眼中,树莓派就是一个简易版的,卡通版的Linux而已.但是对我这样一个早已习惯微软技术生态系统的人或者初学者来说,要实现一个 ...
- fiddlescript 操作
什么是 JScript .NET Fiddler Script 是用JScript.NET语言写的 http://docs.telerik.com/fiddler/KnowledgeBase/Fidd ...
- RHEL7 添加网卡并设置多个IP地址
首先在虚拟机管理界面中给该虚拟机添加一块虚拟网卡,VirtualBox虚拟机中要shutdown才能添加. [root@rhel7 ~]# nmcli device show | grep -i de ...
- Web前端知识体系
看到一篇不错的文章,拿来收藏和分享. 原文:http://mp.weixin.qq.com/s/UFTfdE7LYhHquWEzwZKLCQ Web前端技术由html.css和 javascript三 ...
- 微信小程序解决方案合集
微信小程序解决方案合集:http://www.wxapp-union.com/special/solution.html 跳坑系列:http://www.wxapp-union.com/forum.p ...
- C#代码实现邮箱验证C#中及一些常用的正则表达式
.验证用户名和密码:("^[a-zA-Z]\w{5,15}$")正确格式:"[A-Z][a-z]_[0-9]"组成,并且第一个字必须为字母6~16位: .验证电 ...
- (原)torch,caffe,python中读入数据的默认范围
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/6554388.html 之前torch(image.load).caffe(默认的).python(使用 ...