一种基于Windows操作系统的U盘PE格式文件病毒的拦截方法与流程

文档序号:21888924发布日期:2020-08-18 17:38阅读:516来源:国知局
一种基于Windows操作系统的U盘PE格式文件病毒的拦截方法与流程

本发明属于计算机网络安全管理技术领域,特别是涉及一种基于windows操作系统的u盘pe格式文件病毒的拦截方法。



背景技术:

windows操作系统可以通过平台提供的接口,实现系统内核层文件访问的监控操作。

pe格式为windows可执行文件格式,u盘和网络共享为病毒的主要传播途径,病毒感染前,病毒通常识别文件是否为pe格式,如果符合格式则感染,并执行文件改写操作来完成病毒传播。

程序启动时,程序系统监控接口获取的操作进程名为文件进程名,由于病毒感染时操作进程名会写入其他可执行文件,因此被打开文件名和打开进程文件名不同。本方法通过判断被打开文件名和打开进程文件名是否相等,检测是否有病毒感染行为,实现对u盘病毒的高效拦截。



技术实现要素:

本发明的主要目的在于提供一种基于windows操作系统的u盘pe格式文件病毒的拦截方法,该方法适用于windows各平台操作系统,通过windows操作系统文件过滤驱动技术将防护拦截程序与系统的文件打开接口挂钩,从而实现文件访问监控,杜绝计算机感染病毒,有效保障终端系统安全。

为了达到上述目的,本发明所采用的技术方案如下:

一种基于windows操作系统的u盘pe格式文件病毒的拦截方法,包含以下步骤:

a.通过windows操作系统文件过滤驱动技术设定将防护拦截程序挂钩被保护的终端计算机系统的文件打开接口;

b.防护拦截程序拦截所有文件打开操作,获取打开操作所携带的输入参数;

所述打开操作所携带的输入参数包括被打开文件的文件路径名、文件属性对象地址、当前进程id;

c.防护拦截程序通过打开操作所携带的输入参数转换为文件打开操作的基本信息;

所述文件打开操作的基本信息包括被打开文件路径名、访问进程文件路径名、文件访问属性;

通过当前进程id,获取访问进程所在的文件路径名;

通过文件属性对象地址,获取所包含的文件访问权限,文件访问权限包括读、写;

d.防护拦截程序判断文件访问属性,如果文件访问属性中包含写权限,继续执行步骤e;如果文件访问属性中不包含写权限,则执行步骤h;

e.防护拦截程序判断被打开文件的文件类型;

所述文件类型包括可执行文件、非可执行文件;

防护拦截程序读取被打开文件的头部信息,判断被打开文件是否为pe格式,如果被打开文件为pe格式,则判断被打开文件为可执行文件,继续执行步骤f;如果被打开文件为非pe格式,则判断被打开文件为非可执行文件,执行步骤h;

f.防护拦截程序判断被打开文件是否需要保护;

通过文件打开操作的基本信息,判断被打开文件是否需要保护,如果被打开文件路径名和访问进程文件路径名相等,则判定不需保护,执行步骤h;如果被打开文件路径名和访问进程文件路径名不相等,则判定被打开文件需要设定保护,继续执行步骤g;

g.设定文件保护;

防护拦截程序修改被打开文件的文件打开操作的基本信息中的文件访问属性,去掉文件访问属性中的写权限,并将去掉写属性的文件访问属性更新到打开操作所携带的输入参数的文件属性对象地址中;

h.执行文件操作;

防护拦截程序将被打开文件的文件打开操作的基本信息中的文件访问属性返回给操作系统;

所述被保护的终端计算机利用windows操作系统文件过滤驱动技术,监控可执行文件的打开操作,执行步骤b。

本发明的方法与现有方法对比的有益效果是:

良好的系统兼容性,支持所有windows操作系统。

具备较强的病毒免疫功能,可以保护文件不被可执行文件传染型病毒传染。

防护措施对系统性能损失较小。传统杀毒软件需要识别pe头之后,根据大量病毒库识别是否有病毒才能判断是否允许程序运行,而使用本发明的保护方法后,只需要根据可执行文件写入其他文件的感染动作,确定是否为感染行为,性能大幅度提升。

附图说明

图1为本发明的基于windows操作系统的u盘pe格式文件病毒的拦截方法的流程图。

具体实施方式

下面结合附图和实施例,对本发明的基于windows操作系统的u盘pe格式文件病毒的拦截方法做进一步详细描述。

实施例

例如,操作系统为windows7的终端计算机pc1上打开c:\windows\system32路径下的可执行文件notepad.exe,同时终端计算机pc1上j:\temp路径下的virus.exe文件将要对可执行文件notepad.exe执行感染操作,本发明的基于windows操作系统的u盘pe格式文件病毒的拦截方法,具体包括如下步骤:

a.通过windows操作系统文件过滤驱动技术设定将防护拦截程序挂钩被保护的终端计算机系统的文件打开接口;

通过windows操作系统文件过滤驱动技术调用注册过滤器,设定将防护拦截程序挂钩终端计算机pc1的windows7操作系统的文件打开接口;

