一种借助USB设备启动在Windows操作系统中嵌入内核驱动程序的方法技术方案

技术编号:2918142 阅读:310 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及计算机安全领域,具体的说是提供了一种在Windows操作系统中嵌入内核驱动程序的方法。本发明专利技术包括一个USB设备,一段存放在USB设备O扇区的加载程序,一段存放在USB设备隐藏扇区的用于示范的内核驱动程序;当计算机从USB设备启动时,BIOS将加载程序读入内存执行。加载程序通过修改内存中的数据把用于示范的内核驱动程序嵌入Windows操作系统。本发明专利技术设计新颖,在启动过程中将内核驱动程序嵌入Windows操作系统,不需要复制内核驱动程序到硬盘上,也不需要修改硬盘上的注册表;具有隐蔽性,不需要在硬盘上保存内核驱动程序。

【技术实现步骤摘要】

本专利技术涉及计算机安全领域,具体的说是提供了一种在Windows操作系统中嵌入内核驱动程序的方法。
技术介绍
将内核驱动程序嵌入Windows操作系统的普遍做法是通过安装程序把内核驱动程序拷贝到系统目录下并且修改注册表。这种方法修改了注册表和文件系统,即使以后从注册表中和文件系统中删除这些修改,但是本地硬盘仍然会保留修改过的痕迹;拷贝驱动程序和修改注册表会覆盖硬盘上原有扇区中的数据,造成硬盘上数据的改变。在计算机犯罪取证等应用场合,需要把内核驱动程序嵌入Windows操作系统中以完成某些特定功能,但硬盘上的数据不允许被修改。所以,我们需要一种不用修改硬盘扇区数据就能把内核驱动程序嵌入Windows操作系统的方法。
技术实现思路
本专利技术的目的在于提供一种在Windows操作系统中嵌入内核驱动程序的方法。本专利技术的技术方案是:包括一个USB设备,一段存放在USB设备0扇区的加载程序,一段存放在USB设备隐藏扇区的用于示范的内核驱动程序;当计算机从USB设备启动时,BIOS将加载程序读入内存执行;加载程序通过修改INT13H的中断服务程序来监控计算机对硬盘的读写;当Windows操作系统通过INT13H来读取注册表时,加载程序调用原始的INT13H中断服务程序读取硬盘上的注册表到内存,并在内存中修改读取的内容,让Windows操作系统加载一个硬盘上并不存在的内核驱动程序;当Windows操作系统通过INT13H来读取该内核驱动程序时,加载程序把读操作-->重定向到USB设备,读取存放在USB设备隐藏扇区的用于示范的内核驱动程序,从而把用于示范的内核驱动程序嵌入Windows操作系统。加载程序通过修改内存中的数据将用于示范的内核驱动程序嵌入Windows操作系统,不需要改动硬盘上的数据。用于示范的内核驱动程序的功能可以根据具体需求而改变。当计算机从USB设备启动时,BIOS把存放在USB设备0扇区的加载程序读入内存并执行。加载程序通过修改INT13H的中断服务程序来监控计算机对目标硬盘的读写。加载程序完成修改后,把硬盘0扇区的内容读入内存0000:7C00并执行,从硬盘上启动Windows操作系统。在随后的启动过程中,硬盘上的Windows引导程序(Osloader.exe)通过INT13H读取注册表信息和文件系统信息。加载程序监测到引导程序对注册表的读写,调用原始的INT13H中断服务程序读取硬盘上的注册表到内存,并在内存中修改读取的内容,让引导程序加载一个硬盘上并不存在的内核驱动程序。当引导程序通过INT13H来读取该内核驱动程序时,加载程序把读操作重定向到USB设备,读取存放在USB设备隐藏扇区上的用于示范的内核驱动程序。至此,引导程序获得了用于示范的内核驱动程序的内容,并根据注册表的指示将它装入Windows操作系统。用于示范的内核驱动程序工作在Windows操作系统内核比一般的应用程序拥有更高的权限,其功能可以根据具体需求而改变。例如,用于示范的内核驱动程序嵌入网络驱动层次监控该计算机处理的网络数据,或者嵌入文件系统对某类型的文件进行加密和解密等等。本专利技术的有益效果是:1)设计新颖。在启动过程中将内核驱动程序嵌入Windows操作系统,不需要复制内核驱动程序到硬盘上,也不需要修改硬盘上的注册表。2)具有隐蔽性。不需要在硬盘上保存内核驱动程序。附图说明图1-USB设备扇区的使用示意图;图2-从USB启动的工作流程图。具体实施方式-->下面结合附图和具体实施方式对本专利技术作进一步详细描述。本专利技术不仅限于以下实施例,凡是利用本专利技术的设计思路,做一些简单变化的设计都应进入本专利技术的保护范围之内。USB设备作为加载程序和用于示范的内核驱动程序的载体,如图1。加载程序存放在USB设备的0扇区,用于示范的内核驱动程序存放在USB设备的隐藏扇区。USB设备进行普通的数据拷贝使用正常分区,即图1中USB数据区。Windows操作系统的内核驱动程序分为总线驱动程序,功能驱动程序,过滤驱动程序几类。总线驱动程序具有负责枚举总线上连接设备,如USB总线驱动程序(usbhub.sys),PCI总线驱动程序(pci.sys);Windows也支持虚拟总线驱动程序用于管理虚拟设备。功能驱动程序完成某类设备的功能,如磁盘驱动程序(disk.sys)等。过滤驱动程序一般辅助功能驱动程序完成某些特殊的功能,比如分区管理程序(partmgr.sys)等。前两类驱动程序一般由Windows操作系统提供,在Windows操作系统源代码没有公开的情况下很难被修改;然而,Windows操作系统允许开发者嵌入过滤驱动程序来该变功能驱动程序的某些行为。以下示范把内核驱动程序(demon.sys)作为磁盘存储过滤驱动程序嵌入Windows操作系统。Windwos操作系统启动时需要很多初始化数据,这些数据保存在注册表中。系统启动时,引导程序读取注册表来完成初始化操作。加载程序监控引导程序对注册表和文件系统的读操作,在内存中修改引导程序读取的数据。HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class\\{4D36E967-E325-11CE-BFC1-08002BE10318本文档来自技高网...

【技术保护点】
一种借助USB启动在Windows操作系统中嵌入内核驱动程序的方法,其特征在于:包括一个USB设备,一段存放在USB设备0扇区的加载程序,一段存放在USB设备隐藏扇区的用于示范的内核驱动程序;当计算机从USB设备启动时,BIOS将加载程序读入内存执行;加载程序通过修改INT13H的中断服务程序来监控计算机对硬盘的读写;当Windows操作系统通过INT13H来读取注册表时,加载程序调用原始的INT13H中断服务程序读取硬盘上的注册表到内存,并在内存中修改读取的内容,让Windows操作系统加载一个硬盘上并不存在的内核驱动程序;当Windows操作系统通过INT13H来读取该内核驱动程序时,加载程序把读操作重定向到USB设备,读取存放在USB设备隐藏扇区的用于示范的内核驱动程序,从而把用于示范的内核驱动程序嵌入Windows操作系统。

【技术特征摘要】
1. 一种借助USB启动在Windows操作系统中嵌入内核驱动程序的方法,其特征在于:包括一个USB设备,一段存放在USB设备0扇区的加载程序,一段存放在USB设备隐藏扇区的用于示范的内核驱动程序;当计算机从USB设备启动时,BIOS将加载程序读入内存执行;加载程序通过修改INT13H的中断服务程序来监控计算机对硬盘的读写;当Windows操作系统通过INT13H来读取注册表时,加载程序调用原始的INT13H中断服务程序读取硬盘上的注册表到内存,并在内存中修改读取的内容,让Windows操作系统加载一个硬盘上并不存在的内核驱动程序;当Windows操...

【专利技术属性】
技术研发人员:谭毓安王佐
申请(专利权)人:北京理工大学
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1