首页
社区
课程
招聘
[原创]开源的安卓时间旅行调试器,混淆、算法分析的强力助手
发表于: 4天前 2498

[原创]开源的安卓时间旅行调试器,混淆、算法分析的强力助手

4天前
2498

本项目是对 Tenet Trace Explorer 的修改版本,进行了一些改进和适配。
不想回复或者点赞的可直接进入项目阅读README,可以看到相同的内容
项目地址:d2fK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6B7K9i4q4A6N6e0t1H3x3U0u0Q4x3V1k6f1k6h3&6W2N6q4)9J5k6p5W2p5b7e0W2Q4x3X3f1H3

使用单步执行可以有效对抗这些混淆。

image-20250413124003343

分析算法时可便捷查看内存变化信息。

image-20250413124106913

支持向上单步、向下单步以及时间回溯。

CleanShot_2025_04_13_at_12_42_13

例如,我们可以明确知道 BLR X8 跳转到了 B.CS,并且知道 B.CS 进行了向左的分支跳转。

CleanShot_2025_04_13_at_15_50_56

有两个左右的小按钮,可以找涉及到这个寄存器的上一条汇编的位置

CleanShot_2025_04_13_at_15_52_14

安装插件

加载 Trace 文件

开始追踪

Shortcuts Configuration

Shortcuts List

请参考原版作者的博客文章:
Tenet: A Trace Explorer for Reverse Engineers

Trace 文件的格式规范可以参考原版仓库中的 tracers 目录:
a51K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6Y4j5h3q4K6k6h3c8W2L8r3g2F1i4K6u0r3N6r3g2F1k6i4c8Q4x3V1k6@1M7X3g2W2i4K6u0r3L8h3q4K6N6r3g2J5i4K6u0r3N6s2u0S2j5$3g2J5M7H3`.`.

注意: 本项目使用的 Trace 格式针对 ASLR 进行了定制修改。请参考 demo 文件夹中 log.txt 的第一行输出格式。其他部分与原版作者的格式保持一致。

import idaapi, os; print(os.path.join(idaapi.get_user_idadir(), "plugins"))
import idaapi, os; print(os.path.join(idaapi.get_user_idadir(), "plugins"))
for(int i=0; i<10; i++){
    printf("%d\n", i); // 假设当前选中此行
}
for(int i=0; i<10; i++){
    printf("%d\n", i); // 假设当前选中此行
}
1
import idaapi, os; print(os.path.join(idaapi.get_user_idadir(), "plugins"))
1
2
3
for(int i=0; i<10; i++){
    printf("%d\n", i); // 假设当前选中此行
}
  • 红色为已经走过的路径。
  • 蓝色为未来要走的路径。
  • 在 IDA Python 窗口输入以下命令获取插件目录路径:
    1
    import idaapi, os; print(os.path.join(idaapi.get_user_idadir(), "plugins"))
  • tenet 文件夹和 tenet_plugin.py 文件一起复制到上一步获取的 plugins 文件夹中。
  • 重启 IDA Pro。
  • 打开 demo 文件夹,将 libRequestEncoder.so 文件拖入 IDA Pro 进行分析。
  • 在 IDA 窗口左上角选择 File -> Load File -> Tenet Trace File
  • 选择 demo 文件夹中的 log.txt 文件打开。
  • 在 IDA 右下角的 Position 输入框中输入 1,跳转到 Trace 的起始位置。
  • 或者使用快捷键(见下文)开始单步调试。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 3天前 被棕熊编辑 ,原因: 修改附件
上传的附件:
收藏
免费 114
支持
分享
最新回复 (56)
雪    币: 2120
活跃值: (7730)
能力值: ( LV11,RANK:180 )
在线值:
发帖
回帖
粉丝
2
沙发
4天前
0
雪    币: 2824
活跃值: (4017)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
火钳刘明
4天前
0
雪    币: 48
活跃值: (3739)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4

为你点赞!
4天前
0
雪    币: 534
活跃值: (969)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
666
4天前
0
雪    币: 7530
活跃值: (4857)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
感谢分享
4天前
0
雪    币: 1720
活跃值: (3461)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
666
4天前
0
雪    币: 132
活跃值: (2378)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
熊老太牛逼了
4天前
0
雪    币: 800
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
9
好东西
4天前
0
雪    币: 4279
活跃值: (4119)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
666
4天前
0
雪    币: 2514
活跃值: (3169)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
沙发
4天前
0
雪    币: 30
活跃值: (1400)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
666
4天前
0
雪    币: 542
活跃值: (1242)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
火钳刘明
4天前
0
雪    币: 104
活跃值: (5358)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
666
4天前
0
雪    币: 616
活跃值: (4482)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
15
666
4天前
0
雪    币: 2129
活跃值: (4532)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
16
666
4天前
0
雪    币: 10
活跃值: (240)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
66666
4天前
0
雪    币: 2981
活跃值: (2504)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
多跟大佬学习。
3天前
0
雪    币: 3
活跃值: (586)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
666
3天前
0
雪    币: 20
活跃值: (1710)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
666
3天前
0
雪    币: 2048
活跃值: (5678)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
支持 x86指令吗
3天前
0
雪    币: 3196
活跃值: (2169)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
22
值得怀疑 支持 x86指令吗
原生就支持
3天前
0
雪    币: 2990
活跃值: (117482)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
赞????
3天前
0
雪    币: 477
活跃值: (1629)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
666
3天前
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
25
8888888888
3天前
0
游客
登录 | 注册 方可回帖
返回