摘 要:主要研究自防御网络计划中的网络准入控制功能。介绍自防御网络的概念、功能以及处于自防御网络最前端的部分-客户端Agent的功能;自防御网络系统的设计方法。重点介绍客户端Agent的设计以及其各个组成模块的功能、设计方法。最后搭建测试环境并进行测试,测试结果均达到预期的效果。
关键词:自防御网络;网络准入控制;客户端Agent;系统安全
中图分类号:TP393.08 文献标识码:B
文章编号:1004-373X(2008)06-099-03
Research and Implementation of Client Agent in the Self-defending Network
FU Cuijiao
(School of Computer Science and Engineering,Beihang University,Beijing,100083,China)
Abstract:This paper mainly studies the Network Admittance Control (NAC) function in the self-defending network plan.It firstly discusses the conception of Self-defending Network (SDN),its function and the function of client Agent is in the front of SDN.Then introduces design method of SDN,specially introduces the design of client Agent and the function of its module.At last builds the test circumstance and carries out the test,the results are all satisfying.
Keywords:self-defending network;network admittance control;client Agent;system security
1 引 言
在互联网日益普及的今天,网络安全问题越来越多的受到网络工程师的重视。病毒、黑客以及各种系统漏洞的依然存在,使得安全任务在网络时代变得无比艰巨。怎样才能使网络得到真正的安全保障广泛关注的问题,主要是希望网络自身具有抵抗力,对一些外来的侵蚀有一种自然的抵抗。2004年3月15日,思科以第三代安全解决方案为体系框架,创新地提出了“自防御网络(Self Defending Network,SDN)”计划。这是一个多侧面、多阶段的安全计划,他能大大提高网络发现、预防和对抗安全威胁的能力[1]。于是人们开始把目光投向具有自防御能力的网络。
2 自防御网络
具有自防御能力的网络不但要具有保护网上主机系统、网上终端系统和网上应用系统的能力,关键是网络本身也具有自我保护能力、自我防御能力和自我愈合能力[2]。一旦受到网络蠕虫等病毒的侵扰或网络攻击时,能够快速反应。网络能够发现攻击、发现病毒、消除病毒在保护网络应用的同时,也保护了网络自身。
2.1 自防御网络系统的功能
本文主要研究自防御网络计划中的网络准入控制(Network Admittance Control,NAC)功能[3],他是自防御网络计划中的一部份。SDN的宗旨是防止病毒等新型黑客技术对局域网造成危害,设计目标是客户端只允许合法的、值得信任的端点设备(例如PC机)接入网络而不允许其他设备接入。当端点设备进入网络时,该系统可以根据所获得的终端信息,例如设备的当前防病毒状况以及操作系统补丁等信息,来实现对网络的准入控制[4]。本系统是由3部分组成,分别是客户端Agent边缘路由器和策略服务器。最前端是客户端Agent,负责搜集设备的当前防病毒状况以及操作系统补丁等信息,形成状态证书后向边缘路由器发送,边缘路由器向策略服务器转发该状态证书,策略服务器根据状态证书中的终端信息确定访问策略,并向边缘路由器转发该策略,边缘路由器执行该策略,实现准入控制。
2.1.1 客户端Agent的功能
客户端Agent处于该系统的最前端,发挥了非常重要的作用。Agent(代理)的意思就是代表其他设备执行功能,客户端Agent就是代表客户端完成自身安全状态的评估,并获得与之相应的接入网络的权限。具体来说就是扫描终端系统,获得操作系统版本信息、系统漏洞、系统补丁、系统修复信息、端口开放状态、系统是否安装了杀毒软件、杀毒软件是否进行了升级,扫描系统文件、内存RAM区、磁盘引导扇区,判断系统是否已经感染了病毒等,并把获得的系统信息形成状态证书后,向边缘路由器发送。总的来说,客户端Agent研究的焦点是:获得终端的OS信息,包括补丁和修复信息;加固终端,加强对攻击的抵抗力。
因此,客户端Agent非常重要,如果搜集的信息不准确,会导致策略服务器做出不正确的决策。过于保守的策略会导致不能访问一些资源,给用户带来不便,但过于开放的策略会导致局域网内多数机器感染病毒,从而失去自防御网络的意义,所以搜集的终端信息的准确性非常重要。同时客户端Agent应该能做到实时监测,在用户使用网络的过程中,终端本身的信息发生变化,随时都有可能感染病毒,如果客户端Agent没有搜集到这些变化的信息,系统还执行原来的策略,带来后果可想而知。
2.1.2 客户端Agent的设计思路
先对终端系统进行安全策略方面的配置和安全检测,然后通过改进的扫描算法,实现快速高效的扫描,对扫描的结果进行必要的分析后,形成状态证书,然后传给边缘路由器。在对系统是否感染病毒的扫描中,以蠕虫病毒为例进行研究,并且实现对某一种蠕虫病毒的查找。
2.2 自防御网络的设计
客户端Agent首先向边缘路由器发送认证请求,认证通过后,边缘路由器请求该代理传送终端信息;客户端Agent把从终端系统中获得的信息形成状态证书,通过边缘路由器转发给策略服务器,让策略服务器来决定终端接入网络的权限,其过程如图1所示。
其过程是:
(1) 客户端Agent首先向边缘路由器发送认证请求;
(2) 边缘路由器返回挑战字(CID);
(3) 客户端Agent把收到的CID和保存的密钥MD5加密[4]后,返回给边缘路由器;
(4) 边缘路由器请求该代理传送终端信息;
(5) 客户端Agent向边缘路由器发送终端信息;
(6) 边缘路由器向策略服务器转发该信息;
(7) 策略服务器检查状态证书中的终端信息,确定所授予的权限:正常、检查或隔离,然后向边缘路由器发送授权策略;
(8) 终端获得访问权限(被拒绝、被隔离、URL重定向)。
2.2.1 客户端Agent的结构设计
客户端Agent的作用是获得终端系统信息,形成状态证书后,发送给边缘路由器。客户端Agent系统主要包括5个模块:用户登录模块、系统信息获取模块、系统扫描模块、通信模块和系统自启动模块。因为主要功能是获得客户端的OS信息,所以系统信息获取模块、系统扫描模块是其核心部分。通信模块把用户登录模块、系统信息获取模块和系统扫描模块获得的终端信息按特定的格式汇总后,传给边缘路由器,并接收来自边缘路由器的授权通知信息,其流程如图2所示。
在该结构中,获得OS信息的功能主要由系统信息获取模块和系统扫描模块完成,这2个模块可以并发执行,没有先后之分。这样设计的目的是为了快速地获得系统信息,并且各模块之间相互独立,便于系统功能的扩展。
2.2.2 客户端Agent中各模块的功能
用户登录模块 主要实现用户通过输入用户名、密码接入网络,此时启动客户端Agent,用户退出系统时要断开连接。
系统信息获取模块 主要实现获得终端操作系统版本信息、系统漏洞、修复信息、系统补丁信息以及系统是否安装杀毒软件的信息。
系统扫描模块 主要包括系统扫描、端口扫描和加密扫描。
系统扫描 主要实现运用改进的特征码扫描算法[5],通过对系统中的文件进行查找和比较,获得系统是否感染病毒的安全信息[6],用户接入网络时在进行该扫描的同时也进行实时监测。
端口扫描主要采用TCP connect扫描[7]。通过进行端口扫描,获得端口的开放情况,从而在系统被攻击前得到一些警告和预报,并对相关的漏洞进行检测。
加密扫描 主要实现通过对客户端系统中的软件进行特殊的扫描加密方法,使攻击者不能通过“杀去”、“绕过”等修改程序的手段来绕过访问控制,从而避免由访问验证错误引起的漏洞。该扫描加密的过程是读取密码,然后读取密钥,对密码和密钥做运算,将运算结果拆分整合成数值和字符赋值给变量;上述变量作为后续程序中的参数、变元或“名”,运行后续程序;如果是合法密钥,则正常运行,产生正确的结果,如果是非法密钥,则出现运行错误,产生错误的或异常的结果[8]。通过防范漏洞从而加固终端,加强对攻击的抵抗力[9]。
通信模块 主要实现客户端Agent首先向边缘路由器发送认证请求,认证通过后,经边缘路由器的请求,客户端Agent把从终端系统中获得的信息进行加密后,形成状态证书,然后向边缘路由器发送,并等待接收来自边缘路由器转发的策略服务器的授权信息。根据授权信息限制终端接入网络的权限,并向用户提示。与边缘路由器的通信是通过EAP协议进行的[10]。
自启动模块 主要实现客户端Agent的自启动和自保护。当终端系统启动时自动运行客户端Agent,并且负责维护客户端Agent自身的安全,以免该代理自身遭到病毒的攻击。
2.3 系统测试
测试环境是开发网络环境基础上进行改进的,以避免外界网络数据和随机数据对测试结果的影响。主要的网络设备有:已经安装客户端Agent的客户端主机、专门开发的边缘路由器以及策略服务器。客户端Agent和边缘路由器用EAP协议进行认证通信,边缘路由器和策略服务器用RADIUS协议实现通信[11]。如图3所示。
(1) 客户端主机(运行客户端Agent):用户A和用户B, Windows XP平台。
(2) 网络接入设备(边缘路由器):采用了双网卡的一台主机,通过路由表的配置实现2个网段的互通访问;并根据策略服务器返回的终端用户访问请求结果,执行策略服务器制定的策略。IP地址采用192.168.0.1/202.112.138.30。
(3) 策略服务器:制定网络准入控制的策略,他主要完成对用户身份认证和访问控制的功能。策略服务器同样采用1台运行有相应软件的主机来实现,属于内部网络。IP地址采用192.168.0.254。
(4) Quidway S2016交换机:用来连接内部网络中的2台主机。在理论环境中,并不需要这一连接设备,但在实际的系统实现中,自防御网络边缘路由设备是一台运行有相应软件的计算机,所以必须通过此交换机进行多台计算机的连接。
(5) 外网用户C:在测试过程中充当NAC的被访问者和网络攻击的发起者角色。
(6) 更新服务器:为未通过接入认证的主机提供相应更新的设备。
分别对改进的特征码扫描技术、对系统的扫描效率、对客户端端口的开放情况以及准入控制功能进行测试,并对测试结果和已有技术的所得结果进行比较。结果表明整个自防御网络的功能及其客户端Agent的功能均达到预期的效果。一台主机和多台主机的认证情况都得到了验证。
3 结 语
通过对自防御网络中客户端Agent的研究,探索自防御网络的开发技术,设计出可以提供客户端安全状态信息和操作系统状态信息,进而获得相应访问权限的客户端Agent,实现网络准入控制的功能。客户端Agent无论在扫描操作系统信息的速度上,还是在查找病毒的准确方面都达到同类软件的性能,并且通过防范访问验证错误引起的漏洞,加固了终端。自防御网络与其他网络系统的不同之处在于他是一种集成化的系统,可以从多个位置保护网络,是一种创新的、多点的、综合的和主动的网络安全构架[12]。
参考文献
[1]浩男.思科SDN从理念迈向应用 NAC产品正式面市[J].信息网络安全,2004(8):59-60.
[2]唐卫.自防御网络+SAFE解决方案[CD2]思科为电力客户全力打造安全网络[J].电力信息化,2006,4(9):33-34.
[3]Rhonda Heldman Raider.全新安全战略[CD2]自防御网络[J].计算机安全,2005(4):29-31.
[4]RFC1994,PPP Challenge Handshake Authentication Protocol(CHAP)[S].IETF,1996.
[5]《黑客防线》编辑部.黑客防线[CD2] 2005精华奉献本(下)[M].北京:人民邮电出版社,2005.
[6]赵治国,谭敏生,李志敏,等.基于免疫原理的层次入侵检测模型[J].计算机工程与设计,2007,28(4):803-807.
[7]张玉清,戴祖锋,谢崇斌.安全扫描技术[M].北京:清华大学出版社,2004.
[8]汪文虎.一种信息安全方法:中国,011321660.[P].2004-2-25.
[9]傅翠娇,曹庆华.计算机网络系统安全漏洞的研究[J].2006,29(1):65-68.
[10]RFC2284,PPP Extensible Authentication Protocol (EAP)[S].IETF,1998.
[11]RFC2865,Remote Authentication Dial In User Service (RADIUS)[S].IETF,2000.
[12]姚文琳,辛颖秀.自防御网络安全架构的研究与应用[J].现代制造工程,2006,(6) :61-64.
作者简介 傅翠娇 女,山东郓城人,助教。主要从事计算机网络安全方面的研究工作。
相关热词搜索: 防御 客户端 研究 网络 Agent