本节书摘来自异步社区《C++ 黑客编程揭秘与防范(第2版)》一书中的第6章6.8节KeyMake工具的使用,作者冀云,更多章节内容可以访问云栖社区“异步社区”公众号查看。

6.8 KeyMake工具的使用
C++ 黑客编程揭秘与防范(第2版)
本章介绍了PE结构和调试原理,此外还介绍了文件补丁和内存补丁方面的知识。在此顺便介绍一款制作注册机的工具——KeyMake(《黑客帝国》第二部中的“关键人物”就是KeyMake,用来配钥匙的那个老头)。KeyMake的界面如图6-77所示。


KeyMake的功能非常多,这里主要介绍“其他”菜单下的功能,如图6-78所示。


KeyMake菜单有3个主要功能,分别是“内存注册机”、“制作文件补丁”和“制作内存补丁”。分别以前面的程序例子来制作3个补丁程序。

首先来制作“内存注册机”。在KeyMake的“其他”菜单下选择“内存注册机”,出现“设置注册机信息”界面,如图6-79所示。


在图6-79中的“程序名称”处选择前面写的CrackMe程序,然后单击“添加”按钮,出现“添加数据”界面,添加相应的数据,如图6-80所示。


在图6-80中,首先要添加中断地址,在“中断地址”处输入“00401E9E”,在“中断次数”处输入“1”,在“第一字节”处输入“E8”,在“指令长度”处输入“5”。为什么这么填写呢?对于“中断地址”、“第一字节”和“指令长度”的填写方法,参考图6-75就能够明

白。“中断次数”是指在中断地址被断下第几次后去读取数据。由于正确“密码”在内存中,因此在“保存下列信息为注册码”窗口中选择“内存方式”,选择“寄存器”为“EDX”。这里也对照图6-75就可以明白。填写完上面的内容后,单击“添加”按钮则返回“设置注册机信息”界面,然后单击“生成”按钮,将“内存注册机”放在与CrackMe相同的目录下即可。然后运行生成的注册机,会出现CrackMe程序界面,随便输入一个“账号”和“密码”,单击“确定”按钮即可出现正确的注册码,如图6-81所示。


制作“文件补丁”相对于“内存注册机”要简单很多。制作“文件补丁”的KeyMake界面如图6-82所示。


在图6-82中,在“原始的文件”处选择破解前的文件,在“已破解文件”处选择已经破解后的文件,然后单击“制作”按钮即可生成一个文件补丁程序。这里需要说明的是,之所以选择“原始的文件”,是因为生成的文件补丁在对没有破解的文件进行打补丁前需要对文件的CRC校验和进行计算,以防止由于文件版本的不同而导致文件破坏。

最后介绍一下“内存补丁”。“内存补丁”的制作也是比较容易的,打开“内存补丁”的制作界面,然后依照图6-83所示进行设置。


“制作内存补丁”界面中的“添加数据”窗口中的相应设置,请参考图6-57进行设置。

本章的程序中给出了KeyMake中的“文件补丁”、“内存补丁”和“内存注册机”的编写方式,请读者参照KeyMake软件再次体会前面的例子。

本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

分享

