发明内容
本发明要解决的技术问题是提供一种控制病毒访问网络的方法及装置,能够在病毒不影响网络上其他计算机的前提下,对病毒访问网络的行为进行控制。
为解决上述技术问题,本发明的实施例提供技术方案如下:
一方面,提供一种控制病毒访问网络的方法,包括:
接收病毒客户端的对内部网络进行访问的访问请求;
判断所述访问请求是否为允许的访问行为;
在所述访问请求为允许的访问行为时,将所述访问请求发送给内部网络。
进一步地,上述方案中,所述判断所述访问请求是否为允许的访问行为具体为:
根据预设的配置文件判断所述访问请求是否为允许的访问行为。
进一步地,上述方案中,所述配置文件中包括有预设协议类型、预设进程、预设IP地址和端口、预设规则,所述根据预设的配置文件判断所述访问请求是否为允许的访问行为包括:
在所述访问请求为预设协议类型的访问请求;或
所述访问请求为预设进程发送的访问请求;或
所述访问请求为预设IP地址和端口发送的访问请求;或
所述访问请求的数据格式符合预设规则时,判断所述访问请求为允许的访问行为。
进一步地,上述方案中,所述配置文件中包括有预设后门协议类型,所述根据预设的配置文件判断所述访问请求是否为允许的访问行为包括:
在所述访问请求为预设后门协议类型的访问请求时,判断所述访问请求为允许的访问行为。
进一步地,上述方案中,所述将所述访问请求发送给内部网络之后还包括:
监控所述病毒客户端与其对应服务器之间的连接是否有效;
在所述连接失效时,按照预设后门协议类型构建控制指令,并将所述控制指令发送给所述病毒客户端。
本发明实施例还提供了一种控制病毒访问网络的装置,包括:
接收模块,用于接收病毒客户端的对内部网络进行访问的访问请求;
判断模块,用于判断所述访问请求是否为允许的访问行为;
发送模块,用于在所述访问请求为允许的访问行为时,将所述访问请求发送给内部网络。
进一步地,上述方案中,所述判断模块具体用于根据预设的配置文件判断所述访问请求是否为允许的访问行为。
进一步地,上述方案中,所述配置文件中包括有预设协议类型、预设进程、预设IP地址和端口、预设规则,
所述判断模块具体用于在所述访问请求为预设协议类型的访问请求;或
所述访问请求为预设进程发送的访问请求;或
所述访问请求为预设IP地址和端口发送的访问请求;或
所述访问请求的数据格式符合预设规则时,判断所述访问请求为允许的访问行为。
进一步地,上述方案中,所述配置文件中包括有预设后门协议类型,
所述判断模块还用于在所述访问请求为预设后门协议类型的访问请求时,判断所述访问请求为允许的访问行为。
进一步地,上述方案中,所述装置还包括:
监控模块,用于在所述发送模块将所述访问请求发送给内部网络之后,监控所述病毒客户端与其对应服务器之间的连接是否有效;
指令构建模块,用于在所述连接失效时,按照预设后门协议类型构建控制指令,并将所述控制指令发送给所述病毒客户端。
本发明的实施例具有以下有益效果:
上述方案中,在接收到病毒客户端的访问请求后,对访问请求进行判断,在该访问请求为允许的访问行为时,将访问请求发送给内部网络,本发明的技术方案能够在病毒客户端的访问请求不影响网络上其他计算机的情况下,放行病毒的网络访问请求,以便触发后续的病毒行为。
具体实施方式
为使本发明的实施例要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明的实施例针对现有技术中防火墙在禁止病毒访问网络后,不能捕捉到病毒后续的行为,从而监控不到相应的病毒行为,无法对病毒进行进一步地分析的问题,提供一种控制病毒访问网络的方法及装置,能够在病毒不影响网络上其他计算机的前提下,对病毒访问网络的行为进行控制。
图1为本发明实施例的控制病毒访问网络的方法的流程示意图,如图1所示,本实施例包括:
步骤101:接收病毒客户端的对内部网络进行访问的访问请求;
步骤102:判断访问请求是否为允许的访问行为;
步骤103:在访问请求为允许的访问行为时,将访问请求发送给内部网络。
本发明实施例的控制病毒访问网络的方法,接收到病毒客户端的访问请求后,对访问请求进行判断,在该访问请求为允许的访问行为时,将访问请求发送给内部网络,本发明的技术方案能够在病毒客户端的访问请求不影响网络上其他计算机的情况下,放行病毒的网络访问请求,以便触发后续的病毒行为。
在本发明另一实施例中,包括上述步骤101-103的基础上,其中,步骤102具体为:
根据预设的配置文件判断访问请求是否为允许的访问行为。
其中,配置文件中可以包括有预设协议类型、预设进程、预设IP地址和端口、预设规则,根据预设的配置文件判断访问请求是否为允许的访问行为具体可以包括:
在访问请求为预设协议类型的访问请求;或访问请求为预设进程发送的访问请求;或访问请求为预设IP地址和端口发送的访问请求;或访问请求的数据格式符合预设规则时,判断访问请求为允许的访问行为。
进一步地,上述方案中,配置文件中还可以包括有预设后门协议类型,根据预设的配置文件判断访问请求是否为允许的访问行为具体包括:
在访问请求为预设后门协议类型的访问请求时,判断访问请求为允许的访问行为。
进一步地,在访问请求为预设后门协议类型的访问请求时,将访问请求发送给内部网络之后还包括:
监控病毒客户端与其对应服务器之间的连接是否有效;
在连接失效时,按照预设后门协议类型构建控制指令,并将控制指令发送给病毒客户端。
这样在识别出预设的后门协议后,可模拟病毒客户端对应的服务器来向病毒客户端发送控制指令,触发病毒对应的行为,以便记录相应的信息。
本发明实施例还提供了一种控制病毒访问网络的装置,如图2所示,本实施例包括:
接收模块20,用于接收病毒客户端的对内部网络进行访问的访问请求;
判断模块21,用于判断访问请求是否为允许的访问行为;
发送模块22,用于在访问请求为允许的访问行为时,将访问请求发送给内部网络。
进一步地,上述方案中,判断模块21具体用于根据预设的配置文件判断访问请求是否为允许的访问行为。
进一步地,上述方案中,配置文件中包括有预设协议类型、预设进程、预设IP地址和端口、预设规则,判断模块21具体用于在访问请求为预设协议类型的访问请求;或访问请求为预设进程发送的访问请求;或访问请求为预设IP地址和端口发送的访问请求;或访问请求的数据格式符合预设规则时,判断访问请求为允许的访问行为。
进一步地,上述方案中,配置文件中包括有预设后门协议类型,判断模块21还用于在访问请求为预设后门协议类型的访问请求时,判断访问请求为允许的访问行为。
进一步地,上述方案中,控制病毒访问网络的装置还包括:
监控模块,用于在发送模块将访问请求发送给内部网络之后,监控病毒客户端与其对应服务器之间的连接是否有效;
指令构建模块,用于在连接失效时,按照预设后门协议类型构建控制指令,并将控制指令发送给病毒客户端。
本发明实施例的控制病毒访问网络的装置,在接收到病毒客户端的访问请求后,对访问请求进行判断,在该访问请求为允许的访问行为时,将访问请求发送给内部网络,能够在病毒客户端的访问请求不影响网络上其他计算机的情况下,放行病毒的网络访问请求,以便触发后续的病毒行为。本发明实施例还可以在识别出预设的后门协议后,模拟病毒客户端对应的服务器来向病毒客户端发送控制指令,触发病毒对应的行为,以便记录相应的信息。
下面结合图3以及具体的实施例对本发明的控制病毒访问网络的方法及装置进行详细介绍:
首先,在病毒客户端的访问请求进入内部网络之前,需要对病毒客户端的访问请求进行拦截。具体地,本发明实施例可以采用传输层驱动程序接口(TDI)过滤技术实现对访问请求的拦截,在虚拟机等环境中,本发明的控制病毒访问网络的装置会安装网络驱动,该网络驱动会绑定到网络传输层设备服务上,用于拦截病毒客户端的所有网络请求。执行代码如下:
需要监控的病毒客户端在控制病毒访问网络的装置的监控下,能够正常运行,接收模块在拦截到病毒客户端的访问请求后,首先阻塞该访问请求,之后根据预先定义好的配置文件对访问请求进行判断,根据配置文件中设置的规则判断是否放行本次访问请求。本发明实施例中,若遇到无法识别的数据或会对内部网络上其他计算机造成影响的访问请求,将不会对其放行,将其拦截在内部网络外。执行代码示例如下:
是否放行访问请求、允许访问的标准为,是否对内部网络上其他计算机造成影响,若无影响,则放行访问请求,允许访问。配置文件中可以包括有预设协议类型、预设进程、预设IP地址和端口、预设规则,在访问请求为预设协议类型的访问请求;或访问请求为预设进程发送的访问请求;或访问请求为预设IP地址和端口发送的访问请求;或访问请求的数据格式符合预设规则时,放行该次访问请求。
具体地,HTTP(hypertext transport protocol,超文本传输协议)协议的下载请求和DNS((Domain Name System,域名***)协议的请求可以放行,对于TCP(Transmission Control Protocol,传输控制协议)和UDP(User DatagramProtocol,用户数据报协议)协议的访问请求,进行数据格式匹配判断是否放行;另外还可以判断发送访问请求的IP和端口是否是非法的,是否是***信任的;还可以发送访问请求的进程是否为特殊的允许访问的可信进程。执行代码示例如下:
进一步地,配置文件中还可以包括有预设后门协议类型,这样在拦截到访问请求时,会对特定的后门协议的访问请求进行识别,预设后门协议比如流行的灰鸽子后门,上兴远控等等。在识别出预设后门协议的访问请求后,会放行访问请求,并继续监控病毒客户端的后续行为,若监控到病毒客户端与病毒服务器之间的连接失效,本发明的控制病毒访问网络的装置将获取访问请求的后门协议类型,并模拟病毒服务器收发数据,如判断出病毒客户端发送的访问请求为采用灰鸽子后门协议,控制病毒访问网络的装置会按照灰鸽子后门协议规则构建数据包(如数据包内容偏移0x40上的一个DWORD值,内容为0x1表示对内部网络截图然后上传,0x2表示对内部网络进程快照然后上传),并将这些数据包作为控制指令发送给病毒客户端,以便触发后续的病毒行为。
本发明的技术方案可应用在网络防火墙中,还可以应用于分析病毒行为的***中,控制病毒访问网络的行为,拦截病毒的访问请求,判断是否会对内部网络的其他计算机造成影响,如果会造成影响则禁止访问;如果不会造成影响,则放行访问请求,允许访问内部网络。并且对于采用后门协议的访问请求,在病毒客户端与病毒服务器之间的连接失效时,能够模拟病毒服务器端向病毒客户端发送控制指令,触发病毒的完整行为。
此说明书中所描述的许多功能部件都被称为模块,以便更加特别地强调其实现方式的独立性。
本发明实施例中,模块可以用软件实现,以便由各种类型的处理器执行。举例来说,一个标识的可执行代码模块可以包括计算机指令的一个或多个物理或者逻辑块,举例来说,其可以被构建为对象、过程或函数。尽管如此,所标识模块的可执行代码无需物理地位于一起,而是可以包括存储在不同物理上的不同的指令,当这些指令逻辑上结合在一起时,其构成模块并且实现该模块的规定目的。
实际上,可执行代码模块可以是单条指令或者是许多条指令,并且甚至可以分布在多个不同的代码段上,分布在不同程序当中,以及跨越多个存储器设备分布。同样地,操作数据可以在模块内被识别,并且可以依照任何适当的形式实现并且被组织在任何适当类型的数据结构内。所述操作数据可以作为单个数据集被收集,或者可以分布在不同位置上(包括在不同存储设备上),并且至少部分地可以仅作为电子信号存在于***或网络上。
在模块可以利用软件实现时,考虑到现有硬件工艺的水平,所以可以以软件实现的模块,在不考虑成本的情况下,本领域技术人员都可以搭建对应的硬件电路来实现对应的功能,所述硬件电路包括常规的超大规模集成(VLSI)电路或者门阵列以及诸如逻辑芯片、晶体管之类的现有半导体或者是其它分立的元件。模块还可以用可编程硬件设备,诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备等实现。
在本发明各方法实施例中,所述各步骤的序号并不能用于限定各步骤的先后顺序,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,对各步骤的先后变化也在本发明的保护范围之内。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。