首页
社区
课程
招聘
[旧帖] [求助]请问有什么方法可以将只读框修改为可读写框? 0.00雪花
发表于: 2008-4-28 17:21 3841

[旧帖] [求助]请问有什么方法可以将只读框修改为可读写框? 0.00雪花

2008-4-28 17:21
3841
我手上有个软件需要结合机器码和注册码来登录的,一打开软件,它就自动取到了机器码,而且那个框是只读的,我想问下有没有什么软件可以更改这个只读属性,我想将机器码改一下,因为我有别的机器码对应的注册码。。。 谢谢各位大侠了。。。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
  顶上去,有高手指点一下吗?
2008-4-28 17:34
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
不可能,就是修改成可读的,你手动修改了以后还是没有任何效果的

把软件发上来让大家帮你看看
2008-4-28 18:13
0
雪    币: 207
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
你的想法是错误的!
根据你的介绍就是说:打开软件有一个只读的框,里面有机器码,你想把它改为可读写的,然后在里面放其他的机器码来注册。是这样吗?
姑且不说要怎样改!你改了也白改。它的框只不过是一个呈现的界面,没有任何的实效意义。它是一个显示框,而不是输入框,你改了里面的数据,软件并没有读取里面数据的代码。
真正的内部机制我的想法是这样的:
这个机器码当然是软件自己显示的,不是你输入的是不是?所以在软件的内部就有一个计算机器码的模块,它通过检测你的硬件情况(当然也可以是其他的任何东西,不过好像这样比较符合机器码这个名字,但这并不重要),软件生成了一个机器码,而你只有输入对应的注册码,程序进行相应的比较流程,判断是否成功。这样就绑定了软件,形成了一机一码的注册模式。而你要改的哪个框只不过是一个给你看看机器码的交互式界面,你把里面的机器码改了对于软件的验证流程没有任何的影响!
你要做的是找到这个生成机器码的模块,修改它的计算流程,让它得到你想要的结果生成你要的机器码。
一种情况是这个模块是存在于软件中,你可能找到它;另一种情况是这个模块是在安装软件的程序中(这是常见的,因为软件没有必要保留这个模块,它只要在安装时计算一次就可以了),你就需要针对安装程序了。
如果你对它生成机器码的过程不敢兴趣,只是想要让它能够注册其他的机器码,那么你就只要关注它的验证模块就可以了。你要拦截住软件在你输入注册码后的验证模块。我们来思考一下它的验证流程,它可以用机器码生成一个注册码进行明码比较,用注册码倒过来得到一个机器码来比较,同时把机器码或注册码进行计算后比较,等等(这是简单的验证方式,但在这里并不重要,它不会影响我们下面要说的),软件总是要从某个地方得到机器码的(或者类似的东西)来参与验证,可以是一个全局变量或者在另一个文件中,可以是加密了,或者没有。你要做的就是找到并修改它,用你想注册的机器码替换它,从根本上改变软件的验证对象。
我们应该如何入手呢?一个明显的拦截点就在你提到的哪个框里面!!
你要找到这个框的初始化代码(你想要它可读也是一样的,一个框的可不可读只不过是它的一个显示属性),看看这个框是从哪里得到机器码并显示出来的,逆向上去找到原始存储点修改它。

上面的分析是不考虑各种的anti手段的,对付它们最可靠的就是了解和经验,你不能够期望着能够顺利的找到原始存储点,这既然是软件的一个理论上的弱点,也就会是保护严密的地方,可以把它加密,加密存储,自效验,分散存储,等等,寻找的过程中它可以把各种anti伎俩都用上。

写到这里我不禁想要多说几句,希望新手能够从我上面的分析里得到的不是如何完成楼主的想法,而是得到一种逆向的思维方式!!!!!
2008-4-28 20:22
0
雪    币: 439
活跃值: (106)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
调试软件,直接修改他生成出来的机器码,找到最原始的那个..
2008-4-29 08:43
0
雪    币: 186
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
..是的。改了也没有用啊! 只改了外表。内心还是原来的那个码!
2008-4-29 08:48
0
游客
登录 | 注册 方可回帖
返回
//