查壳

1.先看下目录结构:



2.查下,是什么语言 ==> Net的,那不用说了,肯定能破解(毕竟是老本行嘛~)



混淆与反混淆

3.dnSpy打开后发现很多变量是乱码



4.用de4dot跑一波



5.生成了一个反混淆过的exe



程序调试

6.改名后打开,乱码问题解决



下断
PS:刚开始你单步跟着后面走走`F11`,遇到系统方法就`F10`跳过,或者导航返回一步`←`,在跳进方法的下一行设置个断点`F9`,然后继续运行就好
7.在程序入口处下个断



8.单步走一波



9.F11到了程序入口处



10.核心点



11.单步跟进去后发现程序动态加载了一个dll(至于我为什么知道是验证dll,请继续往后看)



12.在方法尾部,发现有个返回的bool值,大胆推测下,就是关键性的验证了



13.验证框



14.顺便输入点东西(激活码长点)



15.激活窗口关闭后会返回一个验证失败的bool值



16.调试修改看看



17.调试已绕过,但是打开的时候闪退



18.说明修改不彻底,后面程序还是通过ClassMain.boolrun来判断



19.那就编辑一下,发现特殊符号编译不通过



20.那就换个新的突破点



21.发现验证方法,那就编辑下



22.废掉验证,然后编译



23.修改完毕



24.保存下dll



25.大部分软件这一步就搞定了,但是这边还是不行



PS:老版本这一步就搞定了,新版本会始终从资源文件中释放dll



反编译

26.那就继续上大招:Reflector打开



27.去资源列表里面找dll



拖进dnspy发现,倒数第四个就是的了



28.那感情好啊,用我们之前调试生成的破解版dll替换下资源项的值



29.用修改后的dll替换旧的资源值



30.reflexil保存下



31.保存替换



32.ok了(根目录木有vip那个dll哦)


友情链接
ioDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信