基础要打好: 如何正确地进入基于x86-64Bit Windows系统的商业软件破解领域
2010年10月24日
如何正确地进入基于x86-64Bit Windows系统的商业软件破解领域 [作者]
猪头三
个人网站:http://www.x86asm.com/
[序言]
从事Windows系统下的软件研发,已走过差不多9年的时光,在这段时间里认识不少朋友。在每认识一个新的朋友的时候,我都会被问到:如何学习破解,如何逆向,这类相关的问题。那么这篇文章我将会详细的介绍正确的方式。
[本内容适用领域]
1> 基于x86-64Bit Windows系统下的商业软件软件破解
2> 商业注册码破解
3> 商业软件脱壳
4> Windows版本的游戏破解
[内容贡献者]
fly [Unpack.cn社区]
songyi [Unpack.cn社区]
kings0527 [Unpack.cn社区]
[本内容讨论社区]
[Unpack.cn社区]http://www.unpack.cn/thread-47658-1-1.html
[学习破解/逆向之前的前提基本语言和开发工具]
1> 熟悉 x86-64 CPU体系的汇编语言 [参考书籍: 王爽汇编语言程序设计]
2> 熟悉 C/C++ 语言 [参考书籍: C Primer Plus, C++ Primer Plus]
3> 熟悉 VC DELPHI 等 可利用WIN32 API的开发的工具
[学习破解/逆向之前的自身Windows系统理论]
1> Windows核心编程 [参考书籍: Windows核心编程]
2> Windows系统原理和概念 [参考书籍: 深入解析Windows操作系统]
3> Windows套接字网络编程 [参考书籍: Windows网络编程[绝版]]
4> Windows系统的PE文件格式
5> Windows SDK开发入门 [参考书籍: Windows程序设计(第5版)]
[学习破解/逆向之前的必须经验]
1> 至少有编写程序的经验
2> 至少有用过 DELPHI 或 VC 开发软件的实战经验
......等
[进入破解/逆向之后常用工具]
1> PE文件观察软件 [比如: PEid]
2> 动态调试软件 [比如: Windbg,OllyDbg]
3> 静态反编译软件 [比如: IDA]
4> 16进制查看工具 [比如: WinHEX]
5> 自动脱壳工具/脚本
......等
[进入破解/逆向之后建议添加调试理论]
1> Windows环境下的调试理论 [参考书籍: 软件调试,Windows高级调试,Windows 用户态程序高效排错]
[进入破解/逆向之后建议添加驱动理论]
1> Windows环境下驱动开发 [参考书籍: Windows驱动开发技术详解,寒江独钓:Windows内核安全编程]
[网友FAQ]
1> 进入破解领域时需要掌握什么语言?
答: 熟悉x86asm C/C++ 即可应付大部分的商业软件
2> 破解和逆向一个软件时看到的都是汇编源码,是不是只用学习汇编就可以了?
答: 要破解和逆向一个软件,只会汇编,是远远不够的。因为现代软件的编写大多数不是基于汇编来编写了,而是基于 C/C++ C# JAVA DELPHI 等高级语言来编码。作为一个破解/逆向人员来说,必须掌握2~3种高级语言,并有实际的开发经验。你才能明白一个软件的程序执行流程和原理,只要明白这些,你才能在茫茫的汇编代码中,找到对应的程序逻辑。这样才能方便你去有目的地去破解/逆向一个商业软件的功能。
3> 要进入破解/逆向领域需要多长时间?
答: 这个要看个人资质,有天赋的话,可以在1年时间基本明白破解/逆向 的思路。 资质不高,又不够努力,那么最好放弃这个领域的研究。破解/逆向是一个深奥的领域,需要一个人的 毅力+勤奋 才能找到这个领域的乐趣。
4> 现在要进入游戏外挂开发,是否还需要具备什么其他特殊技术吗?
答: 基于现在游戏的保护强度加大,要能开发一个合格的游戏外挂,我们必须还要会一些 Windows驱动开发 Windows套接字编程。当然游戏外挂开发是一个很庞大的工程,需要多工种配合。目前来说,以1个人完成一个商业游戏外挂,是非常困难的,但是不排除国内的卧虎藏龙的现象。因为,一个游戏外挂的开发需要涉及几个工种:
1> 游戏程序脱壳
2> 游戏网络通信协议加解密
3> 游戏认证码处理
4> 游戏内存数据搜索修改查询
5> 游戏数据导出封装
6> 游戏程序自我保护机制绕过[NP,HS,XTRAP,TP,APEX等]
......等
所以要认清事实,开一个游戏外挂,必须要面对以上这些繁琐的技术。
[修改补充]
如果你有什么建议和补充的话,请留言跟帖,好让我更加完善这篇文章,以造福更多的初学者。
发表评论
-
基于Windows CE .net平台的嵌入式系统的定制和裁剪
2012-01-20 09:26 1125基于Windows CE .net平台的嵌入式系统的定制和裁剪 ... -
Windows Mobile Test Framework实现手机软件自动化测试的介绍
2012-01-20 09:26 839Windows Mobile Test Framework实现 ... -
Android2.2+Eclipse windows xp环境配置,加部分问题解决办法(图文)
2012-01-20 09:26 629Android2.2+Eclipse windows xp ... -
现实世界:Windows Azure角色的启动生命周期
2012-01-20 09:26 363现实世界:Windows Azure角色的启动生命周期 20 ... -
【原创】襄阳12年高一统考地理测试题最后一题
2012-01-19 14:28 510【原创】襄阳12年高一 ... -
关于史书体裁
2012-01-19 14:28 548关于史书体裁 2012年01 ... -
【转】浅谈温岭民间的孝文化
2012-01-19 14:28 638【转】浅谈温岭民间的孝文化 2012年01月15日 作者 ... -
再见,2011
2012-01-19 14:27 328再见,2011 2011年12月25日 ... -
斋名集观
2012-01-19 14:27 773斋名集观 2012年01月11日 书斋溯源与称谓 ... -
v8cgi使用笔记
2012-01-17 04:15 1050v8cgi使用笔记 2010年11月 ... -
ON bwDONE exception
2012-01-17 04:15 578ON bwDONE exception 2010年10月15 ... -
javascript 对象 本地对象、内置对象和宿主对象
2012-01-17 04:15 868javascript 对象 本地对象、内置对象和宿主对象 2 ... -
学习笔记---JavaScript基础
2012-01-17 04:15 655学习笔记---JavaScript基础 ... -
最近学习FLEX4/FMS4的一点小体验【二】
2012-01-17 04:15 509最近学习FLEX4/FMS4的一点小体验【二】 2011年0 ... -
ON懂
2012-01-16 03:05 521ON懂 2009年10月04日 ... -
一个词语的辨析
2012-01-16 03:04 590一个词语的辨析 2010年06月09日 很久没写 ... -
山东泰安话
2012-01-16 03:04 571山东泰安话 2011年12月26日 俺那里萝卜不叫萝卜 ... -
词语辨析
2012-01-16 03:04 658词语辨析 2010年05月03日 1、a few 、 ... -
收集赞美人的词语
2012-01-16 03:04 755收集赞美人的词语 2011 ...
相关推荐
mysql-shell-8.0.18-windows-x86-64bit.zip MySQL Shell is an advanced command-line client and code editor for MySQL. In addition to SQL, MySQL Shell also offers scripting capabilities for JavaScript ...
mysql-connector-python-8.0.6-rc-py3.6-windows-x86-64bit.msi
jar项目打包windows服务开机运行,亲测可用,支持windows32bit和64bit,无异常,自动生成日志
mysql-shell-8.0.20-windows-x86-64bit.zip
mysql-connector-python-8.0.16-py3.7-windows-x86-64bit
python连接MySQL驱动,windows64位系统上安装mysql-python
mysql-connector-c++-1.1.7-linux-glibc2.5-x86-64bit.rpm 安装只需: rpm -ivh mysql-connector-c++-1.1.7-linux-glibc2.5-x86-64bit.rpm 即可
mysql-router-2.1.4-linux-glibc2.12-x86-64bit.tar.gz
Java项目jar包做成windows等系统自启动服务工具:wrapper-windows-x86-64-3.5.14
最新版windows elasticsearch-8.8.2-windows-x86_64.zip最新版windows elasticsearch-8.8.2-windows-x86_64.zip最新版windows elasticsearch-8.8.2-windows-x86_64.zip最新版windows elasticsearch-8.8.2-windows-...
mysql-proxy-0.8.5-windows-x86-32bit. 官网下载挺麻烦的,直接下载下来备份。 mysql proxy for windows
qt-opensource-windows-x86-msvc2015_64-5.8.0.exe 20-Jan-2017 12:52 1.0G Details qt-opensource-windows-x86-msvc2015-5.8.0.exe 20-Jan-2017 12:59 1.0G Details qt-opensource-windows-x86-msvc2013_64-...
这是官网直接下载的
mysql-connector-python-8.0.30-windows-x86-64bit.msi
mysql-shell-8.0.30-windows-x86-64bit
名称:cmake-3.23.2-windows-x86_64.msi 版本:3.23.2 文件类型:Windows安装程序(.msi) 描述: cmake-3.23.2-windows-x86_64.msi是用于Windows操作系统的CMake构建工具的安装程序文件。CMake是一个开源跨平台的...
oracle 10g 软件p6810189_10204_Linux-x86-64适用于Linux 64位系统,文件分割成 2个 压缩包,必须集齐2个 文件后才能一起解压一起使用: p6810189_10204_Linux-x86-64.part2.rar ... p6810189_10204_Linux-x86-64.part...
oracle 10g 软件p8202632_10205_MSWIN-x86-64 适用于Windows 64位系统,文件分割成 2个 压缩包,必须集齐 2个 文件后才能一起解压一起使用: p8202632_10205_MSWIN-x86-64.part2.rar ... p8202632_10205_MSWIN-x86-64....
windows 12c p33174380_122010_MSWIN-x86-64.zipwindows 12c p33174380_122010_MSWIN-x86-64.zipwindows 12c p33174380_122010_MSWIN-x86-64.zipwindows 12c p33174380_122010_MSWIN-x86-64.zipwindows 12c p...
下面俩个版本都能正常使用: 编译器版本号:adt-bundle-windows-x86_64-20130717 编译器版本号:adt-bundle-windows-x86_64-20130917 汉化方法: 拷贝中文包中的文件到编译器同名目录下