首页
社区
课程
招聘
[讨论]DotNet Framework Strong Name Signature 强名称去除问题
发表于: 2006-8-8 00:04 7630

[讨论]DotNet Framework Strong Name Signature 强名称去除问题

2006-8-8 00:04
7630
因为.Net程序Assembly使用现有工具很容易反编译为MSIL,然后经过修改可以
重新生成Assembly(.exe, .dll)。

所以看到的教程都是通过 [Assembly --> 反编译为MSIL --> 去除PublicKey --> 重新
编译为Assembly] 的流程破解掉原.Net程序的强命名保护。

方法如此简单,仿佛千篇一律,好像.Net程序真的没什么破解可钻研。
可是,我最近几天发现,这个方法只对只有单个单独文件的软件有效。
看过和找过的各种案例(英文居多)在商业级强命名软件面前都成了纸
上谈兵,基本没有用途和参考价值。

商业级.Net软件几乎没有一个是单个文件发行的,而且部分有本地化代码。

对于有多个文件的.Net程序,一般是一个*.exe和几个*.dll,往往由于其中某
个或几个文件不能由反编译出来的MSIL文件编译回去,而导致“所向披靡”的
[Assembly --> 反编译为MSIL --> 去除PublicKey --> 重新编译为Assembly]
流程失效。因为,强命名的程序集,必须全部重新编译才能正常运行。

很多人误认为破解了强命名程序中的某个.exe或.dll,只需编译时自行给他弄
个Key进行一下强命名就可以,事实上,如果这样做,程序根本无法运行。

不幸的是我研究的这个程序正好有一个.dll是编译不回去的。我试验了将软件中
所有Assembly文件的强命名[Strong Name]清除,无效,软件仍是无法运行。

希望在这个方面有经验的大侠给予指点,希望大家多多交流,我会将我这短时
间来的试验心得和副产品(意外收获)在本贴中陆续发上来。

---------------------------------------
FucKiNi 2006.08.08.00:30

.

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 11
活跃值: (213)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
有个 snremove,可以直接去strong name,不要 : 反编译为MSIL --> 去除PublicKey --> 重新编译为Assembly]

但也无法解决关联认证问题
2006-8-8 09:58
0
雪    币: 207
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
继续研究中,应该可以的。
2006-8-8 20:52
0
雪    币: 207
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
这个.Net程序折腾的我寝食难安,实在可恶,都快一星期了也没个眉目。

今天一气之下,将.Net Framework 1.1 的强名称验证函数给NOP了,
咔嚓!我让你强名称验证!!!~~~~~

之后,继续程序调试,经过几番周折以后,就雨过天晴了。

因为这个软件是一套二个,下面忙着研究另一个,

等有空把这些总结一下,汇报给大家。
2006-8-9 19:04
0
雪    币: 89
活跃值: (171)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
很希望看到这类精彩文章
2006-8-9 23:29
0
雪    币: 47147
活跃值: (20460)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
6
最初由 lccracker 发布

等有空把这些总结一下,汇报给大家。


期待 ;)
2006-8-10 09:02
0
雪    币: 207
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
已经发上去了,功力不深,写的不好,见笑
http://bbs.pediy.com/showthread.php?s=&threadid=30340
2006-8-10 18:40
0
雪    币: 37
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
我也是始终卡在强签名程序集关联认证的问题,窝火...
2017-8-23 11:25
0
游客
登录 | 注册 方可回帖
返回
//