其他分享
首页 > 其他分享> > .NET assembly的修改及混淆

.NET assembly的修改及混淆

作者:互联网

1. 程序集的修改 

对于.net生成的assembly文件(通常为dll或exe),如果是非强名程序集且未被混淆过,在某些场景下需要直接修改的时候,可通过微软自带的ILDASM.exe工具导出成IL文件后直接修改。这种方式的好处是可以直接修改IL,或者替换相应的Resource文件,修改完成后,利用ILASM编译回去。

通常修改IL会有一定的难度,需要掌握MSIL语言基础知识。

这里推荐另外两个工具,重点推荐第二个:

a. .net reflector - 商业用途需要license

b. dnSpy - GPLv3开源协议

对强名程序集,修改后需要私钥(正规途径可能性为零),否则,只能另存为为其它文件。这样以来,将无法替换原程序集文件,无法达到修改的目的。

2. 程序集的混淆 - 防止被修改

通常,出于对程序的保护,除了使用强名程序集外,在发布前对程序集混淆也是对程序的保护。这里推荐的一款开源工具ConfuserEx

标签:混淆,assembly,强名,程序,修改,IL,文件,NET
来源: https://www.cnblogs.com/huankfy/p/14402717.html