用Hopper搞定Mac迅雷的会员以及离线下载功能

2016年6月10日编辑:此方法仅适用于迅雷2.6.0,更高级版本增加了保护措施,如果大家感兴趣,可以看看这个回复这个帖子


闲言不表,开门见山 :punch:


定位Mac迅雷的可执行文件

snakeninnys-iMac:~ snakeninny$ ls /Applications/Thunder.app/Contents/MacOS
Thunder            libetm.dylib       libiniparser.dylib

如果你的迅雷也是放在了/Applications下,那么可执行文件的位置应该跟上面一样:grinning_face_with_smiling_eyes:

用Hopper分析可执行文件

定位要修改的函数

可执行文件尺寸不大,Hopper很快就可以完成对它的分析。在Label搜索栏中输入“ is”(注意,是“空格is”),在搜索结果中,找到如图所示的4个方法:

它们分别是

1. -[LocalTask isValidLixianTask]
2. -[UserController isVip]
3. -[UserController isPlatinum]
4. -[UserController isDiamond]

用Hopper静态patch这4个方法

首先patch-[LocalTask isValidLixianTask]
把鼠标焦点放在-[LocalTask isValidLixianTask]的第一行汇编代码上,然后选择Hopper菜单栏的Modify → Assemble Instruction,并在弹出的文本框里输入mov eax, 0x1,如图所示:


然后点击“Assemble and Go Next”,再在文本框里输入ret。patch之后的-[LocalTask isValidLixianTask]长这样:

为什么要这么patch呢?简单解释一下:在x86汇编里,函数的返回值存放在eax寄存器里。1对应BOOL类型的YES,因此我们的patch让-[LocalTask isValidLixianTask]永远返回YES,告诉迅雷这是一个有效的离线任务 :wink:
同理,用完全相同的输入来patch掉另外的3个方法,即把它们的前2条汇编指令都改成mov eax, 0x1ret,修改结果如图所示:

用Hopper生成一个patch过的新可执行文件

在Hopper的菜单里选择File → Produce New Executable…,然后在弹框中选择YES,即可生成一个新的Thunder文件。用这个新的Thunder替换掉原来的/Applications/Thunder.app/Contents/MacOS/Thunder,然后重启迅雷,看看效果:


打完收工 :relaxed:

17 个赞

great patching bro :blush:

like this.

hopper 3.9.16怎么破解来用

前几天迅雷刚过期,还想着有空搞搞呢。没想到狗神直接搞定了,拿走了啊,感谢~

感谢狗神~同理可得,把iExplorer也“注册”了~

Indeed, showing VIP level, but it is still local download, not offline…
Please correct me if I am wrong.

我一开始也是这么猜测的,后来发现可以下载被禁资源,就觉得不是单纯的本地下载了

1 个赞

被禁资源。。。求种子。。

赞,感谢楼主的方法

太棒了,附上hopper最新■■版地址 enter link description here
只是貌似我这高速通道一直都是灰色,用不了,不知道其他人是不是也这样

1 个赞

高速通道需要流量,我估计这个是在服务器端判断的,所以没法用

good,喜闻乐见,不愁种子下不了了,多谢狗神,我试试

哈哈哈哈真的可以,不过要注册一个迅雷账号

经过测试,如果只要■■离线下载的话,只需要改isVip和isValidLixianTask就可以了,白金和钻石界面上不显示,■■了也看不出来,不知道能不能破解islogined实现免登陆离线?

你试试看,很有可能可以

试了下,确实可以

试了下正常的会员登录,离线速度跟高速通道还是有差距,能把高速通道的限时试用改成不限时的话,效果会更好吧

不知道高速通道是不是本地判断的,你可以分析分析,然后把分析过程再写一个帖子

迅雷的高速通道如果登录了是要服务器判断是否还有流量,如果不登录的话是可以免费体验,只是有个时长限制,■■高速的思路就是不登录的情况下,延长免费体验的时长。这样无法使用离线。我有一个思路,因为迅雷高级账号的高速通道流量非常大(一个月8TB流量,下载时扣除文件大小的10%作为高速流量消耗,即可以下载80TB/月),可否收集n个会员账号信息,当请求高速通道功能时,自动把收集好的vip信息发给服务器做验证获得高速通道功能。离线功能使用免登陆的离线■■(上面已经实现),这样能做到不登录账号,离线和高速都能免费使用的效果。当然这个思路的关键是找到客户端往服务器发送验证信息的函数和vip账号本地保存的数据,我也是仅有思路,无法实现 :joy: