吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 30077|回复: 752
收起左侧

[iOS 原创] 酷我音乐纯净版VIP教程

    [复制链接]
HackXK 发表于 2026-1-25 21:59

前言

最近手痒想听歌,发现酷我音乐好多歌都要 VIP 才能听,作为一个穷逼程序员,当然是选择自己动手丰衣足食了。这篇文章记录一下我逆向分析酷我音乐 iOS 版并实现 VIP 破解的全过程,仅供学习交流使用。

环境准备

  • 越狱 iPhone(我用的是 iOS 16.3.1)
  • IDA Pro 9.3
  • Hopper Disassembler(可选)
  • Theos 开发环境
  • class-dump 工具

一、砸壳与导出头文件

首先从越狱设备上把酷我音乐的 ipa 拉下来,用  dumpdecrypted 砸壳。

# 使用 dumpdecrypted 砸壳
DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var/containers/Bundle/Application/xxx/KuwoMusic.app/KuwoMusic

砸壳完成后,用 class-dump 导出头文件,方便后续分析:

class-dump -H KuwoMusic -o Headers/

导出来一堆头文件,大概看了下有几千个类,直接懵逼。不过没关系,我们可以通过关键字搜索来定位目标。

二、定位关键类

2.1 寻找 VIP 相关的类

既然要破解 VIP,那肯定要找跟 VIP 相关的类。我直接在头文件目录里搜索包含 "Vip"、"Fee"、"Pay" 等关键字的类名:

grep -r "Vip" Headers/ | grep "@interface"
grep -r "Fee" Headers/ | grep "@interface"

很快就发现了几个可疑的类:

  • KWMusicFeeUserManager - 看名字就知道是管理付费用户的
  • KWSuperVipInfo - 超级 VIP 信息类
  • KWMusicFeeFlagObject - 付费标记对象
  • UserInfoManager - 用户信息管理

2.2 用 IDA 分析二进制文件

把砸壳后的二进制文件拖进 IDA,等待分析完成(这个过程比较慢,可以去泡杯咖啡)。

分析完成后,按 Shift+F12 打开字符串窗口,搜索 "vip"、"fee" 等关键字,能看到很多相关的字符串引用。

三、Hook 点分析

3.1 分析 KWMusicFeeUserManager

在 IDA 的 Functions 窗口搜索 KWMusicFeeUserManager,找到这个类的方法列表。重点关注以下几个方法:

-[KWMusicFeeUserManager isVip]
-[KWMusicFeeUserManager isSuperVip]
-[KWMusicFeeUserManager isLogin]
-[KWMusicFeeUserManager isAutoPaySuperVip]

双击进入 isVip 方法,看到伪代码大概是这样:

bool __cdecl -[KWMusicFeeUserManager isVip](KWMusicFeeUserManager *self, SEL a2)
{
  // ... 一堆判断逻辑
  if ( self->_vipInfo )
  {
    if ( self->_vipInfo->_vipLevel > 0 )
      return 1;
  }
  return 0;
}

很明显,这个方法返回 BOOL 值,用来判断用户是否是 VIP。那我们只需要 hook 这个方法,直接返回 YES 就行了。

同理,isSuperVipisLoginisAutoPaySuperVip 这几个方法也是类似的逻辑,都可以直接返回 YES。

3.2 分析 KWMusicFeeFlagObject

这个类有个方法特别关键:

-[KWMusicFeeFlagObject feeFlag:authType:useVip:isAudio:]

在 IDA 里看伪代码:

long long __cdecl -[KWMusicFeeFlagObject feeFlag:authType:useVip:isAudio:](
        KWMusicFeeFlagObject *self,
        SEL a2,
        long long a3,
        long long a4,
        long long a5,
        long long a6)
{
  // ... 复杂的判断逻辑
  if ( 某些条件 )
    return 1; // 需要付费
  else
    return 0; // 免费
}

这个方法返回的是付费标记,0 表示免费,非 0 表示需要付费。那我们直接让它返回 0 就完事了。

3.3 分析 UserInfoManager

搜索 UserInfoManager 类,找到 vipLevel 方法:

-[UserInfoManager vipLevel]

