首页
社区
课程
招聘
已经hook了NtQuerySystemInformation,禁止程序例用这个函数获取任何信息,hook函数里要如何做?
发表于: 2010-11-13 18:46 4230

已经hook了NtQuerySystemInformation,禁止程序例用这个函数获取任何信息,hook函数里要如何做?

2010-11-13 18:46
4230
typedef NTSTATUS (__stdcall *P_NtQuerySystemInformation)(SYSTEM_INFORMATION_CLASS, PVOID, ULONG, PULONG);

P_NtQuerySystemInformation pNtQuerySystemInformation = NULL;

NTSTATUS __stdcall MyNtQuerySystemInformation(SYSTEM_INFORMATION_CLASS s, PVOID pData, ULONG ul, PULONG pLen)
{
        return STATUS_ACCESS_DENIED;
}

程序已经能进入到我的hook函数MyNtQuerySystemInformation里面了,我不想让程序用这个函数获取任何信息,要如何做?直接返回STATUS_ACCESS_DENIED会有内存访问错误,还需要做什么处理?

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

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 150
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
如果把hook函数改成下面这样,就完全正常了,但是等于什么都没做
NTSTATUS __stdcall MyNtQuerySystemInformation(SYSTEM_INFORMATION_CLASS s, PVOID pData, ULONG ul, PULONG pLen)
{
  return pNtQuerySystemInformation(s, pData, ul, pLen);
}
2010-11-13 21:26
0
雪    币: 517
活跃值: (84)
能力值: ( LV12,RANK:250 )
在线值:
发帖
回帖
粉丝
3
STATUS_UNSUCESSFULL
建议你最好回调的内部判断调用者,不要全都返回这个值,否则会出问题。
2010-11-14 20:20
0
雪    币: 150
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
发现了,全拦截程序都运行不了
2010-11-14 22:06
0
游客
登录 | 注册 方可回帖
返回
//