APP下载

一种加强网络服务器安全防护的方法

2019-01-2291977部队崔振利

网信军民融合 2018年12期
关键词:网络连接驱动程序网卡

◎91977部队 崔振利

一、引言

网络服务器是用来提供一定网络服务的计算机,和个人用计算机在使用方面有较大区别,服务器通常24小时不关机,正常工作情况下一般无人对其进行操作。木马是黑客用来远程控制计算机的软件工具,由于网络服务器具有24小时不关机且通常无人操作特性,所以网络服务器是黑客比较喜欢远程控制的机器。提高网络服务器安全,防止网络服务器被黑客攻击利用,是关系到单位甚至是国家安全的重要问题。

二、木马控制及防御

(一)常见网络攻击与木马控制方法

网络服务器对外开监听端口提供网络服务。网络端口相当于单位的门户,门户提供人员物品出入,端口提供网络数据出入。黑客获得计算机的控制权,即网络入侵,通常有两种方式,主动攻击和被动攻击。主动攻击包括端口扫描、口令探测、漏洞溢出等多种方式,漏洞溢出是比较常见且有效的一种网络攻击方式,通过网络端口向目标计算机发送特殊处理过的网络数据,目标计算机在处理网络数据时,特殊构造的网络数据利用计算机漏洞获得执行,进而获得计算机控制权限。被动攻击是通过向目标发送包含木马病毒的电子邮件、或者发送指向包含木马病毒网站的网络连接等方式,当人们不小心运行电子邮件中包含的木马病毒或者点击含有病毒的网络连接,如计算机存在漏洞、且没有安装杀毒软件或杀毒软件功能不完善时,计算机即可被木马控制。

木马会在被控制计算机和控制计算机之间建立一个网络连接,通常是TCP连接,木马控制人员通过该连接向被控制计算机发送网络数据,木马解析后,完成文件传输、执行命令、屏幕察看等操作。功能完善的木马,能够完成计算机本地能够完成的几乎所有操作,且这些操作通常是在计算机后台完成的,即使有人正在操作此计算机也不易察觉。

杀毒软件能够查杀大部分木马病毒,但特殊制作的木马软件,杀毒软件往往不能发现。网络防火墙一般对外部进入内部的网络数据包过滤严格,对由内向外的数据包过滤不严格。功能完善的木马一般采用http隧道技术,将网络数据包封装成http数据格式,网络防火墙一般难以识别拦截。

木马控制是通过建立被控制计算机和控制计算机之间的网络连接实现的,根据TCP连接发起方不同,可分成正向连接和反向连接两种。正向连接是木马软件在被控制计算机开监听端口,黑客在自己的计算机运行木马控制端,直接向监听端口发起连接。反向连接是黑客在自己的计算机或黑客控制的某台计算机上开监听端口,木马向该端口建立网络连接。网络连接建立后,黑客即可远程操控目标计算机。目前主流木马通常采用反向连接方式。

(二)阻止木马控制的一种方法

黑客实现远程控制计算机的主要环节有两个,一是成功网络入侵,再一个是建立网络连接实现远程控制。网络入侵方式很多,难以杜绝,防护手段主要有杀毒软件、防火墙、入侵检测等。这里从另一环节入手,阻止木马与外部建立网络连接。

网络安全配置思想是开放最小的网络权限,即如果该网络服务器是用来提供网页浏览服务的,则只对外开放80端口即可,其它端口都不应该对外提供。Windows默认对外提供135、139、445端口,这几个端口提供远程登录、网络共享、网上邻居等功能,同时给计算机安全带来极大隐患,弱口令扫描曾经是黑客获取肉鸡的一个重要手段。目前许多杀毒软件都自动屏蔽这几个端口,网络服务商一般也在交换机等核心位置过滤这些端口数据。

由于操作系统设计的目的是方便网络连接,所以从不禁止计算机向外发起网络连接。如果计算机不能对外发起连接,则人们将不能执行上网浏览网页等各项操作。网络服务器对外开放特定端口提供网络服务,一般无人操作,是可以禁止其对外发起网络连接的。如果能够利用技术手段禁止网络服务器对外发起网络连接,则反向连接功能木马就不能与外部建立网络连接,服务器即使中了木马,黑客也无法对其远程控制。

三、网络过滤驱动

(一)过滤驱动

驱动程序通常实现对某硬件设备的支持,驱动在功能上往往是分层的,最底层驱动与硬件直接相关,上一层驱动再与底层驱动交互,还可以存在更上一层驱动。过滤驱动是在不影响上层和下层接口的情况下,在Windows系统内核中加入新的层,从而不需要修改上层的软件或者下层的真实驱动程序,就加入了新的功能。通常根据其目的意义进行命名,插入在文件操作驱动之间的叫做文件过滤驱动,插入在磁盘操作驱动之间的叫磁盘过滤驱动,插入在网络驱动之间的叫做网络过滤驱动。

