2013年4月5日

lea和mov指令加中括号容易混淆的概念

摘要: LEA指令和mov指令的区别:一.lea指令:在汇编中[]的作用不是单纯的c语言中指针类似,可以分为两种情况,对于变量来说第二个操作数是寄存器必须要加[],不然报错,这里lea就是取[寄存器]的值,如:mov eax,2lea ebx,[eax];执行后ebx=2mov ebx,eax;等同于上句lea ebx,eax;编译器报错: error A2070: invalid instruction operands对于变量来说加不加[]都是一样的效果,都是取变量的地址,相当于指针如:num dword 2lea ebx,abclea eax,[abc]; eax为abc的地址,如eax=405 阅读全文

posted @ 2013-04-05 22:44 帅气小书童 阅读(1665) 评论(0) 推荐(0)

2013年3月29日

SSDT绕过驱动保护的一些思路

摘要: 2013-03-29 00:17:21一直以来觉得驱动对我来说很遥远,最近认真看了DDK驱动开发HOOK系统服务描述表一些底层的的教程,今天终于有点进步,好,话不多讲,直接上源码。。。#include <ntddk.h>#include <windef.h> //要定义BYTE类型必须加的头文件extern long KeServiceDescriptorTable; //直接导出KeServiceDescriptorTable这张表#pragma pack(1) //保证字节的对齐排序typedef struct _JMPcode{ ... 阅读全文

posted @ 2013-03-29 00:13 帅气小书童 阅读(359) 评论(0) 推荐(0)

2013年3月14日

C++动态调用DLL

摘要: C++动态调用DLL,可以借助API函数。在kernel32.dll中,啥都不说,先贴代码,与动态库调用有关的函数包括如下:0 Q0 m5 C" ~3 @7 J* L1、LoadLibrary装载动态库。2、GetProcAddress获取要引入的函数,将符号名或标识号转换为DLL内部地址。# f! M2 H# x5 p4 d% j2 ^3、FreeLibrary释放动态链接库。函数原型分别是:原型分别是:HMODULE LoadLibrary(LPCTSTR lpFileName);FARPROC GetProcAddress(HMODULE hModule, LPCWSTR lp 阅读全文

posted @ 2013-03-14 23:30 帅气小书童 阅读(360) 评论(0) 推荐(0)

2012年9月19日

C++加载驱动实例

摘要: 2012-09-19 00:26:11 驱动程序可以是针对某一特定硬件的,为系统提供管理硬件的各种功能;也可以是针对系统设备的,对系统的输入输出做一些处理,实现特定的功能,比如当软件要做的事用应用程序无法实现或者难以实现某种功能时,但驱动程序可以实现,则需要驱动程序。以下就是一个C++以服务的方式,加载驱动的实例 2 4 #include<windows.h> 5 #include "stdio.h" 6 void installDvr();//安装驱动 7 void startDvr();//启动驱动 8 void stopDvr();//停止驱动 9 voi 阅读全文

posted @ 2012-09-19 00:31 帅气小书童 阅读(2817) 评论(0) 推荐(1)

2012年8月21日

VB判断API防下断

摘要: 2012-08-21 00:02:15 断点,调试器的功能之一,可以让程序中断在需要的地方,从而方便其分析。也可以在一次调试中设置断点,下一次只需让程序自动运行到设置断点位置,便可在上次设置断点的位置中断下来,极大的方便了操作,同时节省了时间。 常用的断点包括:INT3断点、硬件断点、内存断点、消息断点、条件断点等。 简简单单VB防下send断源码如下: 1 Public Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As 阅读全文

posted @ 2012-08-21 00:14 帅气小书童 阅读(170) 评论(0) 推荐(0)

2012年8月9日

RO层挂钩SSDT

摘要: 2012-08-0801:03:54 SSDT(System Services Descriptor Table),系统服务描述符表。这个表就是一个把ring3的Win32 API和ring0的内核API联系起来。SSDT并不仅仅只包含一个庞大的地址索引表,它还包含着一些其它有用的信息,诸如地址索引的基地址、服务函数个数等。通过修改此表的函数地址可以对常用windows函数及API进行hook,从而实现对一些关心的系统动作进行过滤、监控的目的。一些HIPS、防毒软件、系统监控、注册表监控软件往往会采用此接口来实现自己的监控模块, 目前极个别病毒确实会采用这种方法来保护自己或者破坏防毒软件,但. 阅读全文

posted @ 2012-08-09 00:05 帅气小书童 阅读(663) 评论(0) 推荐(1)

导航