紫雨轩 .Net, DNGuard HVM , .Net VMProtect

DNGuard HVM - Advanced .NET Code Protection Technology

导航

随笔分类 -  DNGuard

上一页 1 2 3 下一页

DotNet Guard 内核级加密保护工具
DNGuard HVM 2007 标准版更新[20070910]
摘要:增加了一种加密算法。 对加密数据的保存结构进行了变更。 阅读全文

posted @ 2007-09-10 00:05 紫雨轩 .Net 阅读(1001) 评论(0) 推荐(0) 编辑

.Net 加密原理,纯Jit层加密壳核心的实现(七)
摘要:前面我们介绍了目前主流的双层加密壳核心实现原理, 以及应对兼容性,同时考虑安全性的前提下对加密壳核心进行简化。 并就加密壳核心的兼容性以及安全性进行了讨论 ,提到了加密壳核心兼容性和安全性共赢的实现模式,纯Jit层核心。 今回我们将介绍这种加密壳核心的实现。 这种核心可以基本保障方法体局部变量签名以及异常处理表的安全,但仍然无法保证IL字节码的安全。 那么它的保护意义何在? 阅读全文

posted @ 2007-09-08 23:54 紫雨轩 .Net 阅读(3921) 评论(12) 推荐(0) 编辑

.Net 加密原理,加密壳核心的兼容性以及安全性讨论(六)
摘要:前面我们介绍了目前主流的双层加密壳核心实现原理, 同时提到了应对兼容性,同时考虑安全性的前提下对加密壳核心进行简化。 今回主要讨论一下安全性、兼容性需要注意哪些因素。 阅读全文

posted @ 2007-09-07 22:59 紫雨轩 .Net 阅读(2757) 评论(4) 推荐(0) 编辑

.Net 加密原理,EE,Jit双层加密壳核心的实现(五)
只有注册用户登录后才能阅读该文。

posted @ 2007-09-06 23:02 紫雨轩 .Net 阅读(1753) 评论(2) 推荐(0) 编辑

泛型,.Net 加解密中的一个麻烦
摘要:.Net中的泛型和C++中的模版很相似,但在编译行为上有些不同。 之前做DNGuard HVM 时就遇到了加密泛型的麻烦问题,最近又发现了泛型在 ngen 加强保护模式下也有问题,在.Net解密中它同样也是一个麻烦。 C++中的模版在编译时就生成了实例代码,出现代码膨胀。 .Net的泛型,在编译时只会生成一份MSIL代码 阅读全文

posted @ 2007-09-04 16:31 紫雨轩 .Net 阅读(2788) 评论(13) 推荐(0) 编辑

.Net 加密原理,虚拟机预处理层加密壳核心的实现(四)
只有注册用户登录后才能阅读该文。

posted @ 2007-09-04 00:12 紫雨轩 .Net 阅读(1854) 评论(1) 推荐(0) 编辑

.Net 加密原理,EE层加密壳核心的改进(三)
只有注册用户登录后才能阅读该文。

posted @ 2007-09-03 11:02 紫雨轩 .Net 阅读(1853) 评论(2) 推荐(0) 编辑

.Net 加密原理, 纯EE层加密壳内核的实现(二)
摘要:在上一回 .Net 加密原理,方法体加密信息对应关系的实现 中介绍了实现加密壳首要解决的基础问题, 今回以第一种实现模式介绍如何实现一个纯EE层(mscorwks.dll)的加密壳内核。 加壳运行库的核心代码 DWORD* __fastcall DNGuard_GetILHeader(DWORD_PTR MethodPtr) { DWORD* pIL = OrgGetILHeader(MethodPtr); if(*pIL == gdwMagic) { pIL = DecryptMethod(pIL[1]); } return pIL; } 阅读全文

posted @ 2007-09-02 16:35 紫雨轩 .Net 阅读(2392) 评论(2) 推荐(0) 编辑