这个方法返回用户的 VIP 等级,原本可能返回 0(非会员)、1(普通会员)等。我们可以直接返回一个很大的数字,比如 999,让它显示为超级 VIP。

3.4 分析 KWSuperVipInfo

继续在 IDA 里搜索 KWSuperVipInfo 类,找到两个关键方法:

-[KWSuperVipInfo isAutoPay]
-[KWSuperVipInfo isYearUser]

这两个方法分别用来判断是否自动续费和是否年费用户。看伪代码逻辑也很简单,都是返回 BOOL 值。我们同样让它们返回 YES。

3.5 分析 KWVersionManager

在分析过程中,我还发现了一个有意思的类 KWVersionManager,它有个方法:

-[KWVersionManager setClientInstallSource:]

这个方法用来设置客户端的安装来源。在 IDA 里追踪交叉引用发现,某些特殊的安装来源可能会有不同的权限判断逻辑。我尝试把安装来源改成车载版的包名 kwplayercar_ar_6.0.0.9_B_jiakong_vh.apk,这样可能会绕过一些额外的检测。

四、编写 Tweak

分析完成后,思路已经很清晰了,直接开始写 tweak。使用 Theos 的 Logos 语法非常简单。

4.1 创建 Theos 项目

$THEOS/bin/nic.pl
# 选择 iphone/tweak
# Project Name: KWCrack
# Package Name: com.macxk.kwcrack
# Author: MacXK
# Bundle filter: com.kuwo.kwmusic

4.2 编写 Tweak.xm

在生成的 Tweak.xm 文件中编写 hook 代码:

#import <UIKit/UIKit.h>

%hook KWMusicFeeFlagObject

// 付费标记修改
- (long long)feeFlag:(long long)arg1 authType:(long long)arg2 useVip:(long long)arg3 isAudio:(long long)arg4 {
    return 0; // 直接返回 0,表示免费
}

%end

%hook KWMusicFeeUserManager

// VIP 状态修改
- (BOOL)isVip {
    return YES;
}

- (BOOL)isSuperVip {
    return YES;
}

- (BOOL)isLogin {
    return YES;
}

- (BOOL)isAutoPaySuperVip {
    return YES;
}

%end

%hook KWSuperVipInfo

// 超级 VIP 状态修改
- (BOOL)isAutoPay {
    return YES;
}

- (BOOL)isYearUser {
    return YES;
}

%end

%hook KWVersionManager

// 安装来源修改
- (void)setClientInstallSource:(NSString *)source {
    %orig(@"kwplayercar_ar_6.0.0.9_B_jiakong_vh.apk");
}

%end

%hook UserInfoManager

// 用户信息修改
- (long long)vipLevel {
    return 999; // 返回超高等级
}

%end

4.3 配置 Makefile

编辑 Makefile

TARGET := iphone:clang:latest:7.0
INSTALL_TARGET_PROCESSES = KuwoMusic

include $(THEOS)/makefiles/common.mk

TWEAK_NAME = KWCrack

KWCrack_FILES = Tweak.xm
KWCrack_CFLAGS = -fobjc-arc

include $(THEOS_MAKE_PATH)/tweak.mk

4.4 配置 plist

编辑 KWCrack.plist,指定要注入的 Bundle ID:

<?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>Filter</key>
    <dict>
        <key>Bundles</key>
        <array>
            <string>com.kuwo.kwmusic</string>
        </array>
    </dict>
</dict>
</plist>

五、编译与安装

5.1 编译

make package

编译成功后会生成 .deb 安装包。

5.2 安装到设备

make install

或者手动把 deb 包传到设备上,用 dpkg 安装:

dpkg -i com.macxk.kwcrack_0.1-1_iphoneos-arm.deb

5.3 重启 SpringBoard

killall -9 SpringBoard

六、测试效果

重启后打开酷我音乐,可以看到:

  1. 个人中心显示为超级 VIP
  2. VIP 歌曲可以正常播放
  3. 无损音质可以正常下载
  4. 所有 VIP 功能都可以使用

完美!

七、注意事项

  1. 仅供学习交流:本教程仅用于技术研究和学习,请勿用于商业用途
  2. 支持正版:如果经济条件允许,请支持正版音乐
  3. 版本兼容性:不同版本的酷我音乐可能类名和方法名有所不同,需要根据实际情况调整

