【IT168技术】随着电子商务、电子政务的发展,越来越多的重点单位和企业在安全上投入了巨大的精力和资金,但有时候用户会有这样的感受:当基本的软硬件设施配置好之后,安全防卫水平就到了一个相对的瓶颈,再加大投入并不能明显提高安全水平。实际上,这种“安全玻璃天花板”在很多行业和企业中都存在,近期兴起的“渗透测试”成为了解决这个问题的新角度之一。
渗透测试是一种全新的安全防护思路,将安全防护从被动转换成了主动。正是因为看到了这一点,很多重点行业的企业越来越多地通过独立的第三方安全机构来进行“渗透测试”,以求更好的安全防护效果。
据瑞星安全专家介绍,早在二三十年前,渗透测试曾经在整个安全界风行一时,但在后来也遭到了一些批评。批评者认为,花费高额费用来请外部安全机构的性价比不高,而且渗透测试的效果难以准确衡量,还会受到执行团队的技术水平制约。因此,在看不到明显效果的情况下,很多企业转而寻求“看得见的安全保护”,大力部署软硬件安全设备。伴随着安全行业的发展和企业安全意识的提高,以渗透测试为代表的“安全服务”正在得到越来越多人的认可。
▲图1:不久前,暴雪公司宣布战网内部安全网络被黑客攻破,建议用户更改账号密码
什么是渗透测试
渗透测试是由专业安全公司模仿黑客,针对授权企业网络进行安全检测的方法。这个检测过程包括对系统的任何弱点、技术缺陷或漏洞的主动分析,这种分析是站在攻击者角度进行的主动性探测,因此会发现使用传统检测方法无法发现的攻击路径、攻击方法和技术弱点。
早在上世纪70年代,美国军方就曾利用“渗透测试”发现了许多未知漏洞,甚至曾经雇佣黑客对目标镜像进行试探性攻击,从而促使软件编写者构建更强壮的计算机网络系统。后来,越来越多具有军方背景的机构开始使用这种方法,使得漏洞在暴露之前就被修复。
事实上,曾经在国内流行一时的“公开邀请黑客攻击自己网站,攻击成功可获大奖”的商业活动,其最初的模仿来源就是渗透测试,只不过加入了更多的商业元素,与市场活动结合有更好的推广效果。
但值得注意的是,企业一般在部署了相对完善的软硬件安全防护体系(包括企业版安全软件、防火墙、入侵检测设备等)之后,才需要进行渗透测试。如果一个企业网络缺乏基本的保护措施,那会大大增加渗透测试工程师不必要的工作量。
渗透测试的四大类
渗透测试的效果依赖于操作范围,即测试主流的攻击手段,目前可分为以下四大类:
1. 拒绝服务攻击测试
拒绝服务测试指的是尝试通过耗尽测试目标的资源的方式来发现系统的特定弱点,这种方法会导致系统停止对合法请求的响应。通俗的讲,黑客可以控制几千台肉鸡,使用这些肉鸡向攻击目标发起大量连接请求,因为网站的带宽和系统资源总是有限的,当肉鸡把这些资源都消耗掉之后,正常的用户就无法正常使用了。
拒绝服务攻击通过配置一定的软硬件可以削弱和过滤,进行拒绝服务攻击测试,就是为了检查所配置的软硬件设备有没有达到应有的效果。如果没有达到效果,可以通过继续添加攻击特征来加强过滤。
2. 应用安全性测试
现代企业的核心业务越来越多地通过Web应用实现,比如网络视频会议系统、全球性公司的内部业务系统、在线财务系统等,与网络连通之后必然会带来新的安全漏洞,使用防火墙和其他监控系统只能提高安全等级,但并不能彻底杜绝网络威胁。
应用安全性测试的目标是评估对应用的控制和在应用中流动信息的安全性。评估的方面包括应用是否使用加密方法来保护信息的保密性和完整性、用户是如何验证的、Internet用户会话与主机应用的完整性,以及Cookie的使用等。
3. 无线网络和移动终端测试
随着WIFI、3G等无线网络在企业中应用的逐渐增多,其带来的安全风险也在与日俱增。因为WIFI等协议在创建的时候,其使用环境的定义与现有应用环境不同,导致其安全性标准达不到现有企业安全性的标准。但是,作为企业网络的重要组成部分,很多企业业务需要构建在无线网络之上,比如很多企业在进行支付、现场活动等时候,需要通过3G进行通信,这时,严格限制无线应用显然是不可接受的。
因此,在进行渗透测试时,应把无线网络和企业员工使用的智能终端(iPad、智能手机等)列入到监测范围。一个不好笑的笑话是:“美国和以色列特工对伊朗核电站进行了很多次攻击,因为核电站与互联网物理隔离,未达到攻击效果,直到他们捡到了一个俄罗斯专家丢失的手机,连上了3G……”。
4. 社会工程学测试
社会工程学是个很时髦的词,但实际上含义很简单:通过欺骗和伪装,获取目标对象的好感和信任,从而获得想获取的信息。例如,国内有个公司是其他公司挖角的对象,但大家尝试了种种办法无法获取内部通讯录。有一天,有人在这个公司楼下贴了个小广告:小店开张全场八折,使用某公司的工卡购物,更能享受五折超低价……结果,你懂的。
进行渗透测试需要注意的几个问题
渗透测试一般由用户企业发起,寻找有资质的第三方安全机构来进行,在进行中需要着重注意以下几点:
A. 事先应做好受测对象的监测。用户应事先部署各种记录工具,准确了解模拟攻击给系统带来的异常状态表现,比如记录带宽波动、网络内应用在攻击状态下的表现、攻击利用的端口等,这些将给以后的防护提供宝贵经验和资料。
B. 在进行渗透测试时,应最小限度地让内部人员知晓。这样可以考验整个团队在异常状态下的反映,同时也可以避免一些不太具备安全资质的团队通过采用收买内部人员、收买内部信息的方式来完成测试。
C. 在测试前,双方应规定透露给测试团队的信息,比如受测试网站的域名、网址、机房配置等。理论上,应该保证测试团队获取的信息与黑客一致,不能透露过多的信息,否则就失去了渗透测试的意义。
D. 双方签订严格的保密协议和相应的文字资料,规定渗透测试可对网络应用、数据库、网络配置的影响限度。在进行渗透测试时,有时候需要更改网络配置、修改网络的安全防护策略来达到进一步测试的目的,但这种测试不能影响到网络的正常运行。
E. 为了进行测试,企业可以为测试团队提供一些方便。比如某些只允许内部IP访问的网络,为了进行测试需要可以对测试团队开放,但这种开放首先不能超过必要的限度,其次,在进行测试之后应及时关闭,避免测试团队以外的黑客顺手牵羊,带来不必要的麻烦。
F. 如果是安全性较高的网络不方便开放给测试团队,但又需要进行测试的,可以根据测试对象的具体情况,搭建一个仿真镜像来进行测试,这样可以最大限度地保证网络的安全运行,又能达到测试的效果。
测试报告及弥补措施
在渗透测试完成之后,执行公司应提供良好的测试报告。一份典型的测试报告包括:项目概述、测试结论、测试过程、测试过程中产生的数据证据和解决方案描述等,在整个报告中,解决方案是体现报告价值最重要的部分。
因为渗透测试包含了关系到安全风险的各个部分:软件、硬件配置、网络和服务器运行维护等,因此解决方案同样涉及到了庞杂的领域和系统,很多中小公司往往会专注于安全的某一块,有的专注于web安全,有的专注于安全审计,还有的专注于漏洞扫描和渗透。在最理想的状态下,一个专业的渗透测试团队应包含了各个方向的人才,这样才能保证最终解决方案的完整和整体高水平。
选择渗透测试的执行团队
作为一种高端安全服务,“渗透测试”的整个流程严重依赖执行团队的经验和专业能力。目前国内安全行业鱼龙混杂,有很多中小安全公司号称可以进行“渗透测试”,但其实并没有专业的执行团队和能力。
实际上,除了使用各种自动化检测工具之外,如何判别、收集、整理工具所产生的结果,尤其是渗透测试之后的安全方案制定,需要测试执行团队拥有丰富的专业经验、案例积累等专业技能,如此才能给用户提供更好的服务。
以瑞星渗透测试服务为例,早在2010年,瑞星就与国家信息中心联合成立了“国信—瑞星软件安全评测实验室”,该实验室汇聚了双方的资源和技术优势,为各级政府、企事业单位和社会各界提供专业化的安全检测服务。
瑞星在安全行业拥有超过20年的专业经验,一直专注于企业安全和个人安全,为用户提供从杀毒软件到高端企业安全设备的全系列产品,并提供相应的各种专业级安全服务。“渗透测试”就是针对国内企业和重点单位提供的高级安全服务,目前已为中央政府、军队、各大央企进行了近千次渗透测试服务,得到了广大用户的认可和赞扬。
作为国内技术最强、安全资质最高的专业安全公司,瑞星在渗透测试方面制订了严格的流程和标准,在测试过程中坚持透明化原则,用户随时可以观察到测试的过程和动作,并通过监测软件记录下来操作数据。这样一方面可以为以后的安全防护提供实际操作经验,另一方面还可以最大限度地保证测试不会伤及核心应用和数据。