随着信息化时代的到来,人们对信息的依赖越来越强,网络信息安全问题就显得非常重要. 为了更好地加强网络信息安全,有效降低人员工作强度,适应网络安全、稳定、可靠、经济运行的要求,研究开发一个适应日常网络信息安全检查和评估的程序十分重要.
1、 网络安全评估现状
1. 1 传统的评估方法
传统网络安全检查和评估方法主要以人工的方式进行,评估的方法有下列几种:
(1) 通过查看网管信息,了解网络的连通性,获取网络流量、负荷等信息;(2) 通过登入网络设备对网络配置和动态性能参数进行查看,并人工确认信息的正确性;(3) 查看网络日志发现网络存在的隐患.
1. 2 存在的主要问题
传统的网络安全检查和评估方法存在以下不足:(1) 检查过程比较繁琐,加大了工作人员的工作量,容易产生漏查、错查等情况,达不到全面检查的效果;(2) 对检查人员技能要求较高,检查人员需要具有较强的专业知识,熟悉设备的操作方法;(3) 需要反复输入命令,造成时间的浪费,工作效率低下;(4) 无法对所检查的信息进行整理和保存,不利于障碍的排除和后期的查看.
2、 解决方案
本项目以网络管理的实际工作为出发点,紧跟现代信息技术的步伐,利用 Java 技术,建立客户端/服务器(C/S) 的界面,根据日常维护的具体要求,实现静态数据分析、动态性能参数检查等功能,并且针对不同网络设备可以按要求自主设置检查模板,同时具备导出相应分析报告的功能.
2. 1 设计思路
采用 Java + Swing 技术,开发客户端操作界面,具备静态数据分析和动态数据分析等功能的操作界面; 在总结、归纳大量的配置检查规则的基础上,设计多个规则模版,确保检查的正确性.
2. 2 技术架构和原理分析
采用 Java 语言来开发系统软件,使用 C /S 架构来搭建系统程序,可以方便操作人员使用.[7](1) 硬件结构 包括交换机、局域网内的 PC机客户端. PC 机建议配置: CPU 为 P4 2. 6 GHz 及以上,内存为 512 M 及以上.(2) 应用软件 Minitool; 编程语言为 Java和 xml.(3) 开发工具 myeclipse6. 5; 操作系统为Window s 2003.具体技术架构如图 1 所示.
(1) 静态分析 利用 I/O 工作流对已经生成的信息文件进行读取,并利用已设定的分析规则对文件进行检查,在程序中显示检查的具体内容和正确性,根据需要手动导出结果报告. 静态分析流程如图 2 所示.
(2) 动态分析 采用多线程连接终端设备,在程序中显示设备的连接状况和运行状况,可以手动停止程序的运行,其中包括连接测试和分析两个主要功能. 连接测试是指对每个设备进行连接,测试结束后制定目录自动生成测试结果; 分析是指在测试完成后对每个设备的制定规则进行分析,并在结束后导出分析结果. 动态分析流程如图3 所示.
(3) 制定规则 操作员可以在该功能中指定检查项目名称和检查要求,并对每个检查要求的具体操作规则进行添加,将其保存在已经创建好的 xml 文件中,也可指定 xml 文件对其内容进行增、删、改、查;(4) 模板管理 利用可视化界面对保存在特定文件夹下面的配置文件进行创建和删除的操作.3、 程序功能及界面简介。
静态分析是对已经导出为 txt 文件格式的设备信息进行分析,通过导入设备信息文件选择相应的检查模板,点击开始按钮即可自动检测信息文件的安全程度,并动态地显示在输出框内,如图 4 所示. 其右上角用仪表盘形象化地显示了评估分数,目的是检查现有设备的信息安全程度.通过图 4 的导出按钮可以将分析完成的结果导入 Excel 文件中,可方便查看打印或者保存,如图 5 所示.动态分析是利用远程登入方式(ssh 或者telnet) 对设备进行实时的连接和分析,输入文件可以选择事先预设好的远程设备、用户名密码等信息的文件,输出路径可以选择分析结果数据保存的位置,然后选择连接模式和分析模板对设备进行动态分析,其目的是可以实时地连接远程设备,并通过预设的条件对其进行安全评估.
针对某一个具体模板中各种检查项的操作,则可以选中检查项,按删除检查项按钮进行删除,也可以对具体检查项内容进行设置,如设置项目名称、要求等,并且可以选择添加至某个模板. 对具体检查项可以进行添加、重置、撤销和更新操作: 添加是向检查项中加入一则新的规则; 重置是对当前检查项进行清除; 撤销是消除最后添加的规则; 而更新是对修改完的检查项进行更新,其目的是为了增、删、改具体的检查条目,并添加至相应的检查模板.4、 系统比较。
传统的安全评估方法: 大都是人工对设备进行信息安全评估; 检查模板较少,只能进行少部分的信息检查; 检测内容不够灵活,导致错误评估的出现.本系统在总结传统的安全评估方法不足基础上,进行完善和创新. 本系统主要对模板的设计和制定进行了多方面创新. 首先,可以对某一类的检查进行归纳,例如设备 CPU 的运行状况、温度的高低等,都可以归在同一类模板中,系统对创建的模板进行保存,便于下次直接调用. 其次,在传统的软件中,有些自动检查内容不够灵活,碰到特殊的情况,会检测不到所需要的信息,甚至会错误地反馈信息. 例如要检测端口信息,只要检测其中打开的端口,而对于关闭的端口就不必检测,这在一般的评估软件中很难判断哪些端口是关闭的. 本系统针对这些情况,对检查的内容进行分步操作,利用 Java 字符串可拼接的特点对每条检查内容进行分割,提取其中的关键字符串,并对其前后进行限制,使其成为一个基本的、唯一的关键字符串. 这些由多个关键字步骤组成的完整的检查项目可以大大地提高准确率,而且添加关键字组成的检查条目可以灵活地确定所要检查的内容,去除不必要的选项. 最后,本系统通过 C /S 界面的方式可以形象化地对各个模板及其检查项目进行添加、删除、修改等操作,并为每个检查条目设定分值,以便在导出报告和静态分析中更好地确定评估结果.本系统的特点如下:(1) 图形化操作,方便简单;(2) 采用多线程技术,可以同时交替进行多个流程,提高了流畅性;(3) 运用 xml 技术,对程序配置进行了保存,使操作更加简便;(4) 使用 ssh 和 telnet 技术,实现了远程登入;(5) 生成日志文件,方便系统异常查看;(6) 数据自动分析,减少了工作量,提高了维护的准确性和安全性.
5、 结语
随着信息技术的不断发展,提高信息的安全性已经越来越受到人们的重视. 鉴于传统的检查方式无法满足现在的需求,本文提出的基于程序的网络安全检查很好地弥补了传统检查方式的不足,相信在未来的一段时间内,这种对于信息安全检查的软件会发挥越来越重要的作用.
参考文献: [1] 周学广. 信息安全学[M]. 北京: 机械工业出版社,2003:24-32. [2] 吴欣阳. 基于 SOA 的电力系统 IT 运维的新思路[EB /OL]. [3] 张咏梅. 用户交换机的使用环境及相关维护日志分析[J].电力系统通信,2004(2) : 23-27. [4] Eric. Java 编程思想[M]. 第 4 版. 北京: 机械工业出版社,2007. [5] 王宏宇,贾仰理. Java 面向对象程序设计[M]. 北京: 中国人民大学出版社,2009. [6] 吕校春. 基于 Swing 的 JavaGUI 组件开发[J]. 机械工程师,2008(6) : 4-10. [7] 刘腾红,孙细明. 信息系统分析与设计[M]. 北京: 科学出版社,2007: 7-13.