.Net 加密原理,方法体加密信息对应关系的实现(一)
摘要:在 per method 的dotNet加密中,首要解决的方法体对应关系,即在运行时加密壳如何确定当前要解密的方法体所对应的加密信息。 目前大部分加密壳都直接利用了dotNet的元数据来保存这种对应关系, 阅读全文

posted @ 2007-09-01 17:53 紫雨轩 .Net 阅读(3383) 评论(9) 推荐(0) 编辑

native compile 保护的dotNet本地程序还原成dotNet IL程序集
摘要:前面讨论了 .Net 保护中的 native compile 方式 。 提到了 native compile的两种方式 伪编译 和 ngen 编译。仍然没有像C++那样的完全native的编译。 这里要讨论的就是 ngen编译 生成的 ni 文件。 前面讨论时我们提到了fetion框架中的 fetionvm.srm文件。 注意到它是使用了ngen编译保护模式。 Remotesoft在评论中予以了证实,今回就以 fetionvm.srm这个文件为例,尝试ni文件的还原。 阅读全文

posted @ 2007-08-27 14:35 紫雨轩 .Net 阅读(4066) 评论(10) 推荐(0) 编辑

.Net 保护中的 native compile 方式
摘要:据宣传,这个功能就是将dotNet程序编译成native的本地代码,有代表性的相关工具有xenocode, themida 和 remotesoft。 他们实际上属于两类: 一、伪编译 就是把磁盘上的 dotNet程序转换成 win32 的程序,但运行后在内存中实际上还是dotNet程序,只是使用了一个win32 loader,把dotNet程序整体打包嵌入到了这个 win32 的loader中。 二、ngen编译 ngen 是 dotNet提供的将IL编译成native的工具。 这种可以算是真实的编译吧。 但是它们有一个共同的特点,依然不能脱离dotNet框架单独运行 阅读全文

posted @ 2007-08-25 16:47 紫雨轩 .Net 阅读(6979) 评论(48) 推荐(0) 编辑

DNGuard HVM 2007 更新[20070823]
摘要:主程序更新,界面,进度显示,修正对个别非标准。Net程序集加密出错的bug。 运行库更新,修正asp.net 1.1下的个别兼容性问题。 泛型更新,修正之前最大只支持127个泛型参数的问题。 试用版开放 混淆相关的功能。 试用版和标准版在内核强度方面做了区分。 下载地址: http://www.redcheek.net/bbs/read.php?tid=5051 阅读全文

posted @ 2007-08-23 16:22 紫雨轩 .Net 阅读(975) 评论(3) 推荐(0) 编辑

dotNet MSIL中的一些不常见IL指令
摘要:在做HVM伪代码覆盖率检测时,在构造的一些dotNet程序样本中总是缺少一些MSIL指令 ,没有覆盖所有的MSIL指令。 如C#中的装箱和取消装箱的IL指令,可能很多人和我最初的想法一样,装箱是 box指令 ,取消装箱是unbox指令,实际上这只对了一半。 阅读全文

posted @ 2007-08-21 18:04 紫雨轩 .Net 阅读(3068) 评论(19) 推荐(0) 编辑

[转载]Calling printf from C# - The tale of the hidden __arglist keyword
摘要:Hmm, looks weird isn't it? Using that dark keyword __arglist (it really is a keyword, look at the keyword coloring of VS2005). Not to talk about TypedReference and ArgIterator yet. So, what is it and what does it do? 阅读全文

posted @ 2007-08-19 01:46 紫雨轩 .Net 阅读(920) 评论(0) 推荐(0) 编辑

浅谈.Net脱壳中方法体的局部变量签名还原
摘要:在之前介绍Jit层脱壳原理时曾提到两个难点, 1。方法体的局部变量签名。 2。方法体的SEH 异常处理表。 本文主要就第一个问题进行简单探讨,随带也涉及到一些第二个问题。 阅读全文

posted @ 2007-08-13 00:42 紫雨轩 .Net 阅读(3250) 评论(3) 推荐(0) 编辑

