驱动中的object hook指的是什么?

作者&投稿:虿黛 (若有异议请与网页底部的电邮联系)
什么是驱动、内核开发?HOOK 又是什么?又有什么用呢?~

驱动是运行在ring0层拥有最高的权限.当然你想做什么都不会受到限制.驱动一般是为了开发硬件的.例如平常说的安装主板驱动,网卡驱动等就是指这个驱动.
驱动还有一个特殊的应用就是用在系统安全方面.例如杀毒软件,防火墙等都利用驱动来实现对病毒木马的实时监控.当然病毒也可以用驱动,就是所谓的rookit病毒.
还有游戏保护系统通过相关的函数来达到反调试,防盗号的目的.还有那些360保险箱之类的也是用驱动来hook相关函数来防止木马盗号.
至于hook是什么百度搜一下就知道了.
总之驱动在系统中是没有限制的.想做什么是看你的设计而已.
不过设计得不好的驱动是很危险的.例如在普通的c 程序里
int *p=NULL;
*p=1;
这个程序就会弹出错误对话框,程序会被关闭.
但是在驱动中这样写就会导致系统蓝屏.所以是比较危险的.

Object只是个结构体,里面存着各种成员变量、例程函数
object hook就是修改这个object结构里的一个函数指针,而这个函数指针在某些API里会被调用,所以hook后就会运行到你指定的函数。

楼上的问牛答马
人家问的目标HOOK是什么
你给他整个系统快速关机/重启的函数。
不过这个函数视乎很伤硬盘。HOOK也有难度。
OBJECT HOOK 就是你要HOOK的目标,或者说你要挂钩的函数。
比如NtUserCallOneParam这个函数。传递第2个参数为0X34的时候就是关机。
你就可以HOOK它来实现阻当调用这个函数的时候做一些你想要做的事。你入阻止它关机。
那么NtUserCallOneParam就可以说是Object Hook

OBJECT hook的组成,主要是3部分 如下图:



楼上是傻X,啥玩意不懂,解释了原意
HOOK在计算机里就是只本来A程序要调用a函数,但是B程序对a函数做了处理,使得b函数替换了a函数,从而改变了函数调用,这个就是一个HOOK,当然HOOK的种类不止这些
还有INLINE HOOK:B程序不再只是简单的改变函数的调用地址,而是改写了a函数的内部数据,在内部加入了一条跳转指令(不一定是这样),使A在调用a时跳入b,这种处理叫做INLINE HOOK

def struct _SERVICE_DESCRIPTOR_TABLE
{
PVOID ServiceTableBase;
PULONG ServiceCounterTableBase;
ULONG NumberOfService;
ULONG ParamTableBase;
}SERVICE_DESCRIPTOR_TABLE,*PSERVICE_DESCRIPTOR_TABLE;
extern PSERVICE_DESCRIPTOR_TABLE KeServiceDescriptorTable;
VOID Hook();
ULONG JmpAddress;//要HOOK到的地址
ULONG OldServiceAddress;//原来NtShutdownSystem的地址
__declspec(naked) NTSTATUS __stdcall NtShutdownSystem(PHANDLE ProcessHandle,
ACCESS_MASK DesiredAccess,
POBJECT_ATTRIBUTES ObjectAttributes,
PCLIENT_ID ClientId)
{
//这里填写HOOK后要做的一些事情
}
NTSTATUS DriverEntry(IN PDRIVER_OBJECT DriverObject,PUNICODE_STRING RegistryPath)
{
DriverObject->DriverUnload = OnUnload;
DbgPrint("Unhooker load");
Hook();
return STATUS_SUCCESS;
}
VOID Hook()
{
ULONG Address; //获得原函数地址
Address = (ULONG)KeServiceDescriptorTable->ServiceTableBase + 0xF9 * 4;//0xF9为NtShutdownSystem服务ID
DbgPrint("Address:0x%08X",Address);

OldServiceAddress = *(ULONG*)Address;//保存原来NtShutdownSystem的地址
DbgPrint("OldServiceAddress:0x%08X",OldServiceAddress);

DbgPrint("MyNtShutdownSystem:0x%08X",MyNtShutdownSystem);

JmpAddress = (ULONG)MyNtShutdownSystem ; //跳转到MyNtShutdownSystem函数,即是跳转到我们自己的处理函数
DbgPrint("JmpAddress:0x%08X",JmpAddress);

__asm{//去掉内存保护
cli
mov eax,cr0
and eax,not 10000h
mov cr0,eax
}

*((ULONG*)Address) = (ULONG)NtShutdownSystem;//HOOK SSDT

__asm{//恢复内存保护
mov eax,cr0
or eax,10000h
mov cr0,eax
sti
}
}

