iOS微信抢红包Tweak安装教程

最近在学习 iOS 逆向开发的时候,为了练手,开发了一个 iOS 版的微信抢红包 tweak,并且已经发布到了 Github 上面。

微信抢红包 Tweak 的 Github 地址

但是,很多小伙伴表示不会安装,特此写了这篇iOS tweak 安装教程。

说明:本篇文章只是为了说明如何在 iOS 当中安装 tweak,并不会涉及完整的逆向环境的搭建,也不会涉及到 tweak 的开发。如果对这方面有兴趣的童鞋可以参考iOS应用逆向工程这本书。

何谓 tweak

tweak 在维基百科上的定义是:对复杂的系统——通常是电子设备——进行微调或修改来增强其功能。

而在 iOS 当中,tweak 是指那些能够增强其它进程功能的 dylib。

可以将 tweak 理解为就是一个外挂,只不过这个外挂是以动态链接库的方式注入到目标应用当中。我们已经很了解外挂就是用来作一些原本的应用无法做到的事情,当然抢红包也属于这样的事。

如何安装 tweak

上面已经讲过,本篇文章不会涉及到 tweak 的开发,因此我们直接进入安装的主题。

对设备进行越狱

对设备进行越狱是安装 tweak 的首要前提,如果没有越狱设备,并且你不想对自己的设备进行越狱,那么也可以不用继续往下看了。

众所周知,苹果的权限管理是很严格的,在没有越狱的情况下,我们能对设备进行的操控其实是很有限的。而越狱之后我们就可以获得root权限,即最高权限。

现在国内最知名的越狱团队就是盘古太极了,他们都提供了 windows 版与 mac 版的越狱软件,可以进行一键越狱。

需要注意的是,这两家目前支持越狱的最新版本是 9.0.2。因此,如果你的设备已经更新到 9.2 了,你可能需要重新找一台比较低版本的设备。使用工具进行越狱其实很简单,在此也就不赘述了。

CydiaSubstrate

越狱完的设备上面都会多出一个 App,即 Cydia。

Cydia 可以理解为越狱界的 App Store。只不过 App Store 上面的都是经过苹果审核过的应用。而 Cydia 上面的各式各样的 App,tweak都或多或少使用到苹果在 App Store 审核中禁用的功能特性,比如私有方法。

CydiaSubstrate 是 Cydia 的作者的另一个作品,它的主要功能就是对 App 进行 hook,替换 App 中代码的实现,它是绝大部分 tweak 正常工作的基础,Cydia 上的 tweak 都是基于 CydiaSubstrate 的。

一般情况下,越狱完之后就已经安装了 CydiaSubstrate 了,如果你想看到软件包的详细信息,可以直接在 Cydia 当中搜索 Cydia Substrate。

安装 OpenSSH

OpenSSH 会在 iOS 上安装 SSH 服务,以供外界可以远程登录到 iOS 系统当中。

安装 OpenSSH 也很简单,同样在 Cydia 当中搜索 OpenSSH,然后进行安装就行了。

iOS 上的 OpenSSH 的默认用户有 root 和 mobile,默认密码都为 alpine。在这里强烈建议大家对默认密码进行修改,如果没有修改,很多病毒就可以轻易地通过 ssh 以 root 身份远程登录到 iOS 当中,这后果可是非常严重的。

修改密码的步骤:

  1. 确保你的电脑跟你的 iOS 设备在同一个局域网当中
  2. 获取 iOS 设备的 IP:设备 -> 无线局域网 -> 查看当前连接的 WIFI 的详细信息,就可以看到设备的 IP
  3. 在 Mac 上打开终端,执行命令 ssh root@DeveiceIP,将 DeveiceIP 替换成你的设备 IP
  4. 输入密码进行登录,注意密码是不会回显的,也就是不会显示普通的密码星号,只要继续输入就行了,输入完后按回车
  5. 登录后,修改root用户密码,执行命令passwd root,根据提示输入新密码
  6. 再修改mobile用户密码,执行passwd mobile,根据提示输入新密码

至此,iOS 设备上的环境就配置好了。

安装 Theos

Theos 是一个越狱开发工具包,它可以生成 iOS 越狱APP以及tweak等程序的框架,并提供makefile来编译、打包和安装。

安装 Xcode 和 Command Line Tools

会来看这篇教程的,我默认大家都是 iOS 开发者了,所以应该都已经安装了Xcode了,Xcode 就已经附带了 Command Line Tools。

从 Github 下载 Theos

打开命令行,进行如下操作:

export THEOS=/opt/theos
git clone https://github.com/DHowett/theos.git $THEOS

配置ldid

ldid是用于对 iOS 可执行文具进行签名的工具,可以在越狱 iOS 中替换 Xcode 自带的签名工具。从 http://joedj.net/ldid 下载,将其移动到 /opt/theos/bin 目录下,然后设置可执行权限。

