欢迎光临 Rick 's BLOG
日志首页  | C# .Net编程  | 原创作品  | 生活点滴  | C\C++相关  | 多媒体相关※ERMP  | VB相关  | 其它运维与编程  |  留言簿
遭遇未知.Net加密壳 BBSFTP V2.8 FTP 流量插件 FOR DISCUZ 5.5更新
未知  谈anti ILdasm的原理以及anit 框架API的可行性
[ 发布日期:18年前 (2007-04-25) ]   [ 来自:rick@博客园 ] [分类:原创作品]
今天收到 maxtocode 的群发邮件,提到对MaxToCode运行库兼容性进行了修正,即降低了运行库anti的强度。
确实在兼容性和安全方面很难做到鱼与熊掌兼得。anti得太多,程序的兼容性就成问题。codelib就是例子,可用性太差。

在maxtocode的邮件中仍然发现了如下两条描叙:
* 增加了对ILdasm以及使用API 访问源数据的反编译工具的反制功能
* 经测试,目前没有一种反编译工具可以完整的读取加密后的结构,更不用说加密后的代码了


其对该功能的描叙为:
*可以使微软提供的底层反编译器(ILdasm 2.0)无法工作。
*可以使引用框架API的反编译器无法工作
*但无法禁止反射的反编译程序。


其实anti ildasm这个功能最早是在 xenocode中发现的,当时是anti ildasm 1.1,这个东西应该算是Undocument的。
不过到了 net 2.0我们在 msdn文档中发现了:
“注意:此类在 .NET Framework 2.0 版中是新增的。
防止 MSIL 反汇编程序 (Ildasm.exe) 反汇编程序集。无法继承此类。
将 SuppressIldasmAttribute 属性应用于程序集或模块可防止使用 MSIL 反汇编程序 (Ildasm.exe) 反汇编程序集或模块。
此属性不防止使用反射查看程序集。
注意,SuppressIldasmAttribute 属性不阻止 MSIL 反汇编程序 (Ildasm.exe) 查看标头信息和元信息。 ”

anti ildasm的原理其实很简单maxtocode作者在分析xenocode时就介绍过了,基于一个“君子协定”,即ildasm会检查一个标记,如果发现了这个标记就会说是受保护的模块,不能编译。

谈谈ILDasm的功能限制与解除

By aiasted
From http://www.cnblogs.com/aiasted/archive/2005/05/05/149639.html
OK,分析一下吧:经过短暂的分析,让我出了一身汗。。。这样的版权保护有还不如无,
一定误导了很多朋友。
这已经很明显了,ILDasm只用了一个标志去阻止"已有版权"的程序集,而您只需要修改一个机器指令就可以畅通无阻的反编译任何程序集,并修改其内容再次编译。

只是1.1时代这个标记是Undocument的,在2.0里面已经是document的了。可以肯定maxtocode能如其介绍的那样anti ildasm 2.0。
根据这个原理,我们只要patch ildasm修改其中的一个跳转就能让它继续工作了。实际上已经有人完成了这些工作。

ildasm是使用 框架 API的反编译工具。那么anti了ildasm 是否就等于 anti 了 框架 api?
我们只需要修改ildasm不让他判断那个标记,他就能正常工作了,显然框架 api仍然可以正常使用。
而第三方使用框架api的反编译工具是不会去判断那个标记的,也就是说它们不需要被patch就可以正常工作。

那么 anit 框架API 是否可行?
不过这个基本是不现实的,除非自己实现.Net的执行引擎或者今后.Net执行引擎有什么变化。
为什么呢?因为目前.Net的执行引擎也是使用的 框架 api。如果真的anti 了框架api,那么.Net执行引擎也不能幸免。

很显然目前来说框架api成了一个绿色通道,使用框架api的反编译工具是能够看到程序的完整结构的。如 修改版的ildasm,dis#等。


刚才又上maxtocode官方网站看了网页上仍然有这些信息。
如果说之前是无意误导,那么现在是不是故意误导呢?
引用通告地址 (0):
复制引用地址https://www.rickw.cn/trackback/165
复制引用地址https://www.rickw.cn/trackback/165/GBK
[ 分类:原创作品  | 查看:4646 ]

暂时没有评论,快来发表一个评论吧。
发表评论
作者:   用户:[访客] 
评论:

表  情
禁止表情 | 禁止UBB | 禁止图片 | 识别链接
对不起,你没有权限上传附件!
验证:
 
PoweredBy R-Blog V1.00 © 2004-2024 WWW.RICKW.CN, Processed in second(s) , 7 queries    京ICP备17058477号-5