|
到底有几种Hook呀。。。
看雪里面有讲后面那些钩子的教程 你自己找找呗 楼上的说了 setwindowhookex那个玩意是hook 消息的 是系统提供的接口 后面的那几种hook技术那是 够函数的 那算是非正常技术 不是系统提供的功能 |
|
到底有几种Hook呀。。。
HOOK方法总结 1、HOOK SERVICE TABLE:HOOK SSDT 这种方法对于拦截 NATIVE API 来说用的比较多。 SSDT hook,一句话——Windows把需要调用的内核API地址全都存在了 一个表中(System Service Dispatch Table),要想hook一个内核API,比较简单的办法就是把 该内核API在表(SSDT)中保存的地址修改为自己撰写的函数地址。 2、HOOK INT 2E 方法:IDT HOOK IDT是中断描述表,可以替换其中的中断处理程序。 这种方法对于跟踪、分析系统调用来说用的比较多。原理是通过替换 IDT 表中的 INT 2E 中断,使之指向我们自己的中断服务处理例程来实现的。掌握 此方法需要你对保护模式有一定的基础。 3、 HOOK PE 方法:EAT HOOK 这种方法对于拦截、分析其他内核驱动的函数调用来说用的比较多。原理 是根据替换 PE 格式导出表中的相应函数来实现的。 EAT是可执行文件的导出表,记录DLL中可供其他程序使用的函数,可执行文件装载时会使用相应DLL的EAT表来初始化IAT表,通过替换EAT表中的函数地址,就可以使依赖于本DLL的程序得到一个假的地址。 4.IAT HOOK (ring3 用) IAT是可执行文件的导入表,记录可执行文件使用的其它DLL中的函数,通过替换IAT表中的函数地址,可以hook相应DLL中的函数调用。 5、Inline Hook方法 (ring 0和ring3 都可以用) Inline hook的工作流程: 1)验证内核API的版本(特征码匹配)。 2)撰写自己的函数,要完成以上三项任务。 2)获取自己函数的地址,覆盖内核API内存,供跳转。 Inline Hook的缺点: 1) 不够通用。各个windows版本中,内核API的开始一段不尽相同,要想通吃,就要多写几个版 本或者做一个特征码搜索(因为有的内核API在各个版本中非常相似,只是在“特征码”之前或之 后加一点东西)。 2) 已被一些检测工具列入检测范围,如果直接从内核API第一个字节开始覆盖,那么很容易被检 测,如果把覆盖范围往后推,并加以变形,也许能抵挡一气。具体情况,我才疏学浅,尚未试验 6.SYSENTRY hook 为了性能的考虑,xp后的系统都改用sysentry命令来进入ring0,去调用SSDT中的服务,不再是通过IDT中的 int 2E。这也使得我们hook也变得相对容易了。 首先获得sysentry的地址,然后改之,不用再考虑IDT了 7)IRP hook IRP是 I/O request packets,驱动程序中有一系列分发例程来处理请求,这些例程保存在驱动设备对象的数据结构中的一个表中,也很容易替换。 |
|
|
|
[招聘]诚聘软件工程师
看到211的首先鄙视下 |
|
[招聘]C++工程师
晕 好久之前的了 |
|
[招聘]北京启明星辰招聘网络安全工程师
有人说都已经接到电话面试通知了,真的假的?没通过筛选也通知下别让人干等着… |
|
[招聘]北京启明星辰招聘网络安全工程师
投的简历怎么一直没动静,悲剧,石家庄信息安全都白菜价了…还是想去北京啊……曾经两次匆匆而过的地方,曾经见证梦想与幸福的城市… |
|
[招聘]北京启明星辰招聘网络安全工程师
投的简历怎么一直没动静,悲剧,石家庄信息安全都白菜价了…还是想去北京啊……曾经两次匆匆而过的地方,曾经见证梦想与幸福的城市… |
|
[讨论]想知道大家的职业是什么?
总结下,楼上大部分是种地的高手,会灌溉啊!绝大部分是打酱油的,一部分是学生,很多是爱好者非专业人士。然后偶尔来两个大牛都是搞菊花的。 |
|
[注意]成都信息工程学院第八届信息安全技术大赛
话说那年高考失利,一本随便写了个,二本找了几个有信息安全的,结果一本没录掉到二本,前面桂电后面就是它如果桂电没有录取我,我就去一个学校了 |
|
|
|
|
|
|
|
[招聘]北京网络安全行业上市公司高薪诚聘
熟悉Windows 程序开发 有一点驱动编程基础 有反汇编逆向能力 熟悉OD 了解 IDA pro windbg 的使用 熟悉Linux系统 网络协议什么的学计算机网络跟在蓝狐实习的时候也学过 多线程 socket 也会点 |
|
|
|
[招聘]诚聘安全研发工程师
比较熟悉Windows下的vc++编程 对驱动编程也有了解 Linux 也玩过 网络配置也懂点(长沙蓝狐实训的时候学的) 计算机网络比较熟悉 有逆向经验 OD IDA pro的使用 对数据库不怎么熟悉 话说当年做数据库的程序的时候用的是delphi写的 delphi 有很多方便的数据库控件 而且 写起来比较简单 虽然不懂delphi 但是还是做了个学生成绩管理系统出来 |
|
[招聘][招聘]卡巴斯基中国总部招聘:Virus Analyst (病毒分析师)
感觉蛮真诚的 ,英语本来还凑合不过 四级过了之后很久都没接触过了 单词忘记了很多 经常看生活大爆炸 能听懂个大概 不过口语就没什么机会说了 |
|
|
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值