返回列表 发新帖

【安卓脱壳】正则匹配修复*60代码

  [复制链接]

68

主题

2557

帖子

1万

积分

管理员

Hasky

Rank: 9Rank: 9Rank: 9

金币
6036
好评
594
信誉
130

MT论坛优秀版主MT论坛活跃会员MT论坛最佳新人小明星MT论坛侠客MT论坛帅哥MT论坛大神2019-5.1节快乐2018MT论坛优秀成员考神

发表于 2022-3-25 19:53:04 | 显示全部楼层 | 阅读模式
感谢gs521848

不包含vmp 不包含vmp 不包含vmp  别无脑问我怎么没有native onCreate修复native onCreate还得了 分分钟律师函

由于可能会被针对 所以开启售价贴 10金币 相信各位不是没有 也不多 金币也没啥用



*60脱壳后 修复了native oncreate 直接替换dex 修复Application 然后打包app 会遇到闪退
这里通过adb logcat来分析问题

  1. static {
  2.             StubApp.interface11(4531);
复制代码
  1. invoke-static {v0}, Lcom/stub/StubApp;->interface11(I)V
复制代码
  1. this.mContext = StubApp.getOrigApplicationContext(context.getApplicationContext());
复制代码
  1. com/stub/StubApp;->getOrigApplicationContext
复制代码
这些等等一些信息 导致app无法运行
然后我们去dex搜索这些信息 发现很多条 而且寄存器都不一样 所以如何快速删除呢
这是 正则匹配就用到了
如下:
  1. /*删除
  2.                 invoke-static/range {v0 .. v0}, Lcom/stub/StubApp;->getOrigApplicationContext(Landroid/content/Context;)Landroid/content/Context;
  3.                 move-result-object v0
  4.                 */
复制代码
  1. /*
  2.                 替换:
  3.                     #disallowed odex opcode
  4.                     #invoke-object-init/range {v0 .. v0}, Ljava/lang/Object;-><init>()V
  5.                 nop
  6.                     替换成:
  7.                     invoke-direct {p0}, Ljava/lang/Object;-><init>()V

  8.                     替换:
  9.                     #disallowed odex opcode
  10.                 #return-void-barrier
  11.                 nop
  12.                     替换成:
  13.                     return-void
  14.                  */
复制代码
  1. //删除:invoke-static {v0}, Lcom/stub/StubApp;->interface11(I)V
复制代码
  1. /*替换invoke-static {v2, v3}, Lcom/stub/StubApp;->mark(Landroid/location/LocationManager;Ljava/lang/String;)Landroid/location/Location;
  2.                     换成invoke-virtual {v2, v3}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
  3.                 */
复制代码
  1. invoke-static \\{([v|p]\\d+), ([v|p]\\d+)\\}, Lcom/qihoo/util/StubApp(\\d+);->mark\\(Landroid/location/LocationManager;Ljava/lang/String;\\)Landroid/location/Location
复制代码
  1. invoke-static/range \\{([v|p]\\d+) .. ([v|p]\\d+)\\}, Lcom/qihoo/util/StubApp(\\d+);->mark\\(Landroid/location/LocationManager;Ljava/lang/String;\\)Landroid/location/Location;
复制代码
给出通用的方案:
  1. invoke-virtual {$1, $2}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;", "invoke-virtual/range {$1 .. $2}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;", "", "", "", "", "", "invoke-virtual {$1, $2}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;", "invoke-virtual/range {$1 .. $2}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;", "", "", "", "", "", "", "invoke-virtual {$1}, Ldalvik/system/DexFile;->entries()Ljava/util/Enumeration;", "invoke-virtual/range {$1 .. $2}, Ldalvik/system/DexFile;->entries()Ljava/util/Enumeration;", "invoke-virtual {$1, $2}, Landroid/content/res/AssetManager;->openFd(Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor;", "invoke-virtual/range {$1 .. $2}, Landroid/content/res/AssetManager;->openFd(Ljava/lang/String;)Landroid/content/res/AssetFileDescriptor
复制代码

于是 工具就出来了 工具来源于网络 本人稍作修改 匹配现在的代码调用 新版我也没去分析 所以 如果漏掉了什么 可以私信我 我去补齐 后续开源
使用方法 先反编译dex为samli 然后双击bat 然后选择反编译后samli的文件夹 就可以 由于没有介入dexlib 所以只能反编译smali后再去匹配 后续会添加dexlib 直接可以匹配dex 不需要反编译为samli了

工具处理速度取决于你samli中包含多少调用 也可以选用快速方法



点击进群学习


https://hasky.lanzouj.com/ixNBm021qywb









本帖子中包含更多资源

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

x
已有3人评分好评 金币 理由
Team-H + 1 + 1 666666
饥饿龙 + 1
穷歡 + 1 + 1

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

回复

使用道具 举报

8

主题

541

帖子

3522

积分

大学生

Rank: 5Rank: 5

金币
552
好评
1
信誉
100
发表于 2022-3-25 19:58:07 来自手机  | 显示全部楼层
支持大佬
回复

使用道具 举报

4

主题

1905

帖子

4560

积分

大学生

Rank: 5Rank: 5

金币
53
好评
3
信誉
100

MT论坛新人考神

发表于 2022-3-25 19:58:34 来自手机  | 显示全部楼层
回复

使用道具 举报

0

主题

1605

帖子

7677

积分

硕士生

Rank: 6Rank: 6

金币
2688
好评
1
信誉
100
发表于 2022-3-25 20:00:00 来自手机  | 显示全部楼层
感谢分享
回复

使用道具 举报

48

主题

895

帖子

2786

积分

大学生

Rank: 5Rank: 5

金币
666
好评
5
信誉
100

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

发表于 2022-3-25 20:02:31 来自手机  | 显示全部楼层
这是什么
回复

使用道具 举报

0

主题

394

帖子

1044

积分

高中生

Rank: 4

金币
582
好评
0
信誉
100
发表于 2022-3-25 20:03:02 来自手机  | 显示全部楼层
支持大佬
回复

使用道具 举报

0

主题

103

帖子

393

积分

初中生

Rank: 3Rank: 3

金币
124
好评
0
信誉
100

MT论坛帅哥MT论坛新人

发表于 2022-3-25 20:04:04 来自手机  | 显示全部楼层
谢谢分享,,,,
回复

使用道具 举报

2

主题

214

帖子

699

积分

初中生

Rank: 3Rank: 3

金币
109
好评
0
信誉
100
发表于 2022-3-25 20:04:38 来自手机  | 显示全部楼层
看看。。。。。。
回复

使用道具 举报

20

主题

4417

帖子

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
2321
好评
25
信誉
100

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

发表于 2022-3-25 20:07:27 来自手机  | 显示全部楼层
哈士奇大佬
回复

使用道具 举报

145

主题

1498

帖子

5766

积分

硕士生

沐雨阁

Rank: 6Rank: 6

金币
151
好评
48
信誉
100

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

QQ
发表于 2022-3-25 20:10:52 来自手机  | 显示全部楼层
首先你要会完整脱修
回复

使用道具 举报

0

主题

606

帖子

1364

积分

高中生

Rank: 4

金币
216
好评
0
信誉
100
发表于 2022-3-25 20:10:56 来自手机  | 显示全部楼层
学习学习
回复

使用道具 举报

0

主题

787

帖子

2370

积分

大学生

Rank: 5Rank: 5

金币
887
好评
1
信誉
100

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

发表于 2022-3-25 20:12:19 来自手机  | 显示全部楼层
支持大佬
回复

使用道具 举报

0

主题

307

帖子

1024

积分

高中生

Rank: 4

金币
686
好评
0
信誉
100
发表于 2022-3-25 20:12:50 来自手机  | 显示全部楼层
看看了啊。
回复

使用道具 举报

3

主题

1862

帖子

8549

积分

硕士生

Rank: 6Rank: 6

金币
2706
好评
7
信誉
100

MT论坛最佳新人考神

发表于 2022-3-25 20:13:14 来自手机  | 显示全部楼层
看看隐藏
回复

使用道具 举报

6

主题

160

帖子

537

积分

初中生

Rank: 3Rank: 3

金币
202
好评
1
信誉
100
发表于 2022-3-25 20:14:07 来自手机  | 显示全部楼层
赞赏不了。
回复

使用道具 举报

发表回复

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

本版积分规则

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