返回列表 发新帖

iapp应用实战分析

  [复制链接]

38

主题

992

回帖

3592

积分

大学生

新手小白

Rank: 5Rank: 5

金币
1399
好评
4
信誉
100

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

QQ
发表于 2026-1-18 10:13:19 | 显示全部楼层 | 阅读模式  来自 山东
本帖最后由 一个普通的人 于 2026-1-18 10:19 编辑

再次前言
在混淆哥的群里面发现了这个软件,叫黑盒助手,其实当时就被混淆哥秒杀了(太有石粒了),但是他没发思路,我就想研究一下。
今天闲着没事看了一下这个软件。



正文


通过mt管理器查看发现软件是一个iapp应用,此类应用数据不在dex中,所以不能按照常规软件思路。
根据我地道的抓包技术,成功抓到了数据,直接把
  1. {"code":0,"msg":"卡密不存在"}
复制代码
改成
  1. {"code":1,"msg":"卡密不存在"}
复制代码
就可以了,但是这样有一个缺点,就是抓包软件必须一直留在后台,不然没效果,这时候可以直接内置进软件,不过我讲另一个方法。
通过mt管理器注入日志记录发现:c.b.a.a.h的e方法、c.b.a.a.w的n1和M0方法、d.a.b的j方法都有{"code":0,"msg":"卡密不存在"}的字样。
通过DeepSeek分析发现,卡密验证逻辑是这样的:用户输入卡密 → n1()方法处理 →
  调用 c.b.a.a.h的e方法 发送网络请求 →
  服务器返回验证结果 →
  日志记录 →
  返回给用户界面
网络请求逻辑是这样的:c.b.a.a.h的e方法 → 创建URL连接 →
  h.j() 执行请求 →
  获取服务器响应 →
  返回给调用者
