查看: 13406|评论: 16
个人博客

[破解逆向] 利用frida手动破解AgileDotNetRT.dll最新版混淆加密

eumnq8 2021-03-02 09:38 13406 16
[复制链接]

3382

文章

19

评论

39

积分

普通会员LV2

积分
39

技术达人

发表于 2021-3-2 09:38:49 | 显示全部楼层 |阅读模式
本帖最后由 eumnq8 于 2021-3-2 09:39 编辑

背景:
1、被混淆加密的C#程序,界面的事件方法都被抽取为空了。通过dnspy查看方法,只剩一个ret
2、AgileDotNetRT加密原理,把这些事件的ILCode全部抽取出去,加密存储在AgileDotNetRT.dll或者AgileDotNetRT64.dll中。
3、程序启动的时候,通过AgileDotNetRT.dll hook住JIT的compileMethod方法,运行时解密替换IL代码,让jit机制生成nativecode。加大破解难度。

解决思路:
1、本来以为de4dot可以搞定,不过貌似最新版Agile不行。只能自己手动分析。
2、hook住compileMethod方法,把一个个被偷走的ILCode,找回来,通过dnspy编辑IL修补回去。

解决方法:
直接上frida hook代码
1、修改代码中‘EC模块反编译工具.exe’为自己目标exe名字
2、运行目标exe
3、pycharm启动脚本。不出意外,会看到4个地址。
4、操作界面上按钮,第一次触发的时候,pycharm控制台就会打印出被还原的ILCode和ILCodeSize
代码下载:
游客,如果您要查看本帖隐藏内容请评论


总结:
理论上可以通过frida脚本写出全自动脱Agile壳脚本。


0

文章

1

评论

0

积分

普通会员LV2

积分
0
发表于 2022-1-19 20:15:12 | 显示全部楼层
感谢lz分享了
评论

使用道具 举报

0

文章

1

评论

0

积分

普通会员LV2

积分
0
发表于 2022-1-26 20:31:55 | 显示全部楼层
谢谢分享!!!
评论

使用道具 举报

0

文章

2

评论

0

积分

普通会员LV2

积分
0
发表于 2022-1-26 21:48:39 | 显示全部楼层
我来康康,支持一下,666666
评论

使用道具 举报

0

文章

2

评论

0

积分

普通会员LV2

积分
0
发表于 2022-1-28 13:27:48 | 显示全部楼层
谢谢!谢谢!谢谢!
评论

使用道具 举报

0

文章

1

评论

0

积分

普通会员LV2

积分
0
发表于 2022-2-10 09:08:19 | 显示全部楼层
谢谢分享!!!
评论

使用道具 举报

0

文章

2

评论

0

积分

普通会员LV2

积分
0
发表于 2022-3-9 19:33:47 | 显示全部楼层
谢谢分享!!!
评论

使用道具 举报

0

文章

2

评论

0

积分

普通会员LV2

积分
0
发表于 2022-3-9 19:34:31 | 显示全部楼层
  谢谢分享    !!!!
评论

使用道具 举报

0

文章

1

评论

0

积分

普通会员LV2

积分
0
发表于 2022-6-4 10:27:33 | 显示全部楼层
npm install frida
谢谢分享!!!
评论

使用道具 举报

0

文章

2

评论

0

积分

普通会员LV2

积分
0
发表于 2022-7-29 22:21:55 | 显示全部楼层
谢谢分享
评论

使用道具 举报

您需要登录后才可以评论 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|易游网-易游模拟器 Copyright @2015-2026 ( 浙ICP备15028007号-1 )

GMT+8, 2026-10-3 17:20 , Processed in 0.057521 second(s), 11 queries , Gzip On, MemCache On.

© 2026 易游网-易游模拟器 Copyright @2015-2026

快速评论 返回顶部 返回列表