object hook指插件程序


请问Object.动词的两种读法分别对应的意思
object 英 [ˈɒbdʒɪkt ,əbˈdʒekt]美 [ˈɑːbdʒekt ,əbˈdʒekt]n.物体;物品;东西;(极欲得到、研究、注意等的)对象;宗旨;目的;目标 v.不同意;不赞成;反对;提出…作为反对的理由;抗辩说 这道题的两个发音...

object什么意思 object解释
1、object,英语单词,主要用作名词、及物动词、不及物动词,作名词时意为“目标;物体;客体;宾语”,作及物动词时意为“提出…作为反对的理由”,作不及物动词时意为“反对;拒绝”。2、object是可数名词,基本意思是“物体,物品”,指具体的东西,引申可表示“对象”。在语法术语中也可作“宾语”解。

object的意思是什么?
1、oppose:oppose只用作及物动词,接名词、代词、动名词作宾语。oppose的过去分词opposed,常用作形容词,在句中作表语,说明一个人的态度,通常与介词to连用。2、object:object的基本意思是“由于某种原因不赞成某事”,引申可作“讨厌”解。object可用作及物动词,也可用作不及物动词。用作及物动词时...

object的用法 全部
2、Object同样可以表示‘反对’的意思,表达对于某物或某人的不同观点。I object having to wear a helmet when I ride a bike.我反对当我骑自行车的时候必须要戴头盔。The team objected to the changes that were going to be made to the project.该小组反对将要在项目中所做的更改。

单词objective和object的区别是什么?
objective和object的区别如下:一,音标和词性不同:object\/bdkt; bdekt\/ ;词根,可以作名词或者动词。2. objective \/əbˈdʒektɪv\/;名词和形容词;可以是object对应的形容词。其它词形:复数 objectives;比较级 more objective;最高级 most objective。二,意思不同:1...

object to和object to doing有什么区别呢?
object to doing:词性为动词短语,object to doing 是一个动词短语,由动词 object、介词 to 和动名词 doing 构成。通过下面的表格我们了解下object to和object to doing的含义、发音和用法 接下来让我们看下object to和object to doing的用法区别:1.语法结构:object to 是一个动词短语,后面通常接...

object作动词和名词时的读音为什么不同?
动词时读[əbˈdʒekt]名词时读[ˈɔbdʒikt]这应该追溯到英语的音素问题了,大部分情况下,当一个单词既可以作动词又可以做名词的时候,动词的重读音节在第二个音节上,而名词的重读在第一个音节上。它就是这样的一个规律,也没有什么特别的为什么啊。记住吧 ...

