返回列表 发新帖

代码抽取壳

  [复制链接]

2

主题

130

回帖

473

积分

初中生

Rank: 3Rank: 3

金币
63
好评
1
信誉
100
QQ
发表于 2026-1-15 12:35:09 来自手机  | 显示全部楼层 | 阅读模式  来自 江西
什么是代码抽取壳?
就是把Java/Kotlin方法体抽空,转为C/C++代码编译到.so动态库,运行时通过JNI调用执行,同时将活动类里的原始代码抽走。

除了那种较垃圾的抽取壳(绑绑加固免费版),市面上大部分能看见的都是数字壳加固,比较免费还好用,修复难度相对较高,如果要完美修复需要掌握Native层逆向分析能力。
随便找一个数字壳加固样本,把它的dex脱壳出来,随便进入活动类就会发现很多代码都被抽走了,基本都是native onCreate:
  1. .method public native nativeonCreate(Landroid/os/Bundle;)V
  2. .end method
复制代码

这就是被加固后的onCreate
可以发现转nitive了

那改如何修复呢?
先说说邪修
关于邪修的解释
邪修(非完美修复)是指不还原真实逻辑,直接让程序能运行起来的修复方法。
邪修有很多种
第一种就是只调用父类,最常见的一个
  1. .method protected onCreate(Landroid/os/Bundle;)V
  2.     invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V
  3.     return-void
  4. .end method
复制代码

第二种就是直接返回空方法
  1. .method protected onCreate(Landroid/os/Bundle;)V
  2.     nop
  3.     nop
  4.     return-void
  5. .end method
复制代码

第三种就是删除native调用
  1. # 直接删除native调用,让方法为空
  2. .method protected onCreate(Landroid/os/Bundle;)V
  3.     return-void
  4. .end method
复制代码

为什么能运行呢?
1.辅助类较少或没有辅助类
2.没有多少能抽的函数
3.父类已有完整实现 子类不需要额外逻辑
4.逻辑在其他地方
5.只是容器Activity
这就是邪修能运行起来的原因
运行不起来是为什么?
那就说明调用的函数不够,父类逻辑少 需要子类来补充关键逻辑 甚至不止onCreate被抽
结果:能启动,但白屏+没功能+会崩溃。

那该如何让它正常运行不用邪修呢?(完美修复)
这个就非常难了,单说邪修修复 差不多只算完美修复的半成品 邪修可能都是因为完美修复来的,而且邪修只是临时解决方案,让程序能启动但不保证功能完整。真正完美修复需要动态调试.so文件,分析Native代码,还原原始逻辑。
然后分析每个辅助类和调用函数,试着重新还原原始代码,重新让所有被抽了的方法名重新调用起函数和辅助类,当然,这只是修复方法,原本的完整修复可能根本不止这些(新人发帖,不喜勿喷,有任何不对的地方可以评论,谢谢)
已有2人评分好评 金币 理由
顾北先森 + 1
青春向上 + 1 + 1 感谢分享。

查看全部评分 总评分:好评 +1  金币 +2 

回复

使用道具 举报

2

主题

130

回帖

473

积分

初中生

Rank: 3Rank: 3

金币
63
好评
1
信誉
100
QQ
发表于 2026-1-15 12:36:45 来自手机  | 显示全部楼层  来自 江西
本帖最后由 你的单念爸爸 于 2026-1-18 09:51 编辑

不敢细讲,所以说只讲这些理解一下,下一个贴可能出实战,还没做,还在写草稿

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

27

主题

893

回帖

4003

积分

大学生

Rank: 5Rank: 5

金币
2127
好评
2
信誉
90

考神

发表于 2026-1-15 12:39:04 来自手机  | 显示全部楼层  来自 山东
看看隐藏
回复

使用道具 举报

8

主题

633

回帖

3657

积分

大学生

Rank: 5Rank: 5

金币
1841
好评
2
信誉
101
发表于 2026-1-15 12:40:15 来自手机  | 显示全部楼层  来自 安徽
看看隐藏
回复

使用道具 举报

2

主题

378

回帖

1957

积分

高中生

Rank: 4

金币
693
好评
10
信誉
100
发表于 2026-1-15 12:40:48 来自手机  | 显示全部楼层  来自 吉林
看看隐藏
回复

使用道具 举报

39

主题

1192

回帖

6448

积分

硕士生

孤儿

Rank: 6Rank: 6

金币
1109
好评
82
信誉
98
发表于 2026-1-15 12:41:02 来自手机  | 显示全部楼层  来自 四川
看看隐藏
回复

使用道具 举报

402

主题

2861

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
5053
好评
149
信誉
100

MT论坛新人MT论坛最佳新人MT论坛帅哥考神MT论坛活跃会员MT论坛侠客

发表于 2026-1-15 12:41:21 来自手机  | 显示全部楼层  来自 四川
这个要学习一下
回复

使用道具 举报

2

主题

4507

回帖

1万

积分

禁止访问

iKUN

金币
1214
好评
16
信誉
111
发表于 2026-1-15 12:44:29 来自手机  | 显示全部楼层  来自 广西
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

1

主题

635

回帖

1805

积分

高中生

Rank: 4

金币
1225
好评
0
信誉
100
发表于 2026-1-15 12:45:45 来自手机  | 显示全部楼层  来自 山东
谢谢分享
回复

使用道具 举报

6

主题

1054

回帖

3212

积分

大学生

Rank: 5Rank: 5

金币
2264
好评
0
信誉
100
发表于 2026-1-15 12:47:44 来自手机  | 显示全部楼层  来自 江西
感谢分享
回复

使用道具 举报

58

主题

824

回帖

3110

积分

大学生

VKitm

Rank: 5Rank: 5

金币
98
好评
8
信誉
103

考神MT论坛帅哥MT论坛最佳新人MT论坛新人MT论坛活跃会员

QQ
发表于 2026-1-15 12:47:49 来自手机  | 显示全部楼层  来自 安徽
看看隐藏
回复

使用道具 举报

2

主题

1456

回帖

5181

积分

硕士生

Rank: 6Rank: 6

金币
3874
好评
0
信誉
100

MT论坛最佳新人考神

发表于 2026-1-15 12:49:39 来自手机  | 显示全部楼层  来自 湖南
学习方法
回复

使用道具 举报

54

主题

3590

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
795
好评
190
信誉
180

MT论坛新人MT论坛最佳新人MT论坛帅哥考神MT论坛活跃会员挂机大佬

发表于 2026-1-15 12:49:42 来自手机  | 显示全部楼层  来自 陕西
看看隐藏。
回复

使用道具 举报

5

主题

2100

回帖

7247

积分

硕士生

Rank: 6Rank: 6

金币
2691
好评
16
信誉
100

考神MT论坛最佳新人MT论坛帅哥MT论坛新人

发表于 2026-1-15 12:50:56 来自手机  | 显示全部楼层  来自 河南
看看
回复

使用道具 举报

12

主题

326

回帖

1304

积分

禁止访问

金币
519
好评
0
信誉
100
QQ
发表于 2026-1-15 12:51:30 来自手机  | 显示全部楼层  来自 江苏
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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