2021新手门外汉,学习破解的笔记2

查看 183|回复 11
作者:mzbtdwd   

2021
学破解的笔记和心得2
写在前面的废话
   
  此贴为本人学习破解过程中遇到的困惑和解决办法的记录,作为学习破解的课堂笔记和心得,大神/大佬请直接跳过,thanks!~
——接2021学破解的笔记和心得1——
  我已经安装好了吾爱专用虚拟机,WinXP的(说实话,老的可以进博物馆的系统了),系统是老了点,但是只做学习破解的环境,够用了。


winxp虚拟机.png (258.6 KB, 下载次数: 0)
下载附件
2021-3-28 13:17 上传

这个虚拟机里面东西挺全乎(PE、DIE64、OD工具基本上都有),都在吾爱破解工具包里能找到。


11.jpg (122.28 KB, 下载次数: 0)
下载附件
2021-3-28 13:19 上传

DIE64长这样(我在虚拟机里没找到,估计是这个工具版本旧了)


DIE64.jpg (11.04 KB, 下载次数: 0)
下载附件
2021-3-28 13:20 上传

知道了这些工具在哪里了,就先得学会如何使用,因为学习破解不可能一蹴而就,得慢慢来。
上节笔记1中提到的破解的流程:
1.
PE查壳工具

2.DIE64
查编写语言工具

3.OD
分析破解代码工具
第一步:先查壳(防弹衣)
ü啥是壳:一种压缩或保护代码的工具,目的是阻止你破解软件的防弹衣。(如下图:你可以把壳想象成压缩文件的压缩包)


Snipaste_2021-03-28_13-21-42.jpg (17.4 KB, 下载次数: 0)
下载附件
2021-3-28 13:21 上传

ü操作:把
PE
打开后,直接用鼠标拖拽要破解的软件进去就可以了
ü观察:拖进去后重点关注如下
1

2
两个红
/
绿框的内容。


Snipaste_2021-03-28_13-22-34.jpg (82.54 KB, 下载次数: 0)
下载附件
2021-3-28 13:22 上传

ü结果:参考下图,通过观察得出“有壳”还是“无壳”的结果


Snipaste_2021-03-28_13-23-27.jpg (151.46 KB, 下载次数: 0)
下载附件
2021-3-28 13:23 上传

ü咋看有壳:如上图“有壳”一般显示壳名称(上图为UPX壳),当然也会出现PE版本比软件版本旧,查不出壳的情况,如上图有壳中的“什么都没找到”字样;无壳显示.text(这是一种文本格式),而下面显示的C、C++、VC、VB、Delphi、易语言、JAVA、python为编程用的语言不是壳。
ü壳的分类:压缩壳、保护壳、捆绑壳。
ü壳名称:UPX、ASPack、ASProtect、MoleBox等等,具体可以参见下表。


Snipaste_2021-03-28_13-30-37.jpg (101.33 KB, 下载次数: 3)
下载附件
2021-3-28 13:30 上传

ü咋脱壳:目前方法有两种:1.用脱壳工具;2.用OD手工脱壳。
(1)脱壳方法1:
l用脱壳工具脱壳(还拿压缩文件举例子,加壳是压缩,拿脱壳就是压缩的逆向解压缩)


Snipaste_2021-03-28_13-33-05.jpg (18.23 KB, 下载次数: 0)
下载附件
2021-3-28 13:33 上传

脱壳工具在这里:


Snipaste_2021-03-28_13-35-32.jpg (57.51 KB, 下载次数: 0)
下载附件
2021-3-28 13:35 上传

l脱壳工具脱壳步骤:
使用脱壳软件的方法:打开脱壳工具→把要脱壳的软件拖到脱壳工具界面上→在红色箭头指的“解压缩”前的白色圆圈内点一下→点开始会出现解压缩完成,脱壳完成后会出现两个文件,一个是已经脱壳好的文件,另一个是原文件的备份(如下图第3步)


Snipaste_2021-03-28_13-36-53.jpg (138.44 KB, 下载次数: 0)
下载附件
2021-3-28 13:37 上传

(2)脱壳方法2:
      手工脱壳就像直接打开压缩包的情景(依旧举压缩文件的例子)


Snipaste_2021-03-28_13-38-46.jpg (60.64 KB, 下载次数: 0)
下载附件
2021-3-28 13:38 上传

手工脱壳可以参考:https://www.52pojie.cn/thread-32838-1-1.html(建议:仅参考知道有这些方法即可,等遇到实际案例再详细拜读)


手工脱壳参考.jpg (138.27 KB, 下载次数: 1)
下载附件
2021-3-28 13:39 上传

第二步:
DIE64
查汇编语言
ü啥是编写语言:是一种编程语言,我们用的软件都是程序员用电脑能够识别的编程语言编写的程序。
ü操作:把
DIE64
打开后,直接用鼠标拖拽要破解的软件进去就可以了
ü观察:拖进去后重点关注如下红色箭头的位置,如下为
VC
语言。


