摘要: 1.x64系统的调用方式统一使用一种变形的fastcall,即前四个参数在寄存器存储,由函数自己清理,后面的参数由栈存储,由调用者清理。具体存储位置见《逆向工程核心原理》p391 37.1.5 2.虽然前四个参数由寄存器存储,但是栈仍然预留了32个字节的空间。具体预留多少个栈空间由调用者约定,而将寄 阅读全文
posted @ 2021-04-28 11:24 乘舟凉 阅读(425) 评论(0) 推荐(0) 编辑
摘要: 当你在调试中遇到 Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call. This is usually a result of calling a function de 阅读全文
posted @ 2021-04-23 21:39 乘舟凉 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 这些都代表着是Windows native(原生)系统服务(system services)例程(routines)。Ke - kernel的缩写,代表的是内核模式的API接口。Nt - Windows New Technology的缩写,代表的是Windows 系统服务功能API接口。 大部分以N 阅读全文
posted @ 2021-04-21 10:23 乘舟凉 阅读(1233) 评论(0) 推荐(0) 编辑
摘要: 编译方式: 第1种: 设置:1、项目->配置属性->常规->MFC的使用:在静态库中使用MFC2、项目 -> 配置属性->C/C++->代码生成->运行库 :选择 多线程调试(/MTd)。 编译时,选择的是debug,win32然后执行编译生成方案,在该工程目录下的debug文件中,找到该.exe文 阅读全文
posted @ 2021-04-20 09:22 乘舟凉 阅读(618) 评论(0) 推荐(0) 编辑
摘要: 全局消息钩子的钩子函数一定要再dll中,然后启动安装钩子不能在dll中,要是我想在程序开始时安装钩子怎么办。很简单利用两个钩子就行了,只要安装钩子和钩子函数不在同一个dll就行了。 下面请看案例(编译 编译环境: vs2010 多字节 已在window7 32位测试通过 ) //mouseHook. 阅读全文
posted @ 2021-04-19 23:02 乘舟凉 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 如何加载dll网上有很多资料,我就不赘述了,我分享一下我在练习过程碰到的问题 1.IAT指向的地方不能为空 可能大家觉得IAT的地址是运行时系统赋予的,就指向了一个0字节的位置,但是PE装载器会认为你的IAT已经结束了,会造成这个dll加载失败 其实谁便写点什么都行 2.加载的dll一定要至少有一个 阅读全文
posted @ 2021-04-18 21:36 乘舟凉 阅读(104) 评论(0) 推荐(0) 编辑
摘要: PE结钩我就不多说了,网上有资料,这里只讲操作性的东西,也就是说本文适合有一定pe基础的学习者。 本次案例工具于原料有 ollydebug、CFF Explorer、WinHex以及本次用来修改的程序 下载地址:http://pan-yz.chaoxing.com/share/info/bb01f4 阅读全文
posted @ 2021-04-17 22:23 乘舟凉 阅读(244) 评论(0) 推荐(0) 编辑
摘要: PE结钩我就不多说了,网上有资料,这里只讲操作性的东西,也就是说本文适合有一定pe基础的学习者。 本次案例工具于原料有 ollydebug、CFF Explorer、WinHex以及本次用来修改的程序 下载地址:http://pan-yz.chaoxing.com/share/info/bb01f4 阅读全文
posted @ 2021-04-16 22:51 乘舟凉 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 1.内存节区一定比文件节区大 2.到底复制多少数据取决于文件节区的大小,内存节区的多余部分全部为0 阅读全文
posted @ 2021-04-16 12:07 乘舟凉 阅读(58) 评论(0) 推荐(0) 编辑
摘要: 一、鼠标钩子的安装 SetWindowsHookEx(WH_MOUSE,MouseProc,g_hInstance,0); WH_MOUSE 表明安装的是鼠标钩子 MouseProc 钩子函数的地址 g_hInstance 钩子函数所在dll的地址 0 为0表示是全局钩子 二、钩子函数解析 LRES 阅读全文
posted @ 2021-04-16 11:21 乘舟凉 阅读(1002) 评论(0) 推荐(0) 编辑