.Net 逆向 Reflector之reflexil使用

网上下载了一款商用的教育培训类软件,是用.Net写的,标榜的是免费的,但是只能试用一个月,商家很精明,用此方法推广招揽客户,但是公司在这一块却没有预算购买,一开始就想着既然是商用软件,安全机制做的肯定很好,不会那么容易破解,后面想了想,反正试试呗,不成功也没有什么损失,于是用Reflector反编译,惊奇的发现反编译后里面的代码基本暴露无遗,基本没有用什么防反编译的任何措施,里面的注册码生成机制,验证机制一目了然。

按里面的算法,生成的注册码是可以Decrypt的,然后就想着按其注册码的格式修改为正式版重新生成注册码,但因为不知道PrivateKey,所以此条路作罢。

于是就想着将反编译后的代码做成工程,修改注册码验证机制,然后用此工程的dll覆盖,但是发现反编译后的工程多多少少还是有些不能正常编译,于是这种方案也暂时否定。

继续找方案,发现了本文所讲的重点-reflexil,这是用在Reflector上的一个插件,可以直接进行反编译,于是找到验证代码,增加以下两行,直接覆盖原有的取授权信息的代码。

最终将修改后的dll覆盖既有的dll,成功。

原文地址:https://www.cnblogs.com/dimg/p/11470943.html