object怎么读
object的读音是:英['?bd??kt]。object的例句是用作名词(n.)Variousobjectswereonthetable.桌子上摆着各种各样的物体。object名词:objector;过去式:objected;过去分词:objected;现在分词:objecting;第三人称单数:objects。一、详尽释义n.(名词)物体,物件,物品,东西目的,目标客体宗旨【哲】对象客观【语法】宾语(包括...

oppose,object,resist,withstand区别
oppose只用作及物动词,接名词、代词、动名词作宾语。object的基本意思是“由于某种原因不赞成某事”,引申可作“讨厌”解。object可用作及物动词,也可用作不及物动词。用作及物动词时,其后不可直接接名词或代词作宾语,可接宾语从句,表示“提出反对…的理由”。resist的基本意思是“反抗,抵抗”,指拒绝...

英语中的 S V O IO P OC 各是基本句型的什么部分?
S:Subject(主语)V:Verb(动词,即谓语)O:Object(宾语)IO:Indirect Object(间接宾语,简称间宾)P:Predicative(表语)OC:Object Complement(宾语补足语,简称宾补)在告诉你一个:DO:Direct Object(直接宾语,简称直宾)

南雄市18451896374: 驱动中的object hook指的是什么? -
邴婵硫酸: OBJECT hook的组成,主要是3部分 如下图:

南雄市18451896374: 求大神指教怎么理解object Hook精髓 -
邴婵硫酸: Object只是个结构体,里面存着各种成员变量、例程函数 object hook就是修改这个object结构里的一个函数指针,而这个函数指针在某些API里会被调用,所以hook后就会运行到你指定的函数.求大神指教怎么理解object Hook精髓

南雄市18451896374: 什么是驱动、内核开发?HOOK 又是什么?又有什么用呢? -
邴婵硫酸: 驱动是运行在ring0层拥有最高的权限.当然你想做什么都不会受到限制.驱动一般是为了开发硬件的.例如平常说的安装主板驱动,网卡驱动等就是指这个驱动.驱动还有一个特殊的应用就是用在系统安全方面.例如杀毒软件,防火墙等都利用驱动来...

南雄市18451896374: C# 里面经常说的调用API和HOOK指的什么?
邴婵硫酸: API指的windows的API函数,HOOK是指钩子

南雄市18451896374: 驱动中怎样注册object钩子回调函数 -
邴婵硫酸: 那么就可以简单把你的钩子驱动器DLL的名字作为值添加在下面注册表的键下: HKEY...因此在消息回调函数中只需把消息钩子向后传递就可以了

南雄市18451896374: java 中对象的哈希码值是指的什么? -
邴婵硫酸: 任何类均为Object类的间接子类,所以均继承方法public int hashCode() 该方法返回的值一般是通过将该对象的内部地址转换成一个整数来实现的.这样能保证每个对象的哈希码值不一样.

南雄市18451896374: js中object的属性(key)可以是数字吗? -
邴婵硫酸: 可以是数字,object对应的key没有限制,只是如果是数字,取值的时候就不能用英文句号(.),只能用[]的方式取值.<br>举例:<br><script><br>var obj={1:3};//这里1就是一个数组的key<br>alert(obj[1]+2);//取值的时候需要用[],而不能用obj.1的方式<br><&#47;script>

南雄市18451896374: object在java 里是什么意思 -
邴婵硫酸: object就是指面向对象的对象,对象就是实例,在java里,对象是类的一个具体实例,就像:人,指一个类.你则为具体的实例,也就是java里面的对象.也就是OOP(Object Oriented Programming)面向对象编程中的object.

南雄市18451896374: request.setAttribute(string name,Object o);里面的string name 和Object o指的是什么该放什么
邴婵硫酸: name 就是你要存储的对象的 名字,你自己起 Object 就是任意 你已声明的对象 注意 使用 JDK 1.5 Object 就可以是 true false 这种 基本数据类型(有了自动装箱了)

南雄市18451896374: 没有开IE,可是却有网页的声音,而且进程中好多个IE
邴婵硫酸: IE进程肯定中病毒了,用XueTr查看加载到IE进程的可疑模块 XueTr是近年推出的一款广受好评的ARK工具.如果您对window系统不甚熟悉,您还是不要使用本工具,即使要使用,也不要用本工具胡乱操作. 作者:linxer 建议提供:包括angel13...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网