过滤驱动能够获得上层发往下层的数据,处理后再发送给下层,能够获得下层发送到上层的数据,处理后再发送给上层。过滤驱动的下层一定是驱动,上层可以是驱动,也可以是应用程序。所谓处理可以是加密、解密,也可以是通过、丢弃,还可以是伪造欺骗,可根据开发需求实现。

(二)网络过滤驱动

网络最底层的驱动是网卡驱动,再上一层是集中各个网卡驱动的小端口驱动,微软命名为miniport驱动,再上层是网络协议层驱动。微软提供两种类型网络过滤驱动,分别叫TDI过滤驱动和NDIS过滤驱动。

TDI全称Transport Driver Interface,它指的是WindowsNT操作系统中各种运输层协议(如UDP、TCP等)与接收软件之间的接口层。从TDI驱动插入位置看,比较接近应用层,对应用层控制容易实现,对较底层监控不容易实现。

NDIS全称Network Driver Interface Specification,是网络驱动程序接口规范的简称。它横跨传输层、网络层和数据链路层,定义了网卡或网卡驱动程序与上层协议驱动程序之间的通信接口规范,屏蔽了底层物理硬件的不同,使上层的协议驱动程序可以和底层任何型号的网卡通信。NDIS为网络驱动程序创建了一个完整的开发环境,只需调用NDIS函数,而不用考虑操作系统的内核以及与其他驱动程序的接口问题,从而使得网络驱动程序可以从与操作系统的复杂通讯中分离,极大地方便了网络驱动程序的编写。另外,利用NDIS的封装特性,可以专注于一层驱动的设计,减少了设计的复杂性,同时易于扩展驱动程序栈。

四、利用网络过滤驱动实现端口过滤

制作基于NDIS的网络过滤驱动,过滤规则为:对网卡接收到的数据包,非TCP格式包直接丢弃,对TCP格式包,判断其接收端口是否为设定端口,如果是设定端口则正常通过,否则丢弃。对发往网卡的数据包,非TCP格式包直接丢弃,对TCP格式包,判断其发送端口是否为设定端口,如果是设定端口则正常通过,否则丢弃。

由上边过滤规则可以看出,网络服务器提供的正常服务不受影响,但服务器对外发起网络连接是允许的,本地的其它端口也不能接收到网络数据。

设定端口可以是多个,如一台服务器同时提供网页服务和数据库访问,则可以设定开放网页服务80端口和数据库对应端口。如果想保留网上邻居等功能,可以开放139、445端口,网络服务商一般在核心交换机过滤这些端口数据,能够阻止外网远程登录。这里建议遵循开放最小网络权限原则,开放最少的网络端口。

五、与硬件防火墙比较

硬件防火通常价格较高,不是所有单位网络都配备有硬件防火墙。

硬件防火墙配置比较复杂,安装使用后,网络正常情况下一般不再对其进行配置。

硬件防火墙可以对单个IP进行配置,但通常不这么做。配置某个IP,所有该IP向外发起的TCP连接全部禁止,外部只能与该IP特定端口建立连接,这样就实现了本过滤驱动功能。

本过滤驱动相当于软件防护墙,设定端口即可,安装配置方便。计算机安装本过滤驱动后,计算机不能向外发起网络连接,用户不能用该计算机浏览网页、下载电子邮件,同样情况,即使该计算机中了木马,木马也不能与外部建立网络连接,即该计算机不再被木马网络控制。

六、结语

LWF(Lightweight Filter)驱动是微软Windows操作系统NDIS 6.0 引入的一种新型网络过滤驱动。LWF驱动具有更加出色的平台兼容性,甚至可以支持Windows 10,因此成为微软力荐的网络驱动实现方式,并且由此得到广泛的应用。由于本网络过滤驱动过滤规则简单,安装该过滤驱动后,对网速无影响。

硬件网络防火墙,难以做到对每台机器的网络过滤设置,即使能够做到,木马还可以通过迂回方式,利用内部机器作为跳板,间接与该服务器建立网络连接,实现对该网络服务器的控制。通过在网络服务器安装端口过滤驱动,该过滤驱动相当于软件防火墙,可以阻止该服务器向外主动建立网络连接,也能阻止外部发往木马的网络连接,即使服务器中运行有木马程序,该服务器也不能被远程控制。当然该系统并不能阻止所有木马控制,端口复用技术以及网页木马,能够绕过该端口防护措施。该种服务器保护方式部署成本低,安装方便,应大力推广使用。

猜你喜欢

网络连接驱动程序网卡
在DDS 中间件上实现双冗余网卡切换的方法
个性化设置 Win10 的网络连接信息
运动想象的大尺度动态功能网络连接
Server 2016网卡组合模式
计算机硬件设备驱动程序分析
挑战Killer网卡Realtek网游专用Dragon网卡
中小型网络组建技术
读编往来
基于MPC8280的CPU单元与内部总线驱动程序设计
妙用鼠标驱动