首页
社区
课程
招聘
[分享]新手的两份学习源码——数字的hook框架和重载内核
发表于: 2013-9-25 16:11 20123

[分享]新手的两份学习源码——数字的hook框架和重载内核

2013-9-25 16:11
20123

本人新手一枚,望各位大牛勿喷,也希望得到大家的指点,共同进步。

不是什么新鲜、高级的东西,但对于像我一样的新手应该有点帮助。先说说数字的hook框架,实现在hookport.sys里,XT内核钩子一扫便知,inline hook了KiFastCallEntry。这个hook点选得真好,即是进内核的必经之地,又能很方便地拿到SSDT、服务例程序号及地址,稍作修改就能让流程进入自己的地盘。不知道第一个选这个hook点的公司和牛人是谁,反正后来的腾讯百度都选了这个点,框架基本上也没区别。

精力有限,自己逆了hookport里的一部分,也实现了一部分。数字的实现里分了很多种情况,比如安全模式、各Windows版本,这里我只实现了XP上的一部分。

BOOL GetModuleInfo(char* lpModuleName, ULONG* pulImageBaseAddress, ULONG* pulImageSize);
ULONG EATHook(ULONG ulImageBase, ANSI_STRING* lpastrExportName, ULONG ulHookFunc, ULONG* pulOrgFuncRVA);
BOOL GetSSDTFunctions();
BOOL InitSSDTData();
BOOL AllocateSSDTMemory(DWORD dwServiceLimit);

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 5
支持
分享
最新回复 (25)
雪    币: 185
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
能求带么。。。 什么东西看不懂。
2013-9-25 16:36
0
雪    币: 58
活跃值: (72)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
3
有源码,难度也不是很大,相互学习。
2013-9-26 10:31
0
雪    币: 49
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
对网友再热情点  多发点好文  我支持你当斑竹
2013-9-26 10:55
0
雪    币: 350
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
看雪新人需要这样的正能量! 好多bz就知道bs新人或者说这个那个技术好老之类的话几年前玩过接着打酱油过了, 好多新人都会支持你当斑竹的 希望bz提拔有像民意党选举投票机制, 当然最后"最终解释权归xxx所有"
2013-9-26 12:18
0
雪    币: 257
活跃值: (67)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
路过。来看看
2013-9-26 12:57
0
雪    币: 58
活跃值: (72)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
7
谢谢支持,能力有限,但我会努力的。
2013-9-26 15:05
0
雪    币: 58
活跃值: (72)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
8
嗯,所以希望能为新手技术能力的提高尽点绵薄之力。
2013-9-26 15:07
0
雪    币: 183
活跃值: (55)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
9
看雪这样的人不多了(至少现在)
2013-9-27 01:53
0
雪    币: 60
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
支持,楼主的观点 很好,谢谢分享知识。
2013-9-27 09:01
0
雪    币: 63
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
mark,支持楼主
2013-9-27 09:13
0
雪    币: 8764
活跃值: (5240)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
12
mark,支持楼主
2013-9-27 09:46
0
雪    币: 3545
活跃值: (1872)
能力值: ( LV6,RANK:93 )
在线值:
发帖
回帖
粉丝
13
表示支持一个
2013-9-27 11:39
0
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
支持当bz
因为有热情
2013-9-27 12:34
0
雪    币: 19
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
15
楼主学java的吧。
2013-9-27 12:48
0
雪    币: 58
活跃值: (72)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
16
怎么说?
2013-9-27 13:17
0
雪    币: 43
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
留名备案
2013-9-27 14:59
0
雪    币: 437
活跃值: (78)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
楼主辛苦了
2013-9-27 17:11
0
雪    币: 61
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
mark
2013-9-27 21:39
0
雪    币: 217
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
支持楼主啊。
用这个能做一个串口监控的么?不占用串口的那种
2013-9-27 22:36
0
雪    币: 58
活跃值: (72)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
21
没仔细研究过,如果串口相关的例程经过KiFastCallEntry的话是可以的。
2013-9-28 09:13
0
雪    币: 246
活跃值: (17)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
有点深奥啊。。。木有什么看懂。。
2013-9-28 10:18
0
雪    币: 396
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
看的不是很明白啊,下下来好好研究啦
2013-9-28 17:39
0
雪    币: 124
活跃值: (469)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
24
支持一下
2013-9-28 23:17
0
雪    币: 261
活跃值: (547)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
25
代码还行  关键代码位置蓝屏 如何解决
2013-10-8 15:18
0
游客
登录 | 注册 方可回帖
返回
//