八、总结

这次逆向分析主要用到了以下技巧:

  1. 通过关键字搜索快速定位目标类
  2. 使用 IDA Pro 9.3 分析方法逻辑和伪代码
  3. 追踪交叉引用理解代码调用关系
  4. 使用 Theos 编写简洁的 tweak 代码

整个过程其实不复杂,关键是要找准 hook 点。对于这种客户端验证的应用,只要找到关键的判断方法,直接修改返回值就能达到目的。IDA 9.3 的伪代码质量很高,基本上看伪代码就能理解逻辑,不需要看汇编。

希望这篇教程对大家有帮助,有问题欢迎在评论区交流!


声明:本文仅供技术学习交流使用,请勿用于非法用途。破解他人软件可能涉及法律风险,请谨慎使用。

KWCrack.zip

23.81 KB, 下载次数: 2181, 下载积分: 吾爱币 -1 CB

源码

免费评分

参与人数 196吾爱币 +189 热心值 +173 收起 理由
exodusyaya + 1 + 1 谢谢@Thanks!
87348177 + 1 + 1 热心回复!
感觉还在不在 + 1 谢谢@Thanks!
寒凛 + 1 + 1 用心讨论,共获提升!
huahaoyueyuan + 1 + 1 用心讨论,共获提升!
我就是TA + 1 + 1 我很赞同!
yy86es + 1 + 1 谢谢@Thanks!
kujie0121 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
liyunming99 + 1 + 1 用心讨论,共获提升!
simmily2024 + 1 我很赞同!
xinding + 1 + 1 我很赞同!
LQ789 + 1 + 1 谢谢@Thanks!
zhaojinfei + 1 思路清晰,逻辑能力强!!
26226065 + 1 热心回复!
daerduo + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
正己 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
Sky1166 + 1 我很赞同!
王二小传人 + 1 我很赞同!
wangyongdesign + 1 + 1 谢谢@Thanks!
Laura_112 + 1 + 1 谢谢@Thanks!
gxnnddkl + 1 + 1 谢谢@Thanks!
whb818 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
少女收割机 + 1 + 1 用心讨论,共获提升!
tree777 + 1 谢谢@Thanks!
DUDU666 + 1 + 1 谢谢@Thanks!
deae18 + 1 + 1 热心回复!
lishuofang + 1 + 1 谢谢@Thanks!
bno357 + 1 + 1 我很赞同!
MayMayHai8971 + 1 + 1 用心讨论,共获提升!
szluyang + 1 热心回复!
aaa661179 + 1 + 1 我很赞同!
cool93 + 1 + 1 谢谢@Thanks!
lyslxx + 1 + 1 我很赞同!
Facekaze + 1 + 1 谢谢@Thanks!
IcePlume + 1 + 1 我很赞同!
tvrcfdfe + 1 + 1 我很赞同!
kuake84 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
weschan + 1 + 1 热心回复!
linlern + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
myoudk + 1 + 1 热心回复!
liudongssnh + 1 + 1 谢谢@Thanks!
twomoon + 1 + 1 谢谢@Thanks!
lin5789 + 1 我很赞同!
theStyx + 1 + 1 我很赞同!
dlovec + 1 鼓励转贴优秀软件安全工具和文档!
296250 + 1 + 1 我很赞同!
fgr9010287 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
valk_1 + 1 + 1 谢谢@Thanks!
zl519223 + 1 + 1 谢谢@Thanks!
521qrzyy + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
斯文d狼 + 1 谢谢@Thanks!
smallchop + 1 + 1 谢谢@Thanks!
dugu80 + 1 + 1 我很赞同!
ljb2100996 + 1 + 1 谢谢@Thanks!
wangboming + 1 + 1 热心回复!
Yiduoyun7 + 1 + 1 热心回复!
小色刘 + 1 + 1 谢谢@Thanks!
elninor + 1 + 1 虽然看不懂,但是感觉很强大!
fengwen18245 + 1 + 1 谢谢@Thanks!
liuyuanliu + 1 + 1 谢谢@Thanks!
Tiniaual + 1 + 1 我很赞同!
观弈山人 + 1 谢谢@Thanks!
qwertyui + 1 + 1 用心讨论,共获提升!
mhaitao + 1 + 1 我很赞同!
jiang8681 + 1 热心回复!
lu6xueqi + 1 + 1 热心回复!
bssqcdf + 1 + 1 谢谢@Thanks!
GS9452 + 1 谢谢@Thanks!
wqx520 + 1 + 1 谢谢@Thanks!
aventadorchan + 1 + 1 我很赞同!
breezegyln + 1 用心讨论,共获提升!
18377557325 + 1 + 1 谢谢@Thanks!
holdlover + 1 + 1 用心讨论,共获提升!
heju + 1 + 1 谢谢@Thanks!
zjun777 + 1 + 1 用心讨论,共获提升!
dachui666 + 1 + 1 谢谢@Thanks!
chshxp + 1 + 1 我很赞同!
waynewange + 1 + 1 谢谢@Thanks!
klmytwb + 1 + 1 谢谢@Thanks!
anshidalaowang + 1 热心回复!
hinsley + 1 + 1 我很赞同!
xiaomr1990 + 1 谢谢@Thanks!
bsxu + 1 + 1 厉害了
wind-mill + 2 + 1 求一份安卓成品
zhuar + 1 + 1 谢谢@Thanks!
jackkane + 1 + 1 我很赞同!
a11066424 + 1 热心回复!
wang82530 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
17640256782 + 1 + 1 我很赞同!
n118p1 + 1 + 1 谢谢@Thanks!
大黑可乐 + 1 + 1 我很赞同!
fhb + 1 + 1 我很赞同!
淘人星星 + 1 + 1 用心讨论,共获提升!
mosc + 1 + 1 谢谢@Thanks!
zizia + 1 + 1 谢谢@Thanks!
唐小样儿 + 1 + 1 我很赞同!
z909022684 + 1 + 1 用心讨论,共获提升!
bookbug + 1 + 1 谢谢@Thanks!
qsj521521 + 1 + 1 谢谢@Thanks!
yyuiojiopytio78 + 1 热心回复!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