b.防护拦截程序拦截所有文件打开操作,获取打开操作所携带的输入参数;

所述打开操作所携带的输入参数包括被打开文件的文件路径名、文件属性对象地址、当前进程id;

防护拦截程序拦截到终端计算机pc1上打开文件notepad.exe的操作,获取到打开操作所携带的输入参数;

终端计算机pc1上打开文件notepad.exe的操作的打开操作所携带的输入参数包括被打开文件的文件路径名为c:\windows\system32\notepad.exe、文件属性对象地址为0x89953000、当前进程id为7568;

c.防护拦截程序通过打开操作所携带的输入参数转换为文件打开操作的基本信息;

所述文件打开操作的基本信息包括被打开文件路径名、访问进程文件路径名、文件访问属性;

通过当前进程id,获取访问进程所在的文件路径名。

通过文件属性对象地址,获取所包含的文件访问权限,文件访问权限包括读、写;

防护拦截程序获取到终端计算机pc1上被打开文件的路径名为c:\windows\system32\notepad.exe;

防护拦截程序通过当前进程id为7568,获取到终端计算机pc1上打开进程文件路径名为j:\temp\virus.exe;

防护拦截程序通过文件属性对象地址为0x89953000,获取到终端计算机pc1上被打开的可执行文件notepad.exe的文件访问权限为读写;

d.防护拦截程序判断文件访问属性,如果文件访问属性中包含写权限,则继续执行步骤e,如果文件访问属性中不包含写权限,则执行步骤h;

防护拦截程序判断终端计算机pc1上被打开的文件notepad.exe的文件访问属性包含写权限,继续执行步骤e;

e.防护拦截程序判断被打开文件的文件类型;

所述文件类型包括可执行文件、非可执行文件;

防护拦截程序读取被打开文件的头部信息,判断被打开文件是否为pe格式,如果被打开文件为pe格式,则判断被打开文件为可执行文件,继续执行步骤f,如果被打开文件为非pe格式,则判断被打开文件为非可执行文件,执行步骤h;

防护拦截程序读取到终端计算机pc1上被打开的文件notepad.exe的头部信息为mz开头,各节格式与pe格式相符,判断终端计算机pc1上被打开的文件notepad.exe的格式为pe格式,因此判断终端计算机pc1上被打开的文件notepad.exe为可执行文件,继续执行步骤f;

f.防护拦截程序判断被打开文件是否需要保护;

防护拦截程序通过文件打开操作的基本信息,判断被打开文件是否需要保护,如果被打开文件路径名和访问进程文件路径名相等,则判定不需保护,执行步骤h,如果被打开文件路径名和访问进程文件路径名不相等,则判定被打开文件需要设定保护,继续执行步骤g;

防护拦截程序通过终端计算机pc1上打开notepad.exe可执行文件操作的基本信息中的被打开文件路径名c:\windows\system32\notepad.exe和进程打开文件路径j:\temp\virus.exe判断二者不相等,因此判定终端计算机pc1上被打开的可执行文件notepad.exe需要设定保护,继续执行步骤g;

g.设定文件保护;

防护拦截程序修改被打开文件的文件打开操作的基本信息中的文件访问属性,去掉文件访问属性中的写权限,并将去掉写属性的文件访问属性更新到打开操作所携带的输入参数的文件属性对象地址中;

防护拦截程序去掉终端计算机pc1上被打开可执行文件notepad.exe的基本信息中的文件访问属性中的写权限,并将删除了写权限的文件访问属性更新到终端计算机pc1上可执行文件notepad.exe的打开操作所携带的输入参数的文件属性对象地址0x89953000中;

h.执行文件操作;

防护拦截程序将被打开文件的文件打开操作的基本信息中的文件访问属性返回给操作系统;

所述被保护的终端计算机利用windows操作系统文件过滤驱动技术,监控可执行文件的打开操作,执行步骤b。

防护拦截程序将读取到的终端计算机pc1上被打开可执行文件notepad.exe的文件访问只读属性返回给终端计算机pc1的操作系统执行后续文件打开操作;

终端计算机pc1的打开进程j:\temp\virus.exe根据文件访问属性只读执行文件访问操作,病毒的写入传播操作由于文件访问属性被防护拦截程序拦截并更改为只读,所以病毒写入传播操作被禁止。终端计算机pc1利用windows操作系统文件过滤驱动技术,监视终端计算机pc1的操作系统的可执行文件的打开操作,执行步骤b。

本发明与现有方法对比如下:

以系统每天5万次文件访问为例,现有技术中扫描文件比对病毒库是否带病毒每次需要10毫秒,因此,每天的系统资源消耗为10*50000=500000毫秒。本发明的方法由于不扫描文件是否有病毒,根据传播行为做合法性判断,所需要的系统资源为0.001毫秒,本发明的方法每天的系统资源消耗小于50毫秒。

根据病毒传染的行为特征,实现对病毒传染的防控机制,可以有效解决被病毒感染问题,加强计算机系统的安全性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1