DNGuard HVM 2007 标准版正式发布
摘要:Net 内核级的加密保护工具。 采用的是纯虚拟机处理层的内核。 兼容目前所有的32位 .Net 框架版本,Net 1.1, 2.0, 3.0, 3.5 以及其所有子版本(如beta x,CTP,RC,sp x等)。 直接支持强名程序集的加密。提供了强名密钥管理功能,支持snk和pfx的强名文件。能自动使用匹配的强名密钥对加密的程序集进行重新签名。自动名称混淆保护功能。支持泛型类型以及泛型方法的加密... 阅读全文

posted @ 2007-08-12 23:27 紫雨轩 .Net 阅读(2807) 评论(22) 推荐(0) 编辑

DNGuard HVM Release
摘要:应使用者的要求,增加了反制静态编译工具查看程序集完整结构的功能。 当然首当其冲的就是Reflector了。 个人认为,加密最主要的就是加密方法代码,结构啥的并不是重点, 如果是做中间件、类库啥的,结构还非得给用户看不可。 试用版开放了 常规模式的 用户字符串加密 功能。 标准版将会提供名称自动混淆功能。 具体详情可参考软件界面中的即时提示信息。 程序中灰色不可用的选项是标准版或者专业版才提供的功能。 标准版将在这个周末正式发布。 阅读全文

posted @ 2007-08-10 02:19 紫雨轩 .Net 阅读(741) 评论(0) 推荐(0) 编辑

DNGuard HVM RC3(主程序、运行库ASP.Net兼容性更新)
摘要:主程序以及运行库兼容性更新: 修正ASP.Net 的兼容性。 修正anti ildasm2.0 在部分环境下不兼容的问题。 修正个别情况下泛型类型加密错误的问题,DNGuard全面支持泛型类型以及泛型方法加密了。 调整了运行库的壳,增加了兼容性。 试用版开放了数据流加密和托管资源加密功能。 增加对个别非CLS标准格式程序集的直接支持。该类程序集表现为加密时出现 Open MetaData Error 的错误提示。 注意事项: 不能将DNGuard的运行库和其它dotNet加密壳的运行库一起使用。也即不能将不同加密工具加密的程序集放在一起使用。 阅读全文

posted @ 2007-08-09 00:09 紫雨轩 .Net 阅读(795) 评论(3) 推荐(0) 编辑

DNGuard HVM RC2 发布(运行库更新)
摘要:运行库兼容性更新。 采用的是纯虚拟机处理层的内核。 兼容目前所有的32位 .Net 框架版本,Net 1.1, 2.0, 3.0, 3.5 以及其所有子版本(如beta x,CTP,RC,sp x等)。 支持泛型方法的加密。 加密保护过程不依赖 ildasm 和 ilasm 。 支持 C++/CLI含本地代码的混合程序集的加密保护。 完全兼容其它纯混淆保护工具,不必担心其它混淆工具对ildasm设限导致无法加密。 加密后的程序集完全兼容其它整体加密或者打包、xbundler等保护方式。 阅读全文

posted @ 2007-08-07 23:51 紫雨轩 .Net 阅读(1055) 评论(14) 推荐(0) 编辑

DNGuard HVM 试用版 RC1 发布
摘要:一款 .Net 内核级的加密保护工具。 采用的是纯虚拟机处理层的内核。 兼容目前所有的32位 .Net 框架版本,Net 1.1, 2.0, 3.0, 3.5 以及其所有子版本(如beta x,CTP,RC,sp x等)。 支持泛型方法的加密。 加密保护过程不依赖 ildasm 和 ilasm 。 支持 C++/CLI含本地代码的混合程序集的加密保护。 完全兼容其它纯混淆保护工具,不必担心其它混淆工具对ildasm设限导致无法加密。 加密后的程序集完全兼容其它整体加密或者打包、xbundler等保护方式。 阅读全文

posted @ 2007-08-07 14:02 紫雨轩 .Net 阅读(1779) 评论(9) 推荐(0) 编辑

上一页 1 2 3 下一页