《C++ 黑客编程揭秘与防范(第2版)》—第6章6.8节KeyMake工具的使用相关推荐

  1. 《C++ 黑客编程揭秘与防范(第2版)》——6.2 详解PE文件结构

    本节书摘来自异步社区出版社<C++ 黑客编程揭秘与防范(第2版)>一书中的第6章,第6.2节,作者:冀云,更多章节内容可以访问云栖社区"异步社区"公众号查看. 6.2 ...

  2. 《C++ 黑客编程揭秘与防范(第2版)》—第6章6.2节详解PE文件结构

    本节书摘来自异步社区<C++ 黑客编程揭秘与防范(第2版)>一书中的第6章6.2节详解PE文件结构,作者冀云,更多章节内容可以访问云栖社区"异步社区"公众号查看. 6. ...

  3. 《C++ 黑客编程揭秘与防范(第2版)》——6.8 KeyMake工具的使用

    本节书摘来自异步社区出版社<C++ 黑客编程揭秘与防范(第2版)>一书中的第6章,第6.8节,作者:冀云,更多章节内容可以访问云栖社区"异步社区"公众号查看. 6.8 ...

  4. 《黑客秘笈——渗透测试实用指南》—第2章2.4节Web应用程序的扫描

    本节书摘来自异步社区<黑客秘笈--渗透测试实用指南>一书中的第2章2.4节Web应用程序的扫描,作者[美]Peter Kim(彼得 基姆),更多章节内容可以访问云栖社区"异步社区 ...

  5. 《黑客秘笈——渗透测试实用指南》—第2章2.3节 外部或内部的主动式信息收集...

    本节书摘来自异步社区<黑客秘笈--渗透测试实用指南>一书中的第2章2.3节 外部或内部的主动式信息收集,作者[美]Peter Kim(彼得 基姆),更多章节内容可以访问云栖社区" ...

  6. 《黑客秘笈——渗透测试实用指南》—第1章1.1节搭建渗透测试主机

    本节书摘来自异步社区<黑客秘笈--渗透测试实用指南>一书中的第1章1.1节搭建渗透测试主机,作者[美]Peter Kim(彼得 基姆),更多章节内容可以访问云栖社区"异步社区&q ...

  7. 《Python编程从入门到实践 第二版》第九章练习

    9-1 餐馆 创建一个名为Restaurant 的类,为其方法__init__() 设置属性restaurant_name 和cuisine_type.创建一个名为describe_restauran ...

  8. 《Python编程:从入门到实践》第七章7.3节课后作业

    本文代码是在jupyter中实现的,仅为了自我督促学习python之用. 7-8 熟食店:创建一个名为 sandwich_orders 的列表,在其中包含各种三明治的名字:再创建一个名为 finish ...

  9. 《Android安全技术揭秘与防范》——第2章,第2.1节钱从哪里来

    本节书摘来自异步社区<Android安全技术揭秘与防范>一书中的第2章,第2.1节钱从哪里来,作者 周圣韬,更多章节内容可以访问云栖社区"异步社区"公众号查看 第2章 ...

最新文章

  1. python基于dlib的face landmarks
  2. 篝火 2004 年11-15
  3. poj-2101Honey and Milk Land
  4. 关于压缩工具 7z(7-zip) 的选项 -so(从标准输出流写入数据)的解读
  5. linux java 查找进程中的线程
  6. oracle创建视图类型为日期,oracle创建视图包含clob字段,报错:数据类型不一致:应为-,但却获得CLOB...
  7. 经验之谈:学习 Visual Studio Code 不会错!
  8. Scientific Linux 6.4安装详程
  9. Tomcat介绍,安装jdk,安装tomcat,配置Tomcat监听80端口
  10. 电脑键盘部分按键失灵_键盘按键失灵,教您电脑键盘失灵怎么办
  11. 2022BUAA数据结构期末大作业的一些想法
  12. GetX概览 — Flutter 开发的百宝箱
  13. ResNet解析(二)
  14. 国外的一个网站不能够访问
  15. [USACO09DEC]视频游戏的麻烦Video Game Troubles(DP)
  16. html展开插件,分享10款功能强大的HTML5/CSS3应用插件
  17. pd虚拟机安装Windows后如何退出(进入)融合模式
  18. 甘特图制定项目计划,提高项目管理效率
  19. 《淘宝网开店 拍摄 修图 设计 装修 实战150招》一一1.7  顺光拍摄展示更多细节...
  20. 如何区分单色LCD液晶屏的显示模式和玻璃型号

热门文章

  1. 人工智能基础复习1——人工智能概述
  2. IOS7 系统下的UIScrollView偏移问题
  3. 【温故知新】Linner Regression、Logistic Regression、Softmax Regression区别与联系
  4. Linner和WebStorm前端开发环境搭建
  5. Excel工资表通过宏的录制形成工资条形式
  6. 简约小清新企业绩效管理培训PPT模板
  7. 八月阿里云-云上年中钜惠各种型号云服务器配置表汇总!
  8. 【单片机基础】按键与矩阵键盘识别
  9. ps磨皮portraiture插件
  10. 七天编写指标_操盘线指标公式源码(七天线 工作线 生命线)[通达信公式