Keychain-Dumper的安装,签名与使用_keychain_dumper-程序员宅基地

技术标签: iOS逆向  iOS越狱  iOS越狱开发那些事  

1、iOS操作系统(包括mac),采用keychain数据库来存储敏感数据(例如wifi热点信息,邮箱信息等),keychain数据库位于iOS系统的/var/Keychains/keychain-2.db下,数据库中的内容是加密的,并且不同应用之间的数据存储是隔离的。

2、当打开这个数据库,会发现如下图中四个表:genp、inet、cert、keys
数据库内数据,大多数是加密的,Keychain的数据库内容使用了设备唯一的硬件密钥进行加密,该硬件密钥无法从设备上导出。因此,存储在Keychain中的数据只能在该台设备上读取,而无法复制到另一台设备上解密后读取。

3、一旦攻击者能够物理接触到没有设置密码的iOS设备时,他就可以通过越狱该设备,运行如keychain_dumper这样的工具,读取到设备所有的Keychain条目,获取里面存储的明文信息。具体方法是通过ssh让mac连接iPhone,使用keychain_dumper,导出Keychain

4、开始操作

4.1 下载Keychain-Dumper

4.2 编译签名

1、$security find-identity -v -p codesigning 列出钥匙串里可签名的证书

2、新建ent.plist文件放到Keychain-Dumper目录下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>platform-application</key>
	<true/>
	<key>com.apple.springboard.debugapplications</key>
	<true/>
	<key>run-unsigned-code</key>
	<true/>
	<key>get-task-allow</key>
	<true/>
	<key>task_for_pid-allow</key>
	<true/>
</dict>
</plist>

3、签名编译
CER="iPhone Developer: heavenxxoo.com (3PQG28U86G)" make codesign

4、复制到设备bin目录下并赋予权限
scp keychain_dumper [email protected]:/bin/
chmod +x /bin/keychain_dumper

5、keychain也要赋予读写权限
Heaven:/private/var/Keychains root# chmod +r keychain-2.db

6、解密keychain
cd /private/var/Keychains
/bin/keychain_dumper > keychain-export.txt

7、导出keychain-export.txt 文件

好了,可以愉快地开始了~

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Heaven_OY/article/details/112894814

智能推荐

15个程序员实用的开发工具,你有用过几个呢?-程序员宅基地

文章浏览阅读2.1k次,点赞2次,收藏7次。FeHelper是一个非常好用的插件,支持Chrome、Firefox、MS-Edge浏览器,工具集包括 JSON自动/手动格式化、JSON内容比对、代码美化与压缩、信息编解码转换、二维码生成与解码、图片Base64编解码转换、Markdown、 网页油猴、网页取色器、脑图(Xmind)等贴心工具,甚至在目前新版本的FeHelper中,还集成了FH开发者工具。很多人可能用的是 codePen 或者 CodeSandbox 等,但是我觉得掘金的码上掘金也挺好用的,并且登录自己的掘金账号就能看到,挺方便的。_开发工具

探索FOSSASIA的日历项目:一个开放源代码的协作日程管理工具-程序员宅基地

文章浏览阅读928次,点赞14次,收藏17次。探索FOSSASIA的日历项目:一个开放源代码的协作日程管理工具项目地址:https://gitcode.com/fossasia/calendar.fossasia.org在数字化的世界里,管理和共享日程变得越来越重要。为此,我们向您推荐calendar.fossasia.org,一个由FOSSASIA开发的开源日历应用,旨在提供一个高效、可定制且协同友好的平台,帮助您和团队更好地组织时间..._开源 日历日程

python读取oracle数据_Python读写oracle数据库-程序员宅基地

文章浏览阅读971次。最近项目中需要用到Python调用oracle实现读写操作,踩过很多坑,历尽艰辛终于实现了。性能怎样先不说,有方法后面再调优嘛。现在把代码和注意点记录一下。1. 所需Python工具库cx_Oracle,pandas,可以使用通过控制台使用pip进行安装(电脑中已经安装)2. 实现查询操作#工具库导入import pandas as pdimport cx_Oracle#注:设置环境编码方式,可解..._pandas 分批读取oracle 表

