【腾讯Bugly干货分享】iOS黑客技术大揭秘

本文介绍了如何使用iOS黑客技术实现微信自动抢红包,详细讲解了dumpdecrypted、cycript、logify等工具的使用,以及如何找到和实现自动抢红包功能的各个步骤。此外,还探讨了入侵原理和反入侵方法,适合移动开发工程师学习和了解iOS安全知识。
摘要由CSDN通过智能技术生成

本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/5791da152168f2690e72daa4

“8小时内拼工作,8小时外拼成长”这是大家共同的理想。除了每天忙于工作外,我们都希望能更多地区吸收领域内的新知识与新技能,从而走向人生巅峰。

Dev Club 是一个交流移动开发技术,结交朋友,扩展人脉的社群,成员都是经过审核的移动开发工程师。每周都会举行嘉宾分享,话题讨论等活动。

上一期我们邀请了腾讯 WXG iOS 开发工程师“姚海波”分享了《微信读书 iOS性能优化》

本期,我们邀请了腾讯 CDG iOS 开发工程师“何兆林”为大家分享《iOS黑客技术大揭秘》

如何加入 Dev Club?

移动端开发经验 >= 2 年,微信扫描下方群管理微信二维码,备注姓名-公司(或产品) 申请加入。

外部群二维码


分享内容简介:

在黑客的世界里,没有坚不可破的防护系统,也没有无往不胜、所向披靡的入侵利器,有时候看似简单的问题,破解起来也许花上好几天、好几个月,有时候看似很 low 的工具往往能解决大问题;我们以实现微信自动抢红包为引子,逐步展开 iOS 黑客入侵常用的几种武器,并简单的讲解一些常用的反入侵策略,以及如何破解反入侵策略,虽然抢红包的破解代码网上有很多,但是我们要讲的是这些代码是用什么工具分析出的,为什么要这样写?

内容大体框架:
1. 让目标程序破茧而出 -- dumpdecrypted
2. 运行时分析 -- cycript
3. 追踪神器 -- logify
4. 反汇编工具 -- hopper
5. 断点调试工具 -- lldb+debugserver
6. 注入工具 -- insert_dylib + install_name_tool

分享人介绍: 何兆林 通讯充值与彩票业务部 iOS开发工程师。

负责过的产品:QQ彩票、QQ电影票 iOS客户端,目前主要负责 QQ彩票 iOS客户端的开发。


下面是本期分享内容整理


大家晚上好,我是来自 CDG的 jolinhe,目前在做qq彩票项目,负责 iOS侧的插件化和整体架构。

越狱和入侵是我的业余爱好,正好08和09年的时候,在网龙积累了一些越狱开发经验,所以今天跟大家分享一下 iOS入侵方面的工具和手段。

为了避免纸上谈兵:
- 第一部分我们就拿微信来开刀,讲解一下如何运用这些工具来找到和实现自动抢红包功能的;
- 第二部分我们再总结一下常用的入侵原理和反入侵方法。

开始之前,我们需要把环境搞起,硬件方面,需要:
1. 一台越狱手机
2. 一台装了开发环境的 Mac电脑

软件方面内容提纲已经列出来了,需要注意的是它们有一些是手机端的,一些是 PC端的,用到的时候我会细讲。

群里不乏老司机,这里我假设大家对于 ssh、theos、class_dump、hook这些工具和技术都已经有所涉猎了,如果有不清楚的,欢迎私下交流。

一、微信实现自动抢红包功能

言归正传,要实现自动化抢红包,首先我们需要理清思路:

  • 第一步:需要拦截微信的消息流,在哪里拦截?
  • 第二步:在这些信息流中分辨出哪些消息是红包?
  • 第三步:在合适的地方插入自己的“抢”红包代码。

1、让目标程序破茧而出——dumpdecrypted

因为直接从 AppStore下载下来的二进制文件都是加了壳的,所以为了让它的内核破茧而出,我们需要砸壳操作。

所以第一个工具就是 dumpdecrypted,这个工具是手机端的,可以通过 cydia安装,安装后文件路径是:

/usr/lib/dumpdecrypted.dylib

在实际使用时,可以通过 pp助手把这个文件 copy到目标程序的 documents目录,然后ssh进手机终端,cd到 documents目录,执行:

DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib WeChatPath

执行完后会再 documents目录生成一个砸完壳后的二进制文件

2、运行时分析——cycript

砸完壳之后,我们再 dump出头文件,但是微信的类太多了,头文件有几百个,如此多的头文件,让人眼花缭乱,所以要找到突破口,我们得缩小范围,我喜欢用的思路是从 ui入手,先找到微信对话界面的 controller,然后再追踪 controller中对应的消息处理函数。

这样第二个工具 cycript 隆重出场了,它也是个手机端的工具,用于查看 app运行时数据,大伙儿可以通过 cydia安装,安装完之后,ssh到越狱手机的终端。

先找到微信的进程id:ps aux | grep WeChat
再执行:cycript -p 微信的pid

完成了注入,进入到 cycript提供的终端。

这时候进入在手机上进入微信的聊天

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值