12下一页
返回列表 发新帖

自研“Trace dex smail”???或许有机会能实现??

[复制链接]

33

主题

92

回帖

2886

积分

大学生

Rank: 5Rank: 5

金币
1355
好评
132
信誉
120
QQ
发表于 2026-4-5 19:51:01 | 显示全部楼层 | 阅读模式  来自 广东
本帖最后由 Flash丶光芒 于 2026-4-5 19:53 编辑

今天是周日,也是放假的第二天,闲来无事,不知道要干点啥……出去玩?下雨天不方便。更新 Layout Inspect?有点懒……

于是,我想起了之前有人在群里讨论是否能实现 trace smail,但貌似我也没听说过,更多的是见到大佬们 trace so 更多?然后我想了想,既然能 trace so,那么 trace smail 是否能实现?

所以,我中午吃完午饭之后,抱着强烈的好奇心打开了电脑,赶紧写一下个 demo 试试?万一真的能办到呢?

首先,我先创建了新项目,紧挨着又新建了MainActivity.java,在onCreate写了如下代码:

如上图的代码逻辑来看,对于一个 arm64 的设备而言,众所周知,不可能执行到黄色圈子里面的代码,即:System.out.println("Your device is 32bit");

是的,我的 demo 就如此简单。写这个判断呢,就是来验证我后面的 trace 的,总不能把没有执行过的 smail 也打印出来吧,那可是违背了 trace 原则。

接着,既然 demo 已经准备好了,那快点研究一下 libart.so 瞧瞧咯。经过一段时间的研究,一边研究一边写着 frida 脚本,整个过程中调试了数不清的次数……

后来呀,也算是有了结果,效果如下:

结果还算是令我比较满意,但是我的 frida 脚本还不是很完善,偶尔会崩溃。看看后续能不能继续优化吧……

本帖子中包含更多资源

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

x
回复

使用道具 举报

10

主题

1978

回帖

6524

积分

硕士生

2024-06-21

Rank: 6Rank: 6

金币
2037
好评
62
信誉
140

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

发表于 2026-4-5 19:57:15 来自手机  | 显示全部楼层  来自 江西
嘿客
回复

使用道具 举报

54

主题

3590

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
795
好评
190
信誉
180

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

发表于 2026-4-5 19:59:07 来自手机  | 显示全部楼层  来自 陕西
大佬不要没事就研究技术,万一真研究出来了怎么办?
回复

使用道具 举报

26

主题

1059

回帖

5239

积分

硕士生

Rank: 6Rank: 6

金币
434
好评
5
信誉
102
发表于 2026-4-5 20:03:08 来自手机  | 显示全部楼层  来自 广东
加油啊,好东西
回复

使用道具 举报

0

主题

2432

回帖

6729

积分

硕士生

Rank: 6Rank: 6

金币
3288
好评
1
信誉
86
发表于 2026-4-5 20:05:36 来自手机  | 显示全部楼层  来自 贵州
继续加油哦
回复

使用道具 举报

78

主题

2432

回帖

9835

积分

硕士生

Rank: 6Rank: 6

金币
4162
好评
57
信誉
116

MT论坛新人考神

QQ
发表于 2026-4-5 20:21:51 来自手机  | 显示全部楼层  来自 江苏
嘿壳
回复

使用道具 举报

16

主题

1778

回帖

1万

积分

博士生

阿巴阿巴

Rank: 7Rank: 7Rank: 7

金币
2219
好评
244
信誉
190
发表于 2026-4-5 20:25:24 来自手机  | 显示全部楼层  来自 贵州
本帖最后由 零星0523 于 2026-4-5 20:29 编辑

无敌,但是art解释器的详细trace寄存器怎么百分百确定呢,这东西貌似根据手机很难确定吧
回复

使用道具 举报

5

主题

3553

回帖

6283

积分

硕士生

Rank: 6Rank: 6

金币
802
好评
0
信誉
107
发表于 2026-4-5 21:00:38 来自手机  | 显示全部楼层  来自 山东
实现了吗
回复

使用道具 举报

118

主题

2441

回帖

6641

积分

硕士生

Rank: 6Rank: 6

金币
316
好评
53
信誉
25

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

发表于 2026-4-5 21:41:29 来自手机  | 显示全部楼层  来自 河南
前排
回复

使用道具 举报

110

主题

2689

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
1257
好评
125
信誉
195

考神MT论坛新人MT论坛活跃会员MT论坛帅哥MT论坛灌水老大

QQ
发表于 2026-4-6 23:24:19 来自手机  | 显示全部楼层  来自 河南
看看
回复

使用道具 举报

0

主题

878

回帖

1727

积分

高中生

Rank: 4

金币
346
好评
0
信誉
100
发表于 2026-4-7 10:30:38 | 显示全部楼层  来自 福建
支持一下!
回复

使用道具 举报

12

主题

1325

回帖

5144

积分

硕士生

Rank: 6Rank: 6

金币
2801
好评
0
信誉
90
发表于 2026-4-23 02:03:46 来自手机  | 显示全部楼层  来自 新疆
大佬,我就是想知道为什么这边有一个作用域的开关,我这个怎么没有啊?我更新lsp以后就没有了。

本帖子中包含更多资源

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

x
回复

使用道具 举报

33

主题

92

回帖

2886

积分

大学生

Rank: 5Rank: 5

金币
1355
好评
132
信誉
120
QQ
发表于 2026-4-24 08:16:53 来自手机  | 显示全部楼层  来自 广东
梦境虚幻 发表于 2026-4-23 02:03
大佬,我就是想知道为什么这边有一个作用域的开关,我这个怎么没有啊?我更新lsp以后就没有了。 ...

下载101的Layout Inspect
回复

使用道具 举报

0

主题

530

回帖

937

积分

高中生

Rank: 4

金币
191
好评
0
信誉
100
发表于 2026-4-24 11:12:32 | 显示全部楼层  来自 福建
支持一下!
回复

使用道具 举报

39

主题

349

回帖

1676

积分

高中生

Rank: 4

金币
643
好评
11
信誉
125

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

发表于 2026-4-24 11:55:15 来自手机  | 显示全部楼层  来自 北京
有个不依赖jvmti的思路,可以用inline hook去hook Instrumentation类的导出函数,获取第一个参数拿到instrumentation对象,然后addListener实现dex trace
回复

使用道具 举报

发表回复

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

本版积分规则

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