Snipaste_2021-03-28_13-44-37.jpg (68.27 KB, 下载次数: 0)
下载附件
2021-3-28 13:52 上传

ü常见的语言有:C、C++、VC、VB、Delphi、易语言、JAVA、python等。
ü知道编写语言有啥用:知道要破解的软件是啥语言之后,就可以根据该语言的编写特点找到破解的关键位置(房子的锁的位置),找到了锁的位置,剩下的就是用锯子、锤子暴力开锁了,哈哈。那我们是不是要去学这些编程语言呢?答案是根本不用(学霸不适用此条),只要在每次破解的时候记住每个语言破解的关键语句在哪里就行,而这些只用慢慢积累,熟能生巧就行,不用刻意去学(因为对于小白来说,编程语言太枯燥无趣了,而我的兴趣是在于破解软件,而不是去当程序员,就是这样)。
第三步:
OD
分析工具
ü啥是
OD
分析:
OD
全称为
OllyDbg
,是一种反汇编工作的工具(就是把软件分析成代码的工具)ü  操作:把
Ollydbg
打开后,直接用鼠标拖拽要破解的软件进去就可以了(
OD
界面如下图)


Snipaste_2021-03-28_13-53-47.jpg (83.71 KB, 下载次数: 0)
下载附件
2021-3-28 13:54 上传

如果没有用破壳工具,选择手工脱壳的话,直接拖拽到
OD
中的界面是这样的:


Snipaste_2021-03-28_13-54-04.jpg (58.43 KB, 下载次数: 0)
下载附件
2021-3-28 13:54 上传


如上图这种直接点否就行了,因为 “有壳”的话OD分析可能是错误或者不全会影响你判断,而你的目的就是手工脱壳,所以直接点“否”就可以了。
      OD分析相当于破解的核心,前面的PE查壳工具、DIE64查编写语言工具是铺垫,因为破解大部分工作是OD工具中完成的,所以操作比前面两个软件要复杂点,因此OD工具的认识和操作介绍,我就放在下次2021学破解的笔记和心得3中更新。
  本次笔记所用到的练习软件(有壳&无壳)UPX脱壳工具笔记和心得2电子版,我已打包放到下面附件中了,如有需要自行可以下载练习。
笔记传送门:
>>>>>>2021学破解的笔记1>>>>>2021学破解的笔记2>>>>>2021学破解的笔记3

破解笔记2打包.rar
(2.66 MB, 下载次数: 419)
2021-3-28 14:22 上传
点击文件名下载附件
破解笔记2打包
下载积分: 吾爱币 -1 CB

[color=]——————小生心得小尾巴——————
   我只是新手门外汉一枚,刚接触破解在学习的过程中,我发现如果仅仅只是去看大神分享的帖子,然后实际去操作还是会遇到很多的问题,所以我会查很多资料来解决问题,但是知识点多了就脑子就凌乱了,所以我想通过写笔记和心得来鞭策自己,把冗杂&烦乱的知识点整合一下,希望我走过的坑不再是你碰到的坑,也希望能够帮到想学破解的朋友,共同探讨学习。

宋体, 脱壳

mzbtdwd
OP
  


zhanglei1371 发表于 2021-3-28 21:04
个人认为,这样的快餐对于新手还是很不错的,有大佬们说先学习pe结构,先学习汇编,先学习c等,我的感觉是 ...

很赞同你的说法,如果你想成为专业的破解人员,可以先去学习pe结构,先学习汇编,先学习c等,但是作为一个业余的兴趣爱好去耍耍,真的不用搞得那么透,比如我今天想要破解一个软件,我就去找怎么破这个软件的壳,然后再去想办法破解,如果破解成功了,就会很有成就感,然后这种成就感会让你更想破解下一个,这就是兴趣的力量
zhanglei1371   

个人认为,这样的快餐对于新手还是很不错的,有大佬们说先学习pe结构,先学习汇编,先学习c等,我的感觉是,还没有把上面的基础东西看懂,就已经没有继续学习下去的兴趣了。
不是所有的人都要成为专业破解人员的,兴趣是最好的老师。而能激发兴趣的,恰恰是能快速看到成效的操作。
C哥888   

教程分享的太好了,新手进门不再被拦在门外了,这样让更多新手入门了
Cashion   

感谢楼主分享,挺不错的教程,有空观望
youze2   

很详细  逻辑也很清晰  个个方面都是介绍了一下  学习了
saigeouhei   

谢谢楼主分享学习心得
小小嘻嘻   

感谢楼主
Rebirthe   

学习了哈哈
dd511990   

又学到了,太值了,楼主加油!
您需要登录后才可以回帖 登录 | 立即注册

返回顶部