C#程序加壳

转自 http://www.lwolf.cn/blog/article/code/csharp-shell%20.htm

 最近上网找了下给C#程序加壳的方法,找到了一些方法,自己试了一下,感觉还挺不错的。以下是在网上找到的,在这里整理一下,以后要用到的时候也方便。
     1.反射加壳
      新建一个CMD项目,复制程序到项目文件中,并设置成为“嵌入式资源”。

程序代码

      Stream sr = Assembly.GetExecutingAssembly().GetManifestResourceStream("命名空间.程序.exe");
    byte[] fileBytes = new byte[sr.Length];
    sr.Read(fileBytes, 0, (int)sr.Length -1);
    Assembly assembly = Assembly.Load(fileBytes);
    MethodInfo mi = assembly.EntryPoint;
    mi.Invoke(null, null);

      编译运行这个后,再用Reflector查看就看不到源代码。不过还是可以用反射脱壳破解的,这个我就不太懂了

      2.使用Sixxpack
       这是个给.net程序加壳并压缩的工具,压缩比最大可达80%,压缩完之后就编译不出源文件了。用Reflector查看的话都是actmp.dll的信息。不过最近看cnblogs里有人给出了破解这个的方法,有兴趣的可以去找找看。
      找关天没找到官网地址,网上找的都是2.2汉化版,也不知道是不是最新的,下载地址:http://dl.onlinedown.net/soft/56183.htm

    把这两种方法结合起来使用还是挺有意思的,起码增加了别人破解的难度~~~呵呵 

时间: 2024-10-13 19:23:47

C#程序加壳的相关文章

用sixxpack给程序加壳之后,打开程序出现闪退是怎么回事?

问题描述 用sixxpack给程序加壳之后,打开程序出现闪退是怎么回事?还有什么好的加壳软件,求推荐 解决方案 解决方案二:没人?解决方案三: 解决方案四:我用.NETReactor加壳,解决方案五: 解决方案六:不过这个不是壳,只是为了混乱反编译的,加壳工具多,Xenocode都行

C# 给WinForm程序加壳(写代码加)

问题描述 现在我开发好了一个WINFORM程序,需要对程序加壳,不是使用软件加,而是在程序中写代码加,没有接触过,请各位帮忙指导一下,最好能给个例子代码?谢谢,在线等立马给分! 解决方案 解决方案二:SharpAssembly作者就是SharpDevelop/SharpZipLib的作者MikeKrueger.SharpAssembly作用是不需要System.Reflection实现:1.程序集动态加载:2.直接访问方法的IL内容:3.共享访问(不用锁定程序集):4.可以用它实现你自己的反编译

.net混淆加壳工具confuserex v0.6.0汉化版

问题描述 ConfuserEx支持.NET框架2.0-4.5和Mono(还有其他.NET框架):Symbol重命名WPF/BAML重命名ControlflowobfuscationMethodreferencehidingAntidebuggers/profilersAntimemorydumpingAntitampering(方法加密)嵌入式依赖Constant加密Resource加密Compressing输出扩展插件API适合.net程序加壳,分享给大家http://download.csd

为Android的apk应用程序文件加壳以防止反编译的教程_Android

一.什么是加壳?加壳是在二进制的程序中植入一段代码,在运行的时候优先取得程序的控制权,做一些额外的工作.大多数病毒就是基于此原理. 二.加壳作用加壳的程序可以有效阻止对程序的反汇编分析,以达到它不可告人的目的.这种技术也常用来保护软件版权,防止被软件破解. 三.Android Dex文件加壳原理PC平台现在已存在大量的标准的加壳和解壳工具,但是Android作为新兴平台还未出现APK加壳工具.Android Dex文件大量使用引用给加壳带来了一定的难度,但是从理论上讲,Android APK加壳

为Android的apk应用程序文件加壳以防止反编译的教程

一.什么是加壳? 加壳是在二进制的程序中植入一段代码,在运行的时候优先取得程序的控制权,做一些额外的工作.大多数病毒就是基于此原理. 二.加壳作用 加壳的程序可以有效阻止对程序的反汇编分析,以达到它不可告人的目的.这种技术也常用来保护软件版权,防止被软件破解. 三.Android Dex文件加壳原理 PC平台现在已存在大量的标准的加壳和解壳工具,但是Android作为新兴平台还未出现APK加壳工具.Android Dex文件大量使用引用给加壳带来了一定的难度,但是从理论上讲,Android AP

java-在linux(windos)系统下解析加壳的apk

问题描述 在linux(windos)系统下解析加壳的apk 最好纯java代码 不要依赖组件 比如aapt 我用过aapt windos还好 linux需要的依赖太多 解决方案 首先加壳的方法和代码都是从Jack_Jia的博客学习的. 详见:http://blog.csdn.net/jiazhijun/article/details/8678399 由于本人从c++开发直接跳到Android开发,没有对android进行系统的学习,看上面博客时还是有很多不理解的地方.本文把不理解的地方梳理一下

专家和您一起谈谈java加壳的问题

问题 在C世界,对代码进行加密,主要通过加壳的方式.所谓加壳,就是先将程序代码加密,然后用特定的程序加载器,将代码解密后加载进内存,这样可以在防止代码的反编译,当然,有加壳工具,也有解壳工具,虽然不能100%防止crack,但仍然给代码增加一层有力的保护. 然而在Java世界,保护代码是件很困难的事情,因为class文件非常规范,极易反编译,且反编译后的代码清晰可读.常见的保护办法是使用混淆器,打乱class和function以及变量的名字,可以干扰反编译后的代码的可读性.虽然简单提高了代码的安

加密加壳-Foxpro的混淆器,有哪一位大侠可以阐述明确一点????

问题描述 Foxpro的混淆器,有哪一位大侠可以阐述明确一点???? 针对FOXPRO的加密加壳的问题,本人很想采用混淆器来解决一些问题,现在关键的问题,程序中含有联网络服务器数据库的句柄,这一点很让人头痛,如果用一个加密文件或加密字段来存这个句柄的关键内容,是可以不会直接写出来,但,如果破解高手用里面的程序照样读出这个内容,然后再赋到一个变量里,不是照样可以显示出来,根本是无法保密的,请教高手大虾们,给个清晰的思路!不胜感谢了!!! 解决方案 devmiao 苏小喵 Ds Rxr 不要客户端直

服务器-OXPRO的无法真正的加壳,或加密,有网络大虾建设,用混淆器.....

问题描述 OXPRO的无法真正的加壳,或加密,有网络大虾建设,用混淆器..... 对FOXPRO的无法真正的加壳,或加密,有网络大虾建设,用混淆器,而我的程序里又有联接网络服务器的句柄,如果被解开,是不是还是一点效果都没用呢!这种混淆器又怎么实现呢! 解决方案 是不是将文字加到一个加密字段或加密的文件里,再读来,那混淆后的语名,真的要分析出就这么一段,会有那么难吗,能否举个例子 解决方案二: 混淆器只是让代码难阅读,难懂,并不是保护不被破解.联结网络服务器的句柄,运行时动态生成,这样解开也是不能