问题请教
Closed this issue · 4 comments
1、大佬好,新手想请教一下你的脱壳步骤,我尝试了ConfuserEx 1.0.0脱壳步骤,也尝试了直接使用ConfuserEx-Unpacker-v2.0但仍有部分还是混淆的状态;
2、想请教一下加载mod文件的函数在哪个命名空间的哪个类内;
3、另外想求助大佬个事情,V21版本需要通过启动器去解压mod包,但是因为这个版本“停服”了,导致本地mod的zip无法解压,大佬能否帮忙看一下这个解压机制,是否在线验证会返回数据流来参与解压,如果不是能否绕过在本地将mod解压。
因为上一个版本的源码已经能满足需求,所以纯粹是学习一下,如果大佬没有精力也无妨,先行谢谢大佬。
大佬如果打算看的话,回复我一下,我把文件用邮箱中转站贴上来
感觉改版太多了,说个思路吧。
官方之前有个mod编辑器,里面的dll是没有加密的。各种改版混淆后 很多函数可以继续参考这个原来的代码。混淆后的代码再怎么脱壳,很多信息还是丢失了的,比如函数名啥的。看函数签名跟原本的代码对比,很容易就可以猜出原来的代码。
另外mod加载部分,我其实并没有很重点去看加载mod的逻辑跟验证,我本质上只是想要解密。
我主要用de4dot反混淆,然后用dnSpy查看修改dll,但是估计dll做了校验,反混淆的dll会闪退,我是直接编辑原本dll的IL代码,关键函数插入Console.WriteLine 代码把密钥写入日志即可。C#的加密基本上只要那几个设置KEY,IV的方法上加代码就OK,抓出多个KEY,IV 基本上只要测试一下 就知道哪个是哪个的。拿到key iv我就基本算完工了
有人指点一个思路是很珍贵的,感谢回复。大佬提到的第二段,之前只是大概看了其中的脚本加密工具,完全没意识到这个,刚才去看了看确实如此。其实还是要反混淆到一定程度吧,因为有的版本要修正乱码。
大佬,我最后一句的对错,你考虑看要不要直接改上面回复我,总感觉不太妥当。
其实还是要反混淆到一定程度吧,因为有的版本要修正乱码。 这句嘛?
有好用的工具干嘛不用。我这边只是大概讲一下我怎么抓密钥的流程,没想用解密的dll直接运行游戏跟mod,所以跟你目的不一样。逆向这种事情本来就是很灵活变通的,有的时候懒得解密,直接游戏运行起来内存里面抓数据出来就完事了。看你需要只要能折腾出来就是好办法,有啥妥当不妥当的。我自己也是业余,全凭个人兴趣在折腾
OK,感谢解答