首页
社区
课程
招聘
[原创]汇编与驱动-绕过SSDT保护进程
发表于: 2012-7-10 18:05 9415

[原创]汇编与驱动-绕过SSDT保护进程

2012-7-10 18:05
9415

汇编与驱动-绕过SSDT保护进程

这篇帖子是紧接上一篇“汇编与驱动-采用SSDT Hook NtOpenProcess保护进程”帖子的,需要用到他的例子

还是以郁金香驱动教程为例:021课_绕过驱动保护,这里郁金香老师没给原代码,只能看视频。
其中关键的代码,也就是写入 jmp的代码如图:


原理是声明2个 _JMPCODE的结构,_JMPCODE如下:

typedef struct _JMPCODE
{
	BYTE E9;
	ULONG JMPADDR;//88881234=B
}JMPCODE,*PJMPCODE;
NTSTATUS VK_WriteSSDT(ULONG WriteAddr, ULONG  JmpAddr)
{
	ULONG JmpCode= JmpAddr - WriteAddr -5;				//得到要写入的跳转地址码
	DbgPrint("要写入的地址为:%x\n", JmpCode);
	_asm
	{
		pushad
			cli		
			mov	eax, cr0
			and	eax, 0FFFEFFFFh
			mov  cr0, eax
			
			mov	eax, JmpCode
			mov	ebx, WriteAddr
			mov	[ebx], 0E9h
			inc	ebx
			mov	[ebx], eax

			mov eax, cr0
			or	eax, 10000h
			mov	cr0, eax
			sti

		popad
	}
	return STATUS_SUCCESS;
}

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 6
支持
分享
最新回复 (5)
雪    币: 165
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
这个产业的广告真多
2012-7-10 18:22
0
雪    币: 659
活跃值: (499)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
3
你认为这是广告?
不知其他人如何学习驱动的,我是用郁金香的教程入门的,尽管我用的是破解版的,因为实在付不起那个钱,但是我很感激他
2012-7-10 18:27
0
雪    币: 1895
活跃值: (1622)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
4
郁金香的代码真心的难看。
2012-7-10 20:02
0
雪    币: 506
活跃值: (70)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
不是广告,我也看过哈。
,,,
2012-7-10 20:20
0
雪    币: 22
活跃值: (443)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
楼主辛苦了 回去试验下其他函数。
2012-7-11 10:03
0
游客
登录 | 注册 方可回帖
返回
//