这时我突然想到:抓包抓到的就是网络请求,而我们修改抓包抓到的数据可以修改成功,那么直接修改e方法是否也能成功呢?
于是我打开e方法,由于这个软件是网络验证,不是写死在本地的,所以我们直接添加代码,拦截网络请求,把逻辑写在本地就可以了。
使用DeepSeek,写出一个这样逻辑的代码
  1. .method public static e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
  2.     .registers 9
  3.    
  4.     # ========== 【新增】卡密验证拦截 ==========
  5.     # 检查是否是卡密验证URL
  6.     move-object v0, p0
  7.    
  8.     # 检查域名
  9.     const-string v1, "zcj.qnga.cn"
  10.     invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
  11.     move-result v1
  12.    
  13.     if-eqz v1, :cond_check_api
  14.    
  15.     goto :cond_continue
  16.    
  17.     :cond_check_api
  18.     # 检查接口路径
  19.     const-string v1, "use_imei.php"
  20.     invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
  21.     move-result v0
  22.    
  23.     if-eqz v0, :cond_return_success
  24.    
  25.     goto :cond_continue
  26.    
  27.     :cond_return_success
  28.     # 返回内置成功数据
  29.     const-string p0, "{"code":1,"msg":"\u6fc0\u6d3b\u6210\u529f","data":{"end_time":"2099-12-31 23:59:59","type":"VIP","status":1}}"
  30.    
  31.     return-object p0
  32.    
  33.     :cond_continue
  34.     # ========== 【结束】新增代码 ==========
  35.    
  36.     # 以下是原有代码,保持不变
  37.     if-nez p2, :cond_4

  38.     const-string p2, "utf-8"

  39.     :cond_4
  40.     move-object v3, p2

  41.     :try_start_5
  42.     new-instance v0, Ljava/net/URL;

  43.     invoke-static {p0}, Lc/b/a/a/h;->p(Ljava/lang/String;)Ljava/lang/String;

  44.     move-result-object p0

  45.     .line 5
  46.     .local v0, "00DA.java:5":V
  47.     invoke-static {p0}, Lmt/LogB15A40;->a(Ljava/lang/Object;)V
  48.     invoke-static {p0}, Lmt/Log83D09F;->a(Ljava/lang/Object;)V

  49.     invoke-direct {v0, p0}, Ljava/net/URL;-><init>(Ljava/lang/String;)V

  50.     invoke-static {v0}, Lc/b/a/a/h;->l(Ljava/net/URL;)Ljava/net/HttpURLConnection;

  51.     move-result-object v1

  52.     const/4 v4, 0x0
  53.     const/4 v5, 0x0
  54.     move-object v2, p1
  55.     invoke-static/range {v0 .. v5}, Lc/b/a/a/h;->j(Ljava/net/URL;Ljava/net/HttpURLConnection;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;

  56.     move-result-object p0

  57.     .line 6
  58.     .local v0, "00DA.java:6":V
  59.     invoke-static {p0}, Lmt/LogB15A40;->a(Ljava/lang/Object;)V
  60.     invoke-static {p0}, Lmt/Log83D09F;->a(Ljava/lang/Object;)V
  61.     return-object p0
  62.     :try_end_26
  63.     .catch Ljava/lang/Exception; {:try_start_5 .. :try_end_26} :catch_26

  64.     :catch_26
  65.     move-exception p0

  66.     invoke-virtual {p0}, Ljava/lang/Exception;->printStackTrace()V

  67.     const/4 p0, 0x0

  68.     return-object p0
  69. .end method
复制代码

到这里签名安装就可以了。
这软件没有签名校验,没有加固,可以说非常适合练手,不过软件类型好像有点违规了(虽然这是一个空壳软件,专门骗人的),就先不发了。
这种软件基本上都是一个逻辑,学会举一反三就可以轻松拿捏
如果你有不懂的问题,或者有不同的思路,也可以提出,看看大家能不能玩出花来
回复

使用道具 举报

26

主题

597

回帖

1873

积分

高中生

Rank: 4

金币
1117
好评
1
信誉
100

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

发表于 2026-1-18 10:18:42 来自手机  | 显示全部楼层  来自 海南
感谢分享
回复

使用道具 举报

31

主题

1930

回帖

6528

积分

硕士生

六午

Rank: 6Rank: 6

金币
2492
好评
5
信誉
112

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

QQ
发表于 2026-1-18 10:20:23 来自手机  | 显示全部楼层  来自 山东
看看隐藏
回复

使用道具 举报

17

主题

947

回帖

3815

积分

大学生

Rank: 5Rank: 5

金币
1227
好评
0
信誉
98
发表于 2026-1-18 10:20:47 来自手机  | 显示全部楼层  来自 江西
%suee
回复

使用道具 举报

3

主题

4430

回帖

1万

积分

博士生

https://0818.neocities.org/

Rank: 7Rank: 7Rank: 7

金币
1873
好评
6
信誉
102
发表于 2026-1-18 10:21:07 来自手机  | 显示全部楼层  来自 新疆
看看
回复

使用道具 举报

1

主题

1248

回帖

7602

积分

硕士生

Rank: 6Rank: 6

金币
3398
好评
0
信誉
101
发表于 2026-1-18 10:30:43 来自手机  | 显示全部楼层  来自 四川
看看隐藏
回复

使用道具 举报

26

主题

1059

回帖

5239

积分

硕士生

Rank: 6Rank: 6

金币
434
好评
5
信誉
102
发表于 2026-1-18 10:32:08 来自手机  | 显示全部楼层  来自 广东
看看
回复

使用道具 举报

11

主题

778

回帖

2599

积分

大学生

Rank: 5Rank: 5

金币
720
好评
3
信誉
101
发表于 2026-1-18 10:32:24 来自手机  | 显示全部楼层  来自 湖南
看看
回复

使用道具 举报

39

主题

1192

回帖

6448

积分

硕士生

孤儿

Rank: 6Rank: 6

金币
1109
好评
82
信誉
98
发表于 2026-1-18 10:43:17 来自手机  | 显示全部楼层  来自 四川
感谢分享
回复

使用道具 举报

13

主题

1279

回帖

3700

积分

大学生

神月

Rank: 5Rank: 5

金币
3791
好评
1
信誉
101
发表于 2026-1-18 10:49:36 来自手机  | 显示全部楼层  来自 广东
看看隐藏
回复

使用道具 举报

51

主题

2972

回帖

8674

积分

硕士生

看看

Rank: 6Rank: 6

金币
132
好评
8
信誉
140

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

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

使用道具 举报

0

主题

1346

回帖

4086

积分

大学生

Rank: 5Rank: 5

金币
3727
好评
0
信誉
100

MT论坛新人

发表于 2026-1-18 10:52:06 来自手机  | 显示全部楼层  来自 四川
进来学习下。
回复

使用道具 举报

28

主题

1906

回帖

7023

积分

硕士生

Rank: 6Rank: 6

金币
4150
好评
5
信誉
100
发表于 2026-1-18 10:52:07 来自手机  | 显示全部楼层  来自 浙江
看看
回复

使用道具 举报

0

主题

600

回帖

2399

积分

大学生

Rank: 5Rank: 5

金币
1724
好评
0
信誉
100
发表于 2026-1-18 10:52:33 | 显示全部楼层  来自 河北
学习交流
回复

使用道具 举报

12

主题

5248

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
1595
好评
16
信誉
578

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

发表于 2026-1-18 10:52:59 来自手机  | 显示全部楼层  来自 广东
看看隐藏
回复

使用道具 举报

发表回复

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

本版积分规则

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