zoukankan      html  css  js  c++  java
  • 逆向工程核心原理——第二章

    首先我们跟随书本,写一个带有弹窗的程序:

    源代码是这样的:

    然后我们跟随书本找一遍main函数:

    首先我们跟随程序整体看一遍:

    看到有一个0x401005,和我们的0x401000很近的一个地址,我们怀疑他就是main函数,所以我们进入看看

    看到里面不仅有我们输入的字符串,而且还有一个messagbox的函数,所以我们可以确定这就是main函数

    为了更好的找到main函数,书本给我们举例了几种方法:

    1.GOTO命令 ctrl+G,直接输入地址,进行查找。

    2.设置断点,方便多次反复运行。

    3.添加注释,方便浏览。

    4.添加标签。

    书本也举例了三种查找指定代码的方法:

    1.逐步执行代码。

    2.搜索字符串。

    3.API断点。

    打补丁修改hello world字符串(缓冲区修改

    我们先找到main函数:

    看到hello world字符串是储存在0x0042201C里的,然后我们在数据区ctrl+G找到0x0042201C:

    我们将字符串修改为Lady_Lexington

    确定后,运行程序:

    打补丁修改hello world字符串(修改传递地址

    我们找到空白的缓冲区,修改为需要的字符:

    然后将这个地址覆盖原来的地址:

  • 相关阅读:
    Codeforces 451A Game With Sticks
    POJ 3624 Charm Bracelet
    POJ 2127 Greatest Common Increasing Subsequence
    POJ 1458 Common Subsequence
    HDU 1087 Super Jumping! Jumping! Jumping!
    HDU 1698
    HDU 1754
    POJ 1724
    POJ 1201
    CSUOJ 1256
  • 原文地址:https://www.cnblogs.com/lex-shoukaku/p/13225161.html
Copyright © 2011-2022 走看看