cd <下载ldid的目录>
sudo mv ldid /opt/theos/binsudo 
chmod 777 /opt/theos/bin/ldid

配置CydiaSubstrate

运行 Theos 自动化配置脚本:

sudo /opt/theos/bin/bootstrap.sh substrate

在这里会出现一个问题,提示说无法自动生成一个有效的 libsubstrate.dylib 文件,我们需要进行手动操作。我们要做的就是从 iOS 上已经安装的 Cydia Substrate上复制这个文件下来。

要想在 Mac 上访问 iOS 设备的文件目录,新手可以直接使用 iFunBox,或者如果你觉得不屑使用图形化工具,也可以直接使用 scp 命令来进行拷贝。

需要拷贝的文件位于 iOS 上的 "/Library/Frameworks/CydiaSubstrate.framework/CydiaSubstrate",将其拷贝到 OSX 上,然后重命名为 libsubstrate.dylib 后放到 "/opt/theos/libsubstrate.dylib" 中,将无效的文件替换掉就可以了。

配置 dpkg-deb

deb 是越狱开发安装包的标准格式,而 dpkg-deb 是操作 deb 文件的工具,有了这个工具,Theos 才能将工程正确地打包成 deb 包。

https://raw.githubusercontent.com/DHowett/dm.pl/master/dm.pl下载dm.pl,将其重命名为 dpkg-deb 后,放到 "/opt/theos/bin/" 目录下,然后设置它的可执行权限:

sudo chmod 777 /opt/theos/bin/dpkg-deb

其实,Theos 已经是一个 tweak 的开发环境了,但是由于这里只是因为需要编译 tweak 而用到它,所以它的很多后续配置也没有详细讲解了。

至此,我们的安装环境就搭建完了,下一步可以正式地开始安装 tweak 了。

正式安装 tweak

根据上面的内容,我们大概知道了,如果要安装一个别人的 tweak,最简单的方法就是直接到 Cydia 上面进行下载并自动安装,但是前提就是你想要安装的这个 tweak 的作者已经将这个 tweak 提交到 cydia 源当中了。

那你可能会问,那我为什么不直接提交到 Cydia 呢,多方便,多简单,反而还要绕这么一大圈,然后特地又写一篇博客来说明怎么从源码进行安装,是不是太久没装逼憋坏了?我的回答是:因为我还不会提交,哈哈哈。当然那只是其中一部分原因,主要还是因为我做这个插件原来也是出于练手学习的目的,后来有很多小伙伴都跟我要,我才放到 Github 上的。而且,这种作弊式的插件有点破坏游戏平衡了,原本抢红包也都是图个欢乐,如果作弊了就破坏了这种气氛(道貌岸然状)。

所以,经过我“苦口婆心”的劝说,你还是想安装的话,就到我的Github去下载吧(如果觉得好用,就点个星鼓励一下吧)。

将仓库拉取下来后,可以看到主目录里有一个 Tweak.xm 文件,主要的代码就写在这个文件中,其实里面的代码也就几行,做 tweak 的主要精力还是花在找你的目标方法上,真正写代码其实不会太多。当然,你如果只是单纯想安装的话,这个文件就跟你无关了。

主要修改的是Makefile文件,使用编辑器打开Makefile文件,可以看到头两行是这样的:

THEOS_DEVICE_IP = localhost
THEOS_DEVICE_PORT = 2222

localhost 替换成你的 iOS 设备的 IP,IP的获取方法在上面已经提过了。然后将端口 2222 替换成 22

修改并保存后就可以进行安装了。

在 Mac 下打开终端命令行,并切换到这个仓库的目录,首先确保你的 iOS 设备上的微信是在运行中的,然后执行如下的命令:

make package install

之后,根据提示,输入两次密码(这个密码就是你刚刚修改过的密码),然后安装就完成了。

就是这么简单。

总结

洋洋洒洒写了这么多,其实真正的步骤是很简单的,只是我比较啰嗦,想把每个步骤都尽量讲得详细一点。

如果还有不清楚的地方,可以直接留言提问,或者直接到我的Github上提issue。

当然,我也是新手,刚开始学习逆向,可能有些地方理解不准确或有错误,欢迎批评指证。

再多啰嗦一句,这里讲的都是很浅很浅的东西,可以说跟逆向只能搭上一丢丢的边,如果你对逆向特别有兴趣的话,强烈推荐去看下这本书iOS应用逆向工程

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,015评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,262评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,727评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,986评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,363评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,610评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,871评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,582评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,297评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,551评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,053评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,385评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,035评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,079评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,841评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,648评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,550评论 2 270

推荐阅读更多精彩内容