基于JSP后台的志愿者小程序 毕业设计毕设作品欣赏_jsp参赛作品-程序员宅基地

文章浏览阅读767次。基于JSP后台的志愿者小程序_jsp参赛作品

固定资产管理系统日常业务有哪些-程序员宅基地

文章浏览阅读364次,点赞4次,收藏5次。它可以帮助企业完成固定资产的全生命周期管理,提升资产管理效率,降低成本。它涉及公司的长期投资、资产保值和资产报表的准确性。资产处理:当资产达到预定使用期或无法继续使用时,系统需要记录资产处理信息,包括处理日期、处理方法和价格。资产维护:系统需要提醒公司定期维护资产,以确保资产的正常使用。同时,系统还应记录维护的详细信息,包括维护日期、维护内容和维护费用。资产应用:系统需要记录使用单位、使用人员、使用次数等每个资产的使用情况。该系统可实现固定资产的高效管理,提升资产管理效率,降低成本。

android源码--activity启动源码分析_源码 判断启动的activity是否是 instant app-程序员宅基地

文章浏览阅读518次。1.app应用的真正入口是ActivityThread类中的main()方法。 2.调用Looper.prepareMainLooper()方法。 3.调用prepare(false)方法,这里的threadLocal其实就是一个map集合。这样新创建了一个Looper对象,添加到集合中。 在Looper的构造器中,初始化了消息队列并且获取当前的线程 4.调用myLoope..._源码 判断启动的activity是否是 instant app

随便推点

java集合类的方法_java集合类的基本方法的使用-程序员宅基地

文章浏览阅读106次。我们看一个简单的例子,来了解一下集合类的基本方法的使用:import java.util.*;public class CollectionToArray {public static void main(String args) {Collection collection1=new ArrayList();//创建一个集合对象collection1.add("000");//添加对象到Coll..._java中object element=iterator.next();是什么意思

你最大的优点是什么?(回答技巧及范例)-程序员宅基地

文章浏览阅读829次。http://bbs.yingjiesheng.com/thread-186906-1-1.html你最大的优点是什么?问题分析: 在这个问题上, 面试官关注的问题有两点。第一, 申请人没有撒谎, 而是真实地阐述了自己的优点。第二, 他所阐述的优点, 恰好是这个职位所需要的素质。有很多时候, 对于一个岗位而言的优点, 会成为另一个岗位的缺点。比如说, 如果你具备很强的领导能力, 往往不适合..._说说你们最大的优点是什么

软件工程文档编写标准包括哪些内容_工程文档写作都有什么-程序员宅基地

文章浏览阅读1.2k次。在项目开发过程中,应该按要求编写好十三种文档,文档编制要求具有针对性、精确性、清晰性、完整性、灵活性、可追溯性。   ◇ 可行性分析报告:说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施方案,说明并论证所选定实施方案的理由。   ◇ 项目开发计划:为软件项目实施方案制订出具体计划,应该包括各部分工作的负责人员、开发的进度、开发经费的_工程文档写作都有什么

互联网产品中的平台、社区、软件、网站、品牌等科普_小米社区和oppo社区 谁算是交易型社区-程序员宅基地

文章浏览阅读2k次。科普大杂烩_小米社区和oppo社区 谁算是交易型社区

STL模型分割工具:解放3D打印的尺寸限制_分解stl模型-程序员宅基地

文章浏览阅读334次,点赞6次,收藏5次。STL模型分割工具是一个简单易用的在线应用,无需安装任何软件,只需通过网页浏览器即可操作。_分解stl模型

LeetCode刷题总结(九)29 - 31 -- 二进制倍增,位运算,滑动窗口_leetcode 倍增-程序员宅基地

文章浏览阅读217次。(一)LeetCode29:两数相除暴力做法是循环 x -= y,x为被除数,y为除数,减到 x 小于 y 为止,每减一次计数变量 ++,最后输出计数变量。然而以上这种做法显然是会超时的!!!高级解法是二进制移位倍增,其实这也是计算机实现乘除法的本质。..._leetcode 倍增

推荐文章

热门文章

相关标签