社区
汇编语言
帖子详情
求教如何把esp或者ebp保存在一个内存地址然后再jmp
清晨曦月
博客专家认证
2011-10-09 03:22:15
修改了一个API函数的前面几个字节,跳转到我的函数里面,就是修改前5字节jmp到新地址那种hook方法。
可是在这之前我想保存esp或者ebp的值到一个内存地址,于是我就在原函数地址上写入:
mov dword ptr ds:[保存esp的内存地址], esp
jmp [我的函数的内存地址]
就是在以前的jmp前面加了一句,明显不行啊,O(∩_∩)O~
求高人指点一二三~
...全文
97
6
打赏
收藏
求教如何把esp或者ebp保存在一个内存地址然后再jmp
修改了一个API函数的前面几个字节,跳转到我的函数里面,就是修改前5字节jmp到新地址那种hook方法。 可是在这之前我想保存esp或者ebp的值到一个内存地址,于是我就在原函数地址上写入: mov dword ptr ds:[保存esp的内存地址], esp jmp [我的函数的内存地址] 就是在以前的jmp前面加了一句,明显不行啊,O(∩_∩)O~ 求高人指点一二三~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
清晨曦月
2011-10-09
打赏
举报
回复
要是可以,那结贴了
清晨曦月
2011-10-09
打赏
举报
回复
还没测试,不过蹦出来个想法
哎呀,我这样不就行了嘛!
在我的函数里面调用这样一段函数:
mov eax, esp
retn
不就得到esp了么……哎……囧啊囧
高手看这样对吧,记得好像是eax就是返回值,测试了一下确实输出出来很多内存地址
清晨曦月
2011-10-09
打赏
举报
回复
咦……那就是说……和原来的hook一样,只是在我的函数头上写上
mov dword ptr ds:[保存esp的内存地址], esp
就行了么。。。测试下
日立奔腾浪潮微软松下联想
2011-10-09
打赏
举报
回复
在[我的函数的内存地址]开头部分再保存。
清晨曦月
2011-10-09
打赏
举报
回复
咕~~(╯﹏╰)b,高人救我,救我啊救我……
清晨曦月
2011-10-09
打赏
举报
回复
我勒个去,看我这结帖率…………明显高于100%,在线等,高人啊,汇编不懂,也不知道该给多少分,不够的话可以大大的加啊
缓冲区溢出漏洞原理及Linux下利用
ASLR 是一种防范内存损坏漏洞被利用的计算机安全技术。ASLR通过随机放置进程关键数据区域的地址空间来防止攻击者能可靠地跳转到内存的特定位置来利用函数,以防范恶意程序对已知地址进行Return-to-libc攻击。ASLR在...
GDB的使用方法
...GDB 可以打印出所调试程序的源代码,当然,在程序编译时一定要加上-g的参数,把 源程序信息编译到执行文件中。不然就看不到源程序了。当程序停下来以后, GDB会报告程序停在了那个文件的
越过 __chk
esp
检测的缓冲区溢出
本文的起源,来自于在学校BBS上的C++版上,有
一个
人问了
一个
问题,然后我给他已解答。这个帖子的原文是这样的: 代码 发信人: lisanbai (李三白), 板面: C++标 题: 这个怎么一直不停输出啊,菜鸟
求教
发信站: ...
AT&T汇编指令总结
引用寄存器要在寄存器号前加百分号%,如“movl %eax, %ebx”。 80386有如下寄存器: 8个32-bit寄存器 %eax,%ebx,%ecx,%edx,%edi,%esi,%
ebp
,%
esp
; 8个16-bi
i++和++i作为参数时的编译器处理方式分析~
来自于
一个
网友的提问:http://bbs.bccn.net/thread-200774-1-1.html----------------------------------------------------------------------------------------------------------
求教
大家,简单问题,但为什么是...
汇编语言
21,458
社区成员
41,601
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章