我对“渗透性测试”的理解

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

我对“渗透性测试”的理解

提起渗透性测试(模拟黑客进行“合法”的网络入侵测试),人们自然会想到黑客,好象做这种测试的只有真正的黑客才可以做到,但黑客通常是“虚拟网络”中的人物,与现实生活中的人很难对应,对于他们的行为感到神秘也是自然的。测试与攻击有什么不同呢?我刚从事安全研究时也很困惑,攻击是不按常理出牌的思维,遵循套路的只能是表演,不会实用,那么安全公司的专家们是如何进行渗透性测试呢?

一般来说,这种测试的过程都是半隐蔽的,不同的安全公司、不同的人做这种测试的结果差异巨大。我们最终看到的多是一些结果报告,多数的报告是“模板”式的,开头是一大堆发现的漏洞,结果里总说这有问题,那有问题,但究竟问题对用户数据安全、业务服务的具体影响?这个漏洞是否可以成为入侵的窗口?入侵者能否躲避开监控系统的眼睛,能否躲开安全管理者为他们设计的种种“陷阱”?能说明白的就非常少了。有漏洞不希奇,漏洞也分不同的级别,“虱子多了不咬”,用户看了,一般都被搞得“找不到北”。反正“安全专家”说:网络漏洞还很多,具体什么问题就不说了,怎么办呢?赶快买安全设备吧,花钱的时候别心痛,反正是国家的钱…花钱事小,安全责任重大啊…

这种报告里,渗透的“实际成果”很少,有些“吓唬”用户的意思,漏洞是否可被利用,究竟能产生多大的危害,才是用户真正想要的。当然安全公司这样做也有些无奈。一是要真正能渗透,并能取得“战果”,需要利用很多的黑客工具,绕过自己安全产品的最新跟踪技术,同时测试参与者要具备相当的“黑客实战”能力,这一点,商业化的安全公司显然是无法标准产品化的;二是真的获取了用户的机密资料,客户能接受吗?很多客户的安全测试大多是例行公事,发生了安全事件,就牵扯责任问题,问题就变得复杂了。

为了说明这种无奈,我们先看一下一般企业的网络结构图:

一般攻击来自互联网(大家最容易接受的),主要是企业的互联网门户(如网站、公共服务器等)、互联网出口、企业VPN访问网关等,都是攻击的首要位置,但实际上入侵通过企业办公区域网络接入、办公区域WLAN接入、员工移动电脑木马等内部方式更为方便、直接。

虽然安全公司与企业签定“合法”渗透协议、保密协议等,但若真的企业机密被测试者拿到,企业也非常没有面子,当然也就不是很高兴了,因此,大多数的安全公司采用了“黑盒表面”测试,黑盒就是不探明网络内部结构,不用发现机密资源的具体位置与获取方式,重要的是:表面测试不用细致分析企业内部业务流程上的安全漏洞,只在网络“表面”做攻击;所以,只要发现网络可入侵的漏洞,在报告中告之客户这个漏洞是存在的,是有可能被利用进行入侵的,基本就停住了,再往深一步的入侵,除非是用户强烈要求。

正是基于这样的想法,安全公司与用户安全管理者都很有面子,项目操作很容易标准化,双方都非常乐意接受。当然,同质化的结果就是渗透性测试的价格非常低廉,与通用的风险评估相差无几了。

最初的渗透性测试不是这样,应该说是一些黑客“从良”后的善意工作,渗透就是入侵的真实模拟。

《入侵的艺术》中记录了一个小故事:“一双袜子”

一家制作数字购物卷的公司请安全公司对自己的网络做渗透性测试。如何“入侵”呢?该公司以数字信息为生,购物卷就是钱,公司对系统安全很重视,密码系统非常完备,尝试破解是困难的。入侵者观察了商家如何兑换购物卷,因为测试协议给了他们一个商家账号(模拟用户),他们通过这个账号进入兑换系统,很快发现兑换系统有个应用漏洞,能执行入侵者的任何命令。

兑换中心的计算机与制作购物卷的公司是连通的,利用域信任关系,入侵者很容易进入到公司内部网络,并发现了制作购物卷的系统,通过商家的业务定单系统很容易给这个“造币机”下达指令。入侵者可不只是显示个用户提示符(成功登录),而是给自己制作了一张购物卷,金额是难以想象的,折合美元为19亿元。

入侵者用这张购物卷在商家的网站上订购了一双袜子,交易成功,商家不得不为这双价值19亿的袜子买单,因为购物卷是“真”的,当然,袜子也是真的…

渗透性测试是模拟黑客入侵的思维,而不是形式。那么黑客入侵时想什么?因为任何安全体系的建设都是基于一种信任的,网络的存在是要为人提供服务的,不可能对所有人都封闭,所以黑客想的应该是:正常用户业务处理的正常逻辑、方法,用户需要这样去完成他的工作,就需要IT部门这样支持业务访问通道,黑客模拟成企业员工,通过同样的通道,就不容易被发现。当然这里说的入侵不包括野蛮型的DDOS攻击与表演型的网站涂鸦攻击,这两种攻击都只在企业网络外部,不需要入侵到内部。

实际的网络入侵是一种“灰盒”测试,所谓灰的含义是黑客在入侵的过程中,通过猜测与分析、信息收集,逐渐明晰网络的内部结构(防火墙的位置,机密资源所在的服务器位置等)。渗透性测试要简单一些,可以看作是一种白盒测试,测试者可以先得到部分“内部”信息,或一些实验账号,可以节省很多探测的时间,但它与入侵的目的是一样的,都是要利用一切可能的漏洞进入,无声无息地取走机密信息。

这样,我们再看企业网络结构图,渗透性测试的目标就明确了,要找到进入目标资源的通道,而不仅仅是找到进入网络的通道。更为重要的是:测试还需要有非常好的自我隐蔽技术,不能很快被发现(安全监视系统与审计系统能在你获取机密资源前发现你),因为进入网络后,获取目标资源还需要很多时间,这也正式渗透性测试与风险评估的差别,风险评估常常是评价防护体系,而渗透性测试常常是与监控体系较量,入侵进去是一种技术,进去后不被发现地干好自己的事情是另一种技术---隐藏技术。

我们总结了一些衡量渗透性测试结果的信息,通常以获得下面信息为标志:

∙∙入侵CEO的电脑(密码与信息)

∙∙企业核心机密资料(如软件公司的源代码库)

∙∙高级管理人员的账户与密码列表

渗透性测试的报告中,应该提交入侵可利用的资源分布图(服务器、账号、密码列表),包括可看到的、可拿走的、可篡改的…

当然,安全漏洞都是有时限的,用户打上了补丁,可能“通道”就关闭了,所以渗透性测试的结果也有时限意义。按我们的经验,渗透性测试的结果通常不是要用户增加多少安全设备与投资,而是要用户提高安全措施的利用程度,加强安全管理,如制度落实、安全事件有人管、监控报警有人跟、审计记录有人看…

我们没有“神话”渗透性测试过程,但它的确需要改变安全公司常用的安全防护思路,用黑客的入侵式的思维去想问题,才能有理想的效果。

相关文档
最新文档