sky_flb 发表于 2026-1-25 22:26
大佬 可以研究下 相亲软件嘛。青藤之恋。牵手之类的。VIP老贵了。都不能看那些访客家里天天催~~~~~~~~

免费评分

参与人数 5吾爱币 +4 热心值 +5 收起 理由
SmaWhite + 1 + 1 陌陌也行啊!
ih2hi + 1 + 1 我很赞同!
Jackin + 1 + 1 我很赞同!
Yiduoyun7 + 1 这个是真没想到,加油
Echo9466 + 1 + 1 我很赞同!

查看全部评分

18907994442 发表于 2026-1-25 22:10
大佬能不能搞成apk模式或者PC版本的呀,我刚下载了  发现不会用呐

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
DSugar + 1 + 1 我很赞同!

查看全部评分

2Mizuki 发表于 2026-1-25 23:18
所有业务逻辑居然都是在本地判定的么,不知道咋想的
Henglie 发表于 2026-1-25 22:48
奇怪,为什么这个酷我破解这么简单?没有额外后端效验吗?
picoyiyi 发表于 2026-1-25 22:14
蹲一个成品,感谢!

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
zst5678 + 1 + 1 此为违规行为,请遵守论坛版规!

查看全部评分

lingye512 发表于 2026-1-25 22:13
能发布一下成品的ipa么
忧郁之子 发表于 2026-1-25 22:19
看了一下不是特别明白,请问有安卓版的方法吗?谢谢
Cmzlwc 发表于 2026-1-25 22:29
唉,不会用,只会用现成的。
sky_flb 发表于 2026-1-25 22:26
大佬呀。膜拜。我有这么好的技术,所有VIP软件都可以畅通无阻了~~~~~~~~~~~
sky_flb 发表于 2026-2-3 17:36
fx820 发表于 2026-2-2 09:58
大哥,35岁真的会失去对女人的欲望吗?我感觉自己生理需求没有二十出头那么强了

一样,现在有时候对女人都没啥兴趣。单身都挺好的感觉~
Dickxie 发表于 2026-1-25 22:15
压缩文件怎么用
乡间人 发表于 2026-1-25 22:33
越是不知怎么用越是眼馋大佬 ,唉
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - 52pojie.cn ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2026-3-13 07:41

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表