如何做好信息系统上线前安全测试.docx
- 文档编号:8290147
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:6
- 大小:21.51KB
如何做好信息系统上线前安全测试.docx
《如何做好信息系统上线前安全测试.docx》由会员分享,可在线阅读,更多相关《如何做好信息系统上线前安全测试.docx(6页珍藏版)》请在冰豆网上搜索。
如何做好信息系统上线前安全测试
如何做好信息系统上线前安全测试
陈威1,季佳育2,王刚1
【摘要】摘要:
提出一种信息系统上线前安全测试理论,包括测试策略、测试流程、测试方法、测试项目等,为建立一套可操作性强的安全测试提供了基础。
【期刊名称】华北电力技术
【年(卷),期】2011(000)012
【总页数】5
【关键词】关键词:
信息系统上线前;安全测试;测试流程;信息安全
2009年,华北电网有限公司开始开展信息系统的上线前安全测试工作,这种安全测试是在一套信息系统正式运行前进行的。
进行这项工作时,常常被问到这样一个问题:
在做测试过程中,我们的信息系统在安全性方面考虑了多少?
应该如何测试一个即将上线的信息系统到底有多安全?
由于被测的信息系统涉及公司重要的信息资料,因此公司领导层关心的核心问题是“这个信息系统是否安全”。
一个由于设计导致的安全漏洞和一个由于操作系统或数据库配置导致的安全漏洞,由此引发的信息安全问题,对于公司的最终影响都是巨大的。
这项测试工作的任务就是确保这些上线前的应用系统在安全性方面能满足公司的期望。
信息系统的构成具有一定的复杂性,其上线前的安全测试存在着很大的挑战。
信息系统的上线前安全测试在华北电网公司内部还处在探索阶段。
信息系统的上线前安全测试是对即将上线运行的信息系统进行安全测试,使其满足公司的信息安全标准。
在以前的单机时代,安全问题主要是计算机病毒发作等情况,单机运行的信息系统的安全问题并不突出。
但是自从互联网普及后,信息系统安全问题愈加凸显,使得信息系统的上线前安全测试的重要性上升到一个前所未有的高度。
1信息系统上线前安全测试框架
应对一个复杂的信息系统的上线前安全测试,需要从各个方面进行考量和分析。
从制定什么样的测试策略,如何对被测系统做到深入了解,决定使用何种测试技术和工具,到规范测试过程,归纳总结出测试结果,每一步都要做出细致的分析与实践,以达到测试结果的客观准确性。
1.1制定测试策略
测试安全策略的制定是指在考虑测试目的、成本与效益、风险控制等要素基础上,做出的开展测试活动的相关策略,旨在解决有关测试的原则性问题,例如有什么要测、什么不测等。
根据实际测试内容,应考虑测试项的数量和很多测试时需考虑的因素。
测试项包括账号安全、权限策略、日志配置等;测试因素包含实施测试的目的、当前状况、操作步骤、回退方案等。
1.2深入了解被测信息系统
分步骤了解被测系统的情况的基本步骤:
(1)初步了解。
根据被测系统所属部门填写的《测试申请表》,初步了解被测系统的概况。
通过与系统实施人员的沟通可以帮助了解系统基本情况;
(2)运用一些系统信息收集工具(包括系统和网络两种收集工具),根据扫描结果和申请表填写的内容,两者进行比较;
(3)登录被测系统进行信息收集,通过安全远程访问,登录系统进行信息最后的认定。
在对系统信息进行分析后,确定测试的内容,以及采用什么样的方法进行测试,才能比较完整、确切地反应出被测系统在上线前的安全性。
1.3测试的技术和工具
在对被测目标有了深入了解后,确定选取何种测试技术和工具成为了工作的重点。
由于信息系统的安全性涉及面很广,如操作系统层面、数据库层面及WEB应用层面等,所以要决定在进行上线前安全测试时,须采用哪些工具。
在目前的工作中,将根据被测信息系统所运行的平台进行分类,共分成Windows操作系统类、UNIX操作系统类等,通过不同平台采用不同的测试工具,建立各平台的工具集合。
测试技术方面,将采用白盒、黑盒、灰盒测试技术[1](白盒测试在被测信息系统的信息都是已知的情况下进行;黑盒测试是以局外人的身份使用一些攻击工具来探查系统地内部信息;使用信息系统的信息并结合黑盒测试技术进行的是灰盒测试)对系统进行测试。
1.4规范测试过程
为进行实际的信息系统上线前的安全测试工作,必须严格规范测试过程。
测试包括测试申请、被测试系统分析、制定测试计划、选择测试工具、现场测试(记录)、测试结果、整改意见、整改结果复查等方面。
测试申请是指系统实施单位提供的书面测试申请。
被测系统分析是指通过申请表中填写的被测系统相关基本信息、与系统实施人员的交流了解到的信息、使用信息收集工具收集的相关信息和登录系统采集的信息客观、准确、完整地反映信息系统当前的安全状态;制定测试计划需要明确测试的范围、对象、项目等;选择测试工具是指根据对被测试系统的分析结果选择适当的测试工具;测试记录是整个测试工作的关键,它不但能帮我们透彻地分析当前系统的安全性,还能实现整个测试过程的可追溯性;测试结果是指通过分析测试记录得出的结论;整改意见是指对被测系统的一些安全隐患提出的帮助性意见;整改结果复查是指对已被查出的安全隐患进行复查。
通过以上各项工作,全面覆盖管理和技术方面,以保证测试的公正性、真实性、可重复性。
综上所述,信息系统上线前的安全测试所涉及的各个因素之间的关系如图1所示。
2测试工作开展与考虑因素
信息系统上线前的安全测试,在开展这项工作前应考虑以下几方面因素。
2.1保密因素
信息系统上线前的安全测试,被测系统的信息、资料应给予保密,不得向第三方提供,必要时应签订保密协议。
2.2安全需求因素
按照公司对信息系统的等级要求[2],提供不同等级的上线前安全测试。
2.3测试对系统的影响因素
工作中应考虑对信息系统将要产生的影响,对测试操作带来的风险进行有效地控制,如在测试前预计测试影响、制定合理的回退方案或补救措施等。
如果测试项影响到系统的正常运行,须提前与系统实施人员协商,是否要继续进行。
测试时间应考虑选择在无人使用、且系统资源利用率低的时间段。
在测试结束后,应确保系统恢复到正常工作的状态。
2.4测试成本因素
通常在测试工作中,应考虑到测试工作涉及面广等特点,测试项目的选用应与测试等级挂钩,如所有系统采用同一种项目集合进行测试,将会造成人力和资源的浪费。
3信息系统安全问题分析
信息系统安全包含很多方面,主要的安全问题是由信息系统本身的漏洞造成的。
2009年开始,新信息系统上线安全测试工作开展以来,共测试26套系统,均存在不同程度的安全隐患,下面是测试过程中遇到的一些系统安全性缺陷和漏洞。
3.1缓冲区溢出
缓冲区溢出已成为信息系统安全的头号公敌,许多实际中的安全问题都与它有关。
造成缓冲区溢出问题通常有以下两种原因。
(1)设计空间的转换规则的校验问题。
即缺乏对可测数据的校验,导致非法数据没有在外部输入层被检查出来并丢弃。
非法数据进入接口层和实现层后,由于它超出了接口层和实现层的对应测试空间或设计空间的范围,从而引起溢出。
(2)局部测试空间和设计空间不足。
当合法数据进入后,由于程序实现层内对应的测试空间或设计空间不足,导致程序处理时出现溢出。
实际工作中,缓冲区溢出问题出现主要表现在Windows系列操作系统没有安装修复缓冲区溢出漏洞的补丁(如MS08-067等),该类问题出现的比率为35%(如图2所示)。
3.2口令强度[3]
口令强度,我们在这里关心的是信息系统中的口令。
口令就是进入系统的钥匙,而弱口令则很容易被他人猜到或破解,轻而易举地进入系统。
在实际测试中主要测试弱口令的原则有:
(1)使用空口令或系统缺省的口令,因为这些口令众所周知,为典型的弱口令;
(2)口令长度小于8个字符;
(3)口令使用连续的某个字符(例如:
AAAAAAAA)或重复某些字符的组合(例如:
tzf.tzf.)。
强壮的口令应该为以下四类字符的组合,大写字母(A-Z)、小写字母(a-z)、数字(0-9)和特殊字符(!
@#MYM%^&*()-_=+-[]{};:
'"<>,.?
/~'),每类字符至少包含一个。
如果某类字符只包含一个,那么该字符不应为首字符或尾字符,并且做到至少90天内更换一次口令,防止未被发现的入侵者继续使用该口令。
在完成测试的26套系统中,出现弱口令的多为使用系统缺省密码的案例(如图2所示)。
3.3错误处理
一般情况下,错误处理都会返回一些信息给用户,返回的出错信息可能会被恶意用户利用来进行攻击,恶意用户能够通过分析返回的错误信息知道下一步要如何做才能使攻击成功。
如果错误处理时调用了一些不该有的功能,那么错误处理的过程将被利用。
错误处理属于异常空间内的处理问题,异常空间内的处理要尽量简单,使用这条原则来设计可以避免这个问题。
但错误处理往往牵涉到易用性方面的问题,如果错误处理的提示信息过于简单,用户可能会一头雾水,不知道下一步该怎么操作。
所以,在考虑错误处理的安全性的同时,需要和易用性一起进行权衡。
实际测试工作中发现,需要进行相关WEB应用信息系统测试的共有7套,其中有5套应用系统出现过度返回错误信息的现象(如图2所示)。
3.4权限过大
如果赋予过大的权限,就可能导致只有普通用户权限的恶意用户利用过大的权限做出危害安全的操作。
例如没有对能操作的内容做出限制,就可能导致用户可以访问超出规定范围的其他资源。
进行上线前安全性测试时必须测试应用程序是否使用了过大的权限,重点要分析在各种情况下应该有的权限,然后检查实际中是否超出了给定的权限。
权限过大问题本质上属于设计空间过大问题,所以在设计时要控制好设计空间,避免设计空间过大造成权限过大的问题。
实际测试工作中发现,需要进行相关WEB应用信息系统测试的共有7套,其中有3套应用系统出现操作系统管理员可以管理WEB应用程序的现象(如图2所示);需要进行相关数据库测试的共11套,其中有4套系统中存在操作系统管理员可以管理数据库的现象(如图2所示)。
4测试项目
以Windows系列操作系统和Oracle数据库为例,讨论一下在具体测试工作中的内容。
4.1Windows系列操作系统
在实际的操作过程中,我们会发现Windows系列操作系统在默认设置下,会存在一定的安全隐患。
系统安全是网络安全的基础防线,操作系统安装完成后,已经通过默认的安全模板进行了安全设置,但是要使该系统更加安全必须对其进行加固。
除了必要的漏洞修复、补丁安装之外,密码管理和NTFS权限应用等将是保护系统安全的基本措施。
信息系统上线前的安全测评工作中所要进行的主要测试项是Windows操作系统账号认证、日志、协议、补丁升级、文件系统管理等方面的安全配置要求。
4.2Oracle数据库
Oracle数据库以其优异的性能在各个领域得到广泛应用。
但由于计算机软硬件故障、口令泄密、黑客攻击等等因素,都可导致数据库系统不能正常运转,造成大量数据信息丢失,数据被恶意篡改,甚至使数据库系统崩溃。
忽视Oracle数据库的安全问题,必将给用户带来巨大的损失。
如何保证数据库的安全运行是数据库管理员日常工作中的首要问题。
下面提出几条防范措施供大家参考。
(1)用户角色的管理与口令保密
这是保护数据库系统安全的重要手段之一。
它通过建立不同的用户组和用户口令验证,可以有效地防止非法的Oracle用户进入数据库系统,造成不必要的麻烦和损失;另外在Oracle数据库中,可以通过授权来对Oracle用户的操作进行限制,即允许一些用户可以对Oracle服务器进行访问,也就是说对整个数据库具有读写的权利,而大多数用户只能在同组内进行读写或对整个数据库只具有读的权利。
在此,特别强调对SYS和SYSTEM两个特殊账户的保密管理。
Oracle的数据库管理员都知道,数据库系统典型安装后,一般sys和system以及internal这3个用户具有默认的口令,数据库安装成功后,系统管理员作的第一件工作就是修改这些用户的口令,保证数据库的安全性。
为了加强数据库在网络中的安全性,对于远程用户,应使用加密方式通过密码来访问数据库,加强网络上的DBA权限控制,如拒绝远程的DBA访问等。
(2)数据保护
数据库的数据保护主要是数据库的备份,当计算机的软硬件发生故障时,利用备份进行数据库恢复,以恢复破坏的数据库文件或控制文件或其他文件。
另一种数据保护就是日志,Oracle数据库实例都提供日志,用以记录数据库中所进行的各种操作,包括修改、调整参数等,在数据库内部建立一个所有作业的完整记录。
再一个就是控制文件的备份,它一般用于存储数据库物理结构的状态,控制文件中的某些状态信息在实例恢复和介质恢复期间用于引导Oracle数据库。
5测试流程
一个规范的流程,对于整个测试过程具有指导性意义,研究测试流程是很重要的,它规范了整个安全测试的过程,便于项目管理、控制等。
测试一般分3个阶段:
测试前分析准备阶段、现场测试阶段和数据汇总分析评价阶段。
具体流程如图3所示。
在整改测试过程中,现场测试的内容是最重要的,它主要分为两个部分:
安全配置检查和渗透性安全测试。
5.1安全配置检查
安全配置检查是指检查系统各配置是否符合安全要求,即各安全策略是否得到实现。
其检测范围包括网络层面、主机系统层面、应用层面。
(1)网络层面,主要是检测路由器、交换机等网络设备和防火墙、入侵检测系统等安全设备的安全配置情况。
(2)主机系统层面,主要是检测操作系统补丁安全情况、账号和密码管理情况、文件访问控制、通信协议、审计策略、安装防病毒情况等。
(3)应用层面,应该按照应用系统的不同特征进行测试项目的选择,该项测试具有特殊性,应考虑保证应用系统数据安全。
5.2渗透性安全测试
渗透性安全测试是从信息系统的外部或内部进行模拟渗透性攻击测试,主要测试信息系统对内外部所暴露的脆弱性。
第一阶段,如果该测试系统位于外网或内外网(使用内外网隔离装置隔离),需从Internet远端对被测系统进行渗透性测试;该测试系统位于内网,需从内网远端对测试系统进行渗透测试,这时的测试属于黑盒测试。
第二阶段,使用系统分析结果,对被测系统进行远端渗透性测试,这时的测试属于白盒测试。
第三阶段,在被测系统内部,将分析结果和渗透性测试结合,这时的测试属于灰盒测试。
6结束语
通过两年的信息系统上线前安全测试实践工作,初步领会了该项工作的重点、难点、要点,发现建立一套信息系统上线安全测试理论,既满足了公司信息安全需求,又将测试工作规范化,实现测试项目的可操作性。
严格按照ISO9000质量管理体系要求,保证测试数据的保密性、完整性、可用性。
通过工作中的实践,总结出的这套理论,相信在今后的工作得以应用并不断的改进,并且将这一理论深化到其他测试工作中去。
参考文献
[1]ChrisWysopal.TheArtofSoftwareSecurityTesting[M].[S.L.]:
AddisonWesley,2007.
[2]GB/T22239—2008,信息安全技术信息系统安全等级保护基本要求[S].
[3]Strongpasswords:
Howtocreateandusethem.[2005-11-30].http:
∥
【文献来源】
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 如何 做好 信息系统 上线 安全 测试