【技术转载】 .net逆向之:trycatch代码块和谐方法
作者:互联网
在用dnSpy逆向时常常会遇到try-catch异常捕捉代码块,如果该dll可以脱壳当然直接修改代码再回编译即可。但也经常会遇到少数一两个dll常规脱壳手段脱壳之后,软件无法正常运行,此时就需要直接对IL指令进行修改。
新手一枚,老鸟路过,敬请手下留情。
工具:dnSpy v6.1.3,最新发布版,星空软件
例如dnSpy打开某dll文件,找到license计算入口代码如下:
这里面的代码都是计算license用的,和谐思路就是,直接全部删除,再给两个本地字段赋值即可完成和谐过程。
右键点击方法体任何地方,选择编辑IL指令,
弹出以下窗口,
点击红色框,异常处理程序,
右键点击红色框,选择删除异常处理程序,或删除所有异常处理程序,
之后将所有IL指令删除,在增加几个指令,给该方法的两个本地字段赋值,即可完成和谐过程,
如果不首先删除异常处理程序,那么这里是无法点击确认的,也就是无法保存。以上是针对代码中有trycatch的和谐方法,具体软件名就不放出来了,纯粹探讨方法。
免费评分
标签:逆向,代码,dll,dnSpy,处理程序,IL,和谐,trycatch,net 来源: https://www.cnblogs.com/xkrj5/p/12505785.html