盘点下.Net程序破解/反编译的几种方法

createh53个月前 (02-01)技术教程24

前言

.Net作为一个托管的程序,它的破解/反编译有几种方法呢?本篇来盘点下。

概括

1.MSIL的破解
Dnspy/ILspy/Reflector/DotPeek
这种是最常见的,把托管DLL拖入进去,然后查看其源码或者MSIL,进行修改。也是比较简单的一种,不过如果对程序进行了加密,则反编译出来大量无用的混淆的代码,这三个里面Reflector收费,前两个免费。低层次的破解/反编译。

2.Roslyn/CLR/JIT破解
Roslyn这种是在生成托管DLL之前,干涉托管DLL的生成过程,通过篡改了的托管DLL,来生成篡改的机器码。因为机器码是根据托管DLL而来。而修改CLR的内存模型,内存布局可以更改机器码生成的结果,JIT则是根据MSIL来生成机器码,修改JIT的表象生成也即是IR也可以修改或者破解.Net程序生成的结果。

3.Obj/Exe破解
这种适用于,AOT的本地机器码,本地机器码是预编译。它分为两步,目标文件和可执行文件。目标文件可以通过对照16进制编辑器和dumpbin tools进行修改和破解,而Exe则可以直接修改PE文件,来篡改结果。


以上三种方式,基本上可以破解/反编译的方方面面。只做技术研究,其它用途本人概不负责。

结尾


作者:江湖评谈

相关文章

这几个开源的Java、Apk反编译工具,你可曾用过

Java开发神器IDEA,有自带class反编译功能,而且调试也非常方便。那么,除了IDEA可以反编译之外,还有其它的反编译工具吗?这里就分享几个Github中开源的反编译工具。jadxJadx可以将...

达内java培训专家:7款开源Java反编译工具

反编译听起来是一个非常高上大的技术词汇,通俗的说,反编译是一个对目标可执行程序进行逆向分析,从而得到原始代码的过程。达内java培训(java.tedu.cn)专家今天要来分享一些关于Java的反编译...

教你如何用 IDEA 反编译 jar 源码解读

原创不易,为本文点个关注吧。背景最近有开发的小伙伴问我有没有快捷的方式打开 jar 包中的 class 源码,老夫掐指一算,问这位小哥哥是不是最近打的 jar 包老出问题?小哥哥说:"大佬神机妙算啊,...

初试安卓软件反编译破解软件的方法

出于对反编译的好奇心,今天特意测试了一下安卓软件的反编译,好吧,废话少说,直奔主题。首先下载软件,apk编辑器。像这样。不是旁边那个编译器。第二步,安装。这个都会。第三步,直接打开。看下图在这里,你可...

ILSpy借助reflexil修改C# DLL(assembly-csharp.dll修改)

今天有同事找我求助,想让我帮他改一些参数,但是这是参数都是用C#写在程序里面的,目前的源代码无法确定是否最新,所以不敢贸然编译替换线上的DLL,整个公司的同事都是做Java,对C#几乎不怎么了解Dot...

MT管理器-简单实战-去更新提示(mt管理器基本教程)

去掉了烦人了启动页后,还有一个更新提示依旧很烦人。我们查看 apk 信息时可以看到它当前的版本号是 1,而这边的更新提示显示最新版本号是 1100。当然一般应用的更新提示都不会告诉你版本号,而是告诉你...