(reversingwithlena)Lena crackme tutorial 03笔记

相关链接:

一、本篇内容概要

  • 简要介绍了 PE 文件
  • 举例说明了 PE 头的作用
  • 提到了软件开发者如何对 Ollydbg 进行误导

二、RegisterMe.exe

在本篇中 RegisterMe.exe 只是一个帮助了解 PE 文件的一个引子,目标是去除所有 Nag,非常简单

运行.exe,过一遍之后发现一前一后有两个 nags,将.exe拖入 Ollydbg

一眼就看到了两个 badboy,怎么样去除呢?本例讲到了两种方法

1、更改 PE 文件头中的 AddressOfEntryPoint

AddressOfEntryPoint 的值代表程序代码段头的偏移地址,将它改大 24 就能跳过之前的代码。

打开 Memory map,双击 PE 文件头

往下拉找到 AdressOfEntryPoint

我们知道了其地址在 4000E8,在 hex 窗口中 go to 4000E8

因为数据在内存中是逆序存储的,即 00 10 00 00 实际就是 00 00 10 00,所以我们如果要改大 24 ,即改成 24 10 00 00

于是选中->右键->二进制->编辑,修改完保存,然后选中->复制到可执行文件->保存文件

打开我们保存的文件,可以看到代码段直接跳过之前的 nag 了,试着运行一下,没有问题。接下来我们去掉第二个 nag

2、直接“清空”这段代码

选中部分即为第二个 nag

怎么去掉呢?直接填充 nop

右键->二进制->用nop填充

然后保存,运行发现第二个 nag 也被去除了

三、总结

本篇重点不在 RegisterMe1.exe,如果想深入学习可以点击文章第一页的链接下载观看作者的视频

说点什么

avatar

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

  Subscribe  
提醒