通过以上3篇文章的学习,我们已经可以获取到kernel32.dll的地址了下一步 我们就是获取几个重要的函数1.GetProcAddress 2.LoadLibrary 有了这两个函数很多函数都可以找到了,这节的目的最终就是找到这两个函数,为了便于测试和验证我们还要动态获取下MessageBoxA函数,最后弹出个对话窗口,还要安全退出那就要用到ExitProcess。那么咱们就结合0day2第三章的知识,通过hash来查找的相应的函数名称,再间接获取函数地址首先我们先来找到hash 1 #include "stdafx.h" 2 #include 3 #include 4 Read More
posted @ 2013-12-11 10:43 zhenw0 Views(1770) Comments(0) Diggs(0) Edit
题外话:上一篇文章中的 PEB法查找kerner32地址的方法 对TEB、PEB 、PE结构 知识要求很高,确实在写汇编代码时候小编感觉自己能力,信手啪啪一顿乱撸,结果一运行,非法访问了,没办法翻阅前人的文章,贴来,但是,感到很羞愧,故有此文章对 此过程 ,认真学习、分析下正题:TEB结构 1 // 2 // Thread Environment Block (TEB) 3 // 4 typedef struct _TEB 5 { 6 NT_TIB Tib; /* 00h */ 7 PVOID EnvironmentPoi... Read More
posted @ 2013-12-06 00:06 zhenw0 Views(2969) Comments(0) Diggs(2) Edit
0x01找kernel32基地址的方法一般有三种:暴力搜索法、异常处理链表搜索法、PEB法。0x02 基本原理暴力搜索法是最早的动态查找kernel32基地址的方法。它的原理是几乎所有的win32可执行文件(pe格式文件)运行的时候都加载kernel32.dll,可执行文件进入入口点执行后esp存放的一般是Kernel32.DLL 中的某个地址,所以沿着这个地址向上查找就可以找到kernel32的基地址。那么如何知道我们找到的地址是kernel32的基地址呢?因为kernel32.dll也是标准的pe结构文件,pe结构文件的开始是IMAGE_DOS_HEADER结构,IMAGE_DOS_HEA Read More
posted @ 2013-12-04 10:41 zhenw0 Views(5763) Comments(0) Diggs(0) Edit
0x01 准备:VMwarePlayer(我是在360软件管家那搜到的下载的)xp sp2http://user.qzone.qq.com/252738331/blog/1357138598(这是我的QQ空间文章,平时收藏的一些windows老版系统,用来做实验用的)vc++6.0绿色完整版 网上自己下巴(30M左右)ollydby (OllyDBG_1.10_second_cao_cong看雪上下的)winhex (网上有很多的)知识点:CPU(Intel,x86)各主要寄存器的一般用途:EAX:存储器:用于执行计算,并用于存储函数的返回值。基本操作,如加,减,比较使用这个通用寄存器EBX: Read More
posted @ 2013-12-03 11:28 zhenw0 Views(1016) Comments(0) Diggs(0) Edit
透明位图的显示作者:王骏http://www.vckbase.com/document/viewdoc/?id=532下载本文示例代码包含透明色的位图的绘制方法有多种,最简单的方法是调用现成的函数:TransparentBlt,也可以通过自己的代码实现类似TransparentBlt的功能,实现过程也有两种形式,一种是事先做一张掩码位图,另一种是动态生成掩码位图。本文将介绍动态生成掩码位图绘制具有透明区域位图的方法。一、TransparentBlt 函数的使用TransparentBlt 函数在Windows98/Windows2000以上版本运行,系统中需要包含 Msimg32.dll,使用 Read More
posted @ 2012-05-05 21:46 zhenw0 Views(307) Comments(0) Diggs(0) Edit
一、相同点1、addr 和 offset 操作符都是获得操作数的偏移地址;2、addr 和 offset 的处理都是先检查处理的是全局还是局部变量,若是全局变量则把其地址放到目标文件中。二、不同点1、addr 伪操作符,只能用在 invoke 伪指令语句中;2、offset 伪操作符可以用在任何可能涉及偏移地址的指令(当然包括 invoke 伪指令)并想获取操作数偏移地址的场合中;3、addr 不能处理向前引用(即 addr 引用的操作数必须在使用 addr 前就得定义或声明),而offset 则能(不管引用的操作数是其前或其后定义或声明);所谓向前引用是指:标号的定义是在invoke 语句之 Read More
posted @ 2012-04-30 14:14 zhenw0 Views(1106) Comments(0) Diggs(0) Edit
---------------------------------------------------------------------//转自 http://zhaoweizhuanshuo.blog.163.com/blog/static/14805526220104315834670/----------------------------------------------------------------------对于每一个菜单项,有两个响应函数UPDATE_COMMAND_UI 和COMMAND :UPDATE_COMMAND_UI COMMAND处理菜单对应的用户界面处理该 Read More
posted @ 2012-04-29 16:31 zhenw0 Views(895) Comments(0) Diggs(0) Edit
CString,int,string,char*之间的转换string 转 CStringCString.format(”%s”, string.c_str());char 转 CStringCString.format(”%s”, char*);char 转 stringstring s(char *);string 转 char *char *p = string.c_str();CString 转 stringstring s(CString.GetBuffer());1,string -> CStringCString.format(”%s”, string.c_str());用 Read More
posted @ 2012-04-25 07:00 zhenw0 Views(461) Comments(0) Diggs(0) Edit
花了一个周末的时间,系统装了1遍,虚拟机下了2个,安装了三次,机器重启了N次,为了能在win7 x64上调试win7 x64的Vm虚拟机系统,感觉前前后后很困能,还有很多问题出现,固写此文章献给刚刚踏入驱动开发的小菜。感谢伟大的网络,也感谢乐于学习的你,希望互相关注,QQ252738331,http://t.qq.com/oliverTech Read More
posted @ 2012-04-23 10:01 zhenw0 Views(26183) Comments(2) Diggs(2) Edit
我的驱动测试环境:win7 64 U 版,win7 x64 checked build编译的驱动文件。工具下载首先 管理元身份启动 DebugView ,配置:菜单capture下 capture kernel 、Enable Verbose kerenl Outptut、capture Event打勾,其次 管理元身份启动 InstDrv.exe 填写正确路径,安装、启动 。。。。顺利的话看到DebugView 输出 想要的字符串问题---解决方法:1.安装驱动,无法获得句柄没有管理员身份启动InstDrv工具2.安装成功,启动失败 强制驱动签名导致:解决办法:(1)关闭强制驱动签名的命令如 Read More
posted @ 2012-04-20 20:24 zhenw0 Views(8365) Comments(0) Diggs(0) Edit