Blue1845596018 发表于 2014-3-31 11:24

【Blue原创教程】NET破解之第一课(初始化赋值修改)

本帖最后由 Blue1845596018 于 2014-4-9 15:02 编辑

有NET软件包(发我百度网盘地址)或者有NET软件官网的论坛短消息我,收集下后续课程的素材
------------------------------------------------------------------------------我是分割线--------------------------------------------------------------------------------------------------------------------
最近来问我如何破解NET的人比较多,所以打算做一系列的新手教程,仅仅帮助大家入门而已,之后的造诣就看个人了


其实NET的教程论坛搜索一下NET的关键字已经很多了,写得很好很详细啊都,我也是这么看教程入门的罢了(现在依然在入门阶段),为什么没人看呢,为什么不善用搜索呢


好了,没有那么多为什么,就是懒吧,想来懒的人也不会看我的教程,依然是不会破解的,找人问,谁有时间会手把手教你呢,想学习就靠自己努力呗,真心不难的,只要愿意学

------------------------------------------------------------------------------我是分割线--------------------------------------------------------------------------------------------------------------------

废话结束,开始第一课基础教程,本打算简单介绍一下NET和普通语言的不同,不过想了下,开始就介绍这些枯燥的东西会弄得大家都没有破解的兴趣了,留到以后教程中穿插吧


第一课还是直接实战动手成功破解一个吧,有了信心和动力,枯燥的理论就没那么难以看下去了,第一课会相对比较详细,之后的课程简单的步骤会直接文字略过,不再截图


因为是新手教程,这趟课的工具只需要NETReflector8.1和插件reflexil1.6,最新的应该是8.3和1.7了


NETReflector8.1 链接: http://pan.baidu.com/s/1c0gmOFY 密码: m6r2

reflexil1.6 链接: http://pan.baidu.com/s/1c0gmOFY 密码: m6r2
练手软件(原版和破解版) 链接: http://pan.baidu.com/s/1eQiQA3o 密码: xfhp

------------------------------------------------------------------------------我是分割线--------------------------------------------------------------------------------------------------------------------

先打开软件执行一下,看一下未注册的样子


未注册只能三条记录,好的,我们打开我们的工具NETReflector(以后简称RE),打开界面如图



随便选择一个.net framework加载就行了


加载后打开我们的程序,我们的程序加载的样子

此时可以界面点击搜索或者快捷键F3,搜索关键字符串(和OD爆破很像吧,也可以找字符串,而且找到字符串以后比OD更容易找到关键跳,对于一般的NET软件来说)


选第三个是搜索字符串


点击结果查看一下代码

此处注意框中的IF判断条件,如果registered为TRUE,则取消注册按钮,并替换未注册的字符串,再看看别的


这个一看就是注册逻辑,看看注册成功后的程序执行了什么操作,核心的就是把this.prtForm.registered = true;
把REGISTERED赋值TRUE,此处可以改跳转逻辑让异常的注册码也注册成功,不过这次不用这个方法,我们点击REGISTERED,点进去
然后快捷键按CTRL+R或者界面点击,查看哪些地方申明了这个REGISTERED






此处可以看到初始化赋值这个REGISTERED为FALSE,那修改一下初始化为TRUE是不是就可以了呢,我们来尝试一下,选择插件,第一次需要点ADD-INS,选择插件加载,以后就会在插件列表中看到,直接选用就可以了


IL代码中进行修改,ldc.i4.0对应FALSE,要修改为TRUE,改为ldc.i4.1即可




修改完成后UPDATE,然后保存一下




保存后执行一下看看效果


没有限制了,完成,是不是挺简单的?

有问题留言吧


传送门
第一课 http://www.52pojie.cn/thread-248348-1-1.html
第二课 http://www.52pojie.cn/thread-249034-1-1.html
第三课 http://www.52pojie.cn/thread-250626-1-1.html
第四课 http://www.52pojie.cn/thread-250633-1-1.html






Blue1845596018 发表于 2014-4-2 16:12

qiaobochao 发表于 2014-4-1 09:06
为啥ldc.i4.0代表falseldc.i4.1就代表true呢

ldc.i4.0 是0ldc.i4.1是1
标志位的值为0就是false,值为1就是true

杭州浪子 发表于 2014-5-23 20:50

本帖最后由 杭州浪子 于 2014-5-23 21:20 编辑

大家好,我是新手,我跟着这篇文章学习了一边,有几个问题问下,希望知道的大神指教下!
问题一:根据什么原理知道淘宝采集软件用NETReflector8来破解?
问题二:怎么知道有没有加壳呢?难道加壳也能用NETReflector8软件来反调试?
问题三:reflexil.1.6这个插件是干嘛用的?
问题四:为什么要修改成ldc.i4.0的值,而不是stfld的值?还有为什么改成ldc.i4.1就可以是true了?
关于问题四,我分析了下



看Opcode这一列,ldrag.0猜测是每行分隔标记
第0行为ldrag.0
第1行为ldc.i4.0
第2行为registered变量
第3行为ldrag.0


这个语法我猜想是 ldc.i4.0的值赋值给registered。这里我对照上下文,猜测ldc.i4.0是false,但是true是哪个值还得看下文,幸好下文有true的Opcode值。
看第16行和第17行,对应上下文bool_0=true这句话,那么ldc.i4.0应该就是true了,所以要这样修改,不知道我这样理解对不对?




lwangqinger 发表于 2014-3-31 11:25

大神,今天火警还更新不

圣魔帅帅 发表于 2014-3-31 11:26

大大,更新一下今天的火警呀~~

bensonhb 发表于 2014-3-31 11:27

感谢分享了!!

ccc800 发表于 2014-3-31 11:28

好强大。顶你继续更新就好

allenyushuo 发表于 2014-3-31 11:30

厉害,正好适合我这样的菜鸟啊 哈哈

faiz555 发表于 2014-3-31 11:31

完全看不懂求视频

车俊 发表于 2014-3-31 11:32

我也来学习一下啊,菜鸟的我爱学习

迷失自我 发表于 2014-3-31 11:33

进来学习了

247605832 发表于 2014-3-31 11:36

支持LZ此教程太适合新手了
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 【Blue原创教程】NET破解之第一课(初始化赋值修改)