| 网站首页 | 范文 | 演讲致词 | 汇报体会 | 总结报告 | 公文方案 | 领导讲话 | 党建工会 | 论文 | 文档 | 书信 | 
您现在的位置: 范文大全网 >> 论文 >> 计算机论文 >> 正文 用户登录 新用户注册
Windows2003 内核级进程隐藏、侦测技术           
Windows2003 内核级进程隐藏、侦测技术
return ntstatus;
}
}
建立符号链接的作用就是暴露一个给应用程序的接口,应用程序可以通过createfile api打开链接符号,得到一个语柄,和我们的驱动程序进行交互操作。
3.unload例程
虽然各个驱动程序的unload例程不尽相同,但是它大致执行下列工作:
释放属于驱动程序的任何硬件。
从win32的名字空间移除符号连接名。
这个动作可以调用iodeletesymboliclink来实现。
使用iodeletedevice移除设备对象。
释放驱动程序持有的任何缓冲池等。
void driverunload ( in pdriver_object pdriverobject )
{
pdevice_object pnextobj;
// 循环每一个驱动过程控制的设备
pnextobj = pdriverobject->deviceobject;
while (pnextobj != null)
{
//从设备对象中取出设备extension
pdevice_extension pdevext = (pdevice_extension)extobj->deviceextension;
// 取出符号连接名
unicode_string plinkname = pdevext->ustrsymlinkname;
iodeletesymboliclink(&plinkname); //删除符号连接名
iodeletedevice(pnextobj); // 删除设备
pnextobj = pnextobj->nextdevice;
}
}
4. 派遣例程
win2000的i/o请求是包驱动的,当一个i/o请求开始,i/o管理器先创建一个irp去跟踪这个请求,另外,它存储一个功能代码在irp的i/o堆栈区的majorfield域中来唯一的标识请求的类型。majorfield域是被i/o管理器用来索引驱动程序对象的majorfunction表,这个表包含一个指向一个特殊i/o请求的派遣例程的功能指针,如果驱动程序不支持这个请求,majorfunction表就会指向i/o管理器函数_iopinvaliddevicerequest,该函数返回一个错误给原始的调用者。驱动程序的作者有责任提供所有的驱动程序支持的派遣例程。所有的驱动程序必须支持irp_mj_create功能代码,因为这个功能代码是用来响应win32用户模式的createfile调用,如果不支持这功能代码,win32程序就没有办法获得设备的句柄,类似的,驱动程序必须支持irp_mj_close功能代码,因为它用来响应win32用户模式的closehandle调用。顺便提一下,系统自动调用closehandle函数,因为在程序退出的时候,所有的句柄都没有被关闭。
static ntstatus mydrvdispatch (in pdevice_object deviceobject, in pirp irp)
{
ntstatus status;
pio_stack_location irpsp;
//得到当前irp (i/o请求包)
irpsp = iogetcurrentirpstacklocation( irp );
switch (irpsp->majorfunction)
{
case irp_mj_create:
dbgprint("irp_mj_create\n");
irp->iostatus.status = status_success;
irp->iostatus.information = 0l;
break;
case irp_mj_close:
dbgprint("irp_mj_close\n");
irp->iostatus.status = status_success;
irp->iostatus.information = 0l;
break;
}
iocompleterequest(irp, 0);
return status_success;
}
大部分的i/o管理器的操作支持一个标准的读写提取,irp_mj_device_control允许扩展的i/o请求,使用用户模式的deviceiocontrol函数来调用,i/o管理器创建一个irp,这个irp的majorfunction和iocontrolcode是被deviceiocontrol函数指定其内容。传递给驱动程序的ioctl遵循一个特殊的结构,它有32-bit大小,ddk包含一个方便的产生ioctl值的机制的宏,ctl_code。可以使用ctl_code宏来定义我们自己的ioctl。
例如:
#define ioctl_missledevice_aim ctl_code \
( file_device_unk

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

  • 上一个论文:

  • 下一个论文:


  • 看了《Windows2003 内核级进程隐藏、侦测技术》的网友还看了:
    [免费范文]LabWindows/CVI的应用特点
    [免费范文]基于RRAS与虚拟专用网技术在Windows中的实现
    [今日更新]巧用PowerPoint制作高中化学多媒体课件
    [今日更新]植树节英语作文:Planting Trees(植树)
    [今日更新]植树节英语作文:Planting Trees 植树
    [今日更新]基于WinCE的嵌入式网络通信系统设计
    [今日更新]基于McWill通信技术的油气智能测控系统
    [今日更新]Windows8是微软的翻身之战
    [今日更新]Windows8 LOGO发布,经典Windows LOGO回顾
    [今日更新]见招拆招 Win8使用无难题

    计算机论文
    普通论文国内外光纤光缆现状及发展趋势
    普通论文浅谈我国网络文化的现状及管理
    普通论文计算机网络管理维护探讨
    普通论文基于J2EE平台软件开发特点综
    普通论文Cisco路由器交换机的技术应用
    普通论文试论高职院校计算机应用基础课程
    普通论文虚拟专用网在企业中的应用
    普通论文试论中职学校《计算机应用基础》
    普通论文多媒体网络教学课件的优化设计
    普通论文试论青少年网络道德教育存在的问
    普通论文硬盘物理地址与逻辑地址的转换方
    普通论文论计算机网络管理技术初探
    论文
    普通论文[经济论文]浅谈新农村建设中农村公
    普通论文[经济论文]循环经济在煤矿企业修旧
    普通论文[今日更新]试论我国证券市场QFI
    普通论文[免费范文]街道办事处党工委书记XX
    普通论文[今日更新]新形势下农林院校物理学
    普通论文[免费范文]关于人力三轮车非法营运
    普通论文[今日更新]试论违反合作原则导致的
    普通论文[今日更新]论执政组织文化的内涵建
    范文大全
    普通范文[零八零一]环卫系统班长竞职演讲稿
    普通范文[范文大全]提升司法警察素质思考建
    普通范文[范文大全]对人事局干部作风建设的
    普通范文[先进性教育]保持*党员先进性教育心得
    普通范文[零八零一]-幼儿园宣传工作计划
    普通范文[先进性教育]党的先进性教育是具体的
    普通范文[范文大全]县贯彻落实《植物检疫条
    普通范文[范文大全]执法先进个人事迹材料
    演讲致词
    普通演讲[主持词]药监局创建和谐单位暨庆祝
    普通演讲[会议发言稿]中考百日誓师大会教师发言
    普通演讲[节日祝福语]中学生有关(Tomb
    普通演讲[主持词]庆国庆、贺中秋晚会主持词
    普通演讲[庆典致辞]护士节致词
    普通演讲[会议发言稿]在全县第二批先进性教育骨
    工作范文
    普通公文方案[企划方案]硬件展示策划书
    普通公文方案[公文写作]县级骨干教师述职报告(1)
    普通公文方案[公文写作]税务系统联欢会开场白
    普通汇报体会[征文演讲]2011年烟草企业三讲教育比
    普通公文方案[公文写作]幼儿园新教师成长计划
    普通总结[个人总结]电气试用期工作总结
    普通汇报体会[先进事迹材料]优秀教师推荐材料
    普通公文方案[公文写作]县运输管理所五整顿三加强
    普通总结[工作总结]推行校务公开制度工作总结
    普通党建工会[记要]小学体育教学个人工作总结
    普通总结[工作总结]县政协机关创建文明单位工
    普通汇报体会[先进事迹材料]镇纪检书记廉洁从政先进事