手机上怎么买彩票双色球 微信上有人推荐买彩票 能合买彩票的平台 夫妻买彩票狂中30亿 买彩票心态 买彩票就买大乐透开奖结果 哪个平台买彩票安全吗 买彩票有买一个号的吗 怎么看走势图买彩票 如何在电脑上买彩票 美国几岁可以买彩票? 福彩工作人员买彩票 彩客网买彩票 能在微信上买彩票吗 怎么买彩票容易中

缓冲区溢出实战教程系列三利用OllyDbg了解程序运行机制

来源本站整理 作者佚名 时间2019-04-30 TAG 我要投稿

想要进行缓冲区溢出的分析与利用当然就要懂得程序运行的机制今天我们就用动态分析神器ollydbg来了解一下在windows下程序是如何运行的
戳这里看之前发布的文章
缓冲区溢出实战教程系列一第一个缓冲区溢出小程序

缓冲区溢出实战教程系列二dev c++编译汇编代码

0×00 OD基本介绍及用法
1. OD界面
我们将程序拖入OD中会出现如下界面在这里我分为四个主要区块分别是汇编代码窗口寄存器窗口二进制窗口堆栈窗口当然也有分为五个区块的但没有太大区别接下来我给大家讲讲有个基本概念等下在程序分析里给大家具体做讲解

2. OD常用操作
F2设置?#31995;?br/> F4与F9F4是运行到光标位置F9是运行到?#31995;?#22788;
F7与F8F7是单?#35762;?#20837;F8是单?#35762;?#36827;
Ctrl+F9是从F7步入的代码段中返回之前代码段
0×01 寻找程序入口
1. 程序介绍
今天拿MessageBox的代码为例先贴出代码
#include
int main()
{
 MessageBox(0,"You have been hacked","warning",0);
 return 0;
}

可以看出这是一个非常简单的弹出提示框的代码只有5行代码但麻雀虽小五脏俱全通过一个小程序我们更容易理解程序的基本运行原理
2. OD分析程序起点
将程序拖入到OD

我们会看到程序停在了0x004014E0的位置但这不是程序真正的入口通常用OllyDBG打开一个程序之后并没有直接跳到程序主函数入口地址而是在进行一些初始化工作这个我们暂时不用管我们这里只要找到主程序入口就好
一般用OllyDBG打开程序的时候并不是直接定位到程序入口而是还要先进行一系列的初始化工作但做这些工作的反汇编代码我们是不需要的所以我们要快速跳 过直接到程序入口
3. 程序真正入口点
找程序入口呢一个是凭经验一路F8还有一个就是借助工具今天跟大家说一下利用IDA找程序入口
在IDA中打开程序在左侧栏中找到_main,点击?#20063;?#20195;码栏第一行看底下的地址就好了我们记住入口地址就好
main函数地址是0×00401500

我们回到OD右键goto-expression跳转到main函数所在位置


我们按F2在这设个?#31995;?#25509;下来我们要用到
0×03 主函数运行过程
我们在0×401500处下好?#31995;?#25353;F9运行到?#31995;?#22788;当我们看见地址的字成红色背景变为黑色时就?#24471;?#31243;序已经运行到我们的?#31995;?#22788;了

找到主函数我们今天的任务就完成一半了我们先分析一下主函数运行的过程其实主函数运行过程也是压栈弹栈的过程只是这个过程与我们直接调用MassageBox的堆栈调用略有不同为了方便理解先看一下下面的小知识点
?#27426;esp栈的低址就是栈空间地址小的一端
?#27426;ebp栈的高址就是栈空间地址较大的一端
栈空间的增长由高地址向低地址增长ebp—>esp
好让我们继续先F8运行到0x40150B

这时我们要观察一下现在?#27426;?#21644;栈底的情况这时候esp?#27426;?#26159;0x28FEB8ebp栈底是0x28FF88

继续F8两次这里就出现了与调用函数不同的地方这里指令SUB ESP,14是让esp直接减14的意思我们现在的esp是0x28FEB4


果断打开计算器0x28FEB4-0×14=0x28FEA0那?#24471;?#25105;执行完这个指令过后esp的值就应该是0x28FEA0

让我们F8验证一下果然不出所料目前?#27426;?#30340;位置就是 0x28FEA0

[1] [2]  下一页

声明:黑吧安全网(http://www.rliwo.live)登载此文出于传递更多信息之目的并不代表本站赞同其观点?#25237;?#20854;真实性负责仅适于网络安全技术爱好者学习研究使用学习中请遵循国家相关法律法规如有问题请联系我们联系邮箱[email protected]我们会在最短的时间内进行处理
  • 最新更新
    • 相关阅读
      • 本类?#35753;?/li>
        • 最近下载
        ƱȨַ
        手机上怎么买彩票双色球 微信上有人推荐买彩票 能合买彩票的平台 夫妻买彩票狂中30亿 买彩票心态 买彩票就买大乐透开奖结果 哪个平台买彩票安全吗 买彩票有买一个号的吗 怎么看走势图买彩票 如何在电脑上买彩票 美国几岁可以买彩票? 福彩工作人员买彩票 彩客网买彩票 能在微信上买彩票吗 怎么买彩票容易中