一、从影片特技到蜜罐技术
《特洛伊》里庞大的希腊舰队、《终结者2》里随意改变形体的“液体金属”、《侏罗纪公园》里满地乱跑的恐龙们、《黑客帝国》里的“子弹时间”……随着计算机技术的不断发展,越来越多的电脑特技被应用在电影领域,不需要工资的虚拟演员不知辛劳地日夜工作,这些电脑技术使得导演可以构思现实中不可能存在的情节环境,也减少了影片开支。但是,在计算机的信息安全领域里,网络管理员要面对的是黑客真枪实干的入侵破坏,难道在电脑技术大量应用的今天,安全领域却得不到一点援助?答案是有的,它就是在安全领域里代替网络管理员上阵的“虚拟演员”――蜜罐技术。
蜜罐,或称Honeypot,与应用于电影的特技相比,它并不神秘――所谓蜜罐,就是一台不作任何安全防范措施而且连接网络的计算机,但是与一般计算机不同,它内部运行着多种多样的数据记录程序和特殊用途的“自我暴露程序”――要诱惑贪嘴的黑熊上钩,蜂蜜自然是不可少的。在入侵者的角度来看,入侵到蜜罐会使他们的心情大起大落――从一开始偷着乐骂管理员傻帽到最后明白自己被傻帽当成猴子耍的过程。
二、为什么要使用蜜罐
《终结者2》里阿诺让约翰把自己放入熔炉,《特洛伊》里Achilles被王子射杀,战争片里的机枪扫射,甚至《黑衣人》里外星人发射的核弹毁灭了北极!如果这一切是真实的话,我们的明星已经成为墙上的照片了,拍一部片要死多少人?况且,我们只有一个地球,值得为了一部影片炸掉某个地区?所以人们必须采用电脑特技完成这些不能真实发生的剧情。同样,管理员也不会为了记录入侵情况而让入侵者肆意进入服务器搞破坏,所以蜜罐出现了。
前面说过了,蜜罐是一台存在多种漏洞的计算机,而且管理员清楚它身上有多少个漏洞,这就像狙击手为了试探敌方狙击手的实力而用枪支撑起的钢盔,蜜罐被入侵而记录下入侵者的一举一动,是为了管理员能更好的分析广大入侵者都喜欢往哪个洞里钻,今后才能加强防御。
另一方面是因为防火墙的局限性和脆弱性,因为防火墙必须建立在基于已知危险的规则体系上进行防御,如果入侵者发动新形式的攻击,防火墙没有相对应的规则去处理,这个防火墙就形同虚设了,防火墙保护的系统也会遭到破坏,因此技术员需要蜜罐来记录入侵者的行动和入侵数据,必要时给防火墙添加新规则或者手工防御。
三、深入蜜罐
既然使用蜜罐能有那么多好处,那么大家都在自己家里做个蜜罐,岂不是能最大程度防范黑客?有这个想法的读者请就此打住!蜜罐虽然在一定程度上能帮管理员解决分析问题,但它并不是防火墙,相反地,它是个危险的入侵记录系统。蜜罐被狡猾的入侵者反利用来攻击别人的例子也屡见不鲜,只要管理员在某个设置上出现错误,蜜罐就成了打狗的肉包子。而一般的家庭用户电脑水平不可能达到专业水平,让他们做蜜罐反而会引火烧身――蜜罐看似简单,实际却很复杂。虽然蜜罐要做好随时牺牲的准备,可是如果它到最后都没能记录到入侵数据,那么这台蜜罐根本就是纯粹等着挨宰的肉鸡了,蜜罐就复杂在此,它自身需要提供让入侵者乐意停留的漏洞,又要确保后台记录能正常而且隐蔽的运行,这些都需要专业技术,如果蜜罐能随便做出来,我们在家里也能拍摄《黑客帝国》了――故意开着漏洞却没有完善的记录处理环境的服务器不能称为蜜罐,它只能是肉鸡。
所以,我们必须了解蜜罐,它到底是什么样的?
1.蜜罐的定义
首先我们要弄清楚一台蜜罐和一台没有任何防范措施的计算机的区别,虽然这两者都有可能被入侵破坏,但是本质却完全不同,蜜罐是网络管理员经过周密布置而设下的“黑匣子”,看似漏洞百出却尽在掌握之中,它收集的入侵数据十分有价值;而后者,根本就是送给入侵者的礼物,即使被入侵也不一定查得到痕迹……因此,蜜罐的定义是:“蜜罐是一个安全资源,它的价值在于被探测、攻击和损害。”
设计蜜罐的初衷就是让黑客入侵,借此收集证据,同时隐藏真实的服务器地址,因此我们要求一台合格的蜜罐拥有这些功能:发现攻击、产生警告、强大的记录能力、欺骗、协助调查。另外一个功能由管理员去完成,那就是在必要时候根据蜜罐收集的证据来起诉入侵者。
2.涉及的法律问题
蜜罐是用来给黑客入侵的,它必须提供一定的漏洞,但是我们也知道,很多漏洞都属于“高危”级别,稍有不慎就会导致系统被渗透,一旦蜜罐被破坏,入侵者要做的事情是管理员无法预料的,例如,一个入侵者成功进入了一台蜜罐,并且用它做“跳板”(指入侵者远程控制一台或多台被入侵的计算机对别的计算机进行入侵行为)去攻击别人,那么这个损失由谁来负责?设置一台蜜罐必须面对三个问题:设陷技术、隐私、责任。
设陷技术关系到设置这台蜜罐的管理员的技术,一台设置不周全或者隐蔽性不够的蜜罐会被入侵者轻易识破或者破坏,由此导致的后果将十分严重。
由于蜜罐属于记录设备,所以它有可能会牵涉到隐私权问题,如果一个企业的管理员恶意设计一台蜜罐用于收集公司员工的活动数据,或者偷偷拦截记录公司网络通讯信息,这样的蜜罐就已经涉及法律问题了。
对于管理员而言,最倒霉的事情就是蜜罐被入侵者成功破坏了。有人也许会认为,既然蜜罐是故意设计来“牺牲”的,那么它被破坏当然合情合理,用不着小题大做吧。对,蜜罐的确是用来“受虐”的,但是它同时也是一台连接网络的计算机,如果你做的一台蜜罐被入侵者攻破并“借”来对某大学服务器进行攻击,因此引发的损失恐怕只能由你来承担了。还有一些责任是谁也说不清的,例如,你做的一台蜜罐不幸引来了Slammer、Sasser、Blaster等大名鼎鼎的“爬虫类”病毒而成了传播源之一,那么这个责任谁来负担?
3.蜜罐的类型
世界上不会有非常全面的事物,蜜罐也一样。根据管理员的需要,蜜罐的系统和漏洞设置要求也不尽相同,蜜罐是有针对性的,而不是盲目设置来无聊的,因此,就产生了多种多样的蜜罐……
3.1.实系统蜜罐
实系统蜜罐是最真实的蜜罐,它运行着真实的系统,并且带着真实可入侵的漏洞,属于最危险的漏洞,但是它记录下的入侵信息往往是最真实的。这种蜜罐安装的系统一般都是最初的,没有任何SP补丁,或者打了低版本SP补丁,根据管理员需要,也可能补上了一些漏洞,只要值得研究的漏洞还存在即可。然后把蜜罐连接上网络,根据目前的网络扫描频繁度来看,这样的蜜罐很快就能吸引到目标并接受攻击,系统运行着的记录程序会记下入侵者的一举一动,但同时它也是最危险的,因为入侵者每一个入侵都会引起系统真实的反应,例如被溢出、渗透、夺取权限等。
3.2.伪系统蜜罐
什么叫伪系统呢?不要误解成“假的系统”,它也是建立在真实系统基础上的,但是它最大的特点就是“平台与漏洞非对称性”。
大家应该都知道,世界上操作系统不是只有Windows一家而已,在这个领域,还有Linux、Unix、OS2、BeOS等,它们的核心不同,因此会产生的漏洞缺陷也就不尽相同,简单的说,就是很少有能同时攻击几种系统的漏洞代码,也许你用LSASS溢出漏洞能拿到Windows的权限,但是用同样的手法去溢出Linux只能徒劳。根据这种特性,就产生了“伪系统蜜罐”,它利用一些工具程序强大的模仿能力,伪造出不属于自己平台的“漏洞”,入侵这样的 “漏洞”,只能是在一个程序框架里打转,即使成功“渗透”,也仍然是程序制造的梦境――系统本来就没有让这种漏洞成立的条件,谈何“渗透”?实现一个“伪系统”并不困难,Windows平台下的一些虚拟机程序、Linux自身的脚本功能加上第三方工具就能轻松实现,甚至在Linux/Unix下还能实时由管理员产生一些根本不存在的“漏洞”,让入侵者自以为得逞的在里面瞎忙。实现跟踪记录也很容易,只要在后台开着相应的记录程序即可。
这种蜜罐的好处在于,它可以最大程度防止被入侵者破坏,也能模拟不存在的漏洞,甚至可以让一些Windows蠕虫攻击Linux――只要你模拟出符合条件的Windows特征!但是它也存在坏处,因为一个聪明的入侵者只要经过几个回合就会识破伪装,另者,编写脚本不是很简便的事情,除非那个管理员很有耐心或者十分悠闲。
4.使用你的蜜罐
既然蜜罐不是随随便便做来玩的,管理员自然就不会做个蜜罐然后让它赋闲在家,那么蜜罐做来到底怎么用呢?
4.1.迷惑入侵者,保护服务器
一般的客户/服务器模式里,浏览者是直接与网站服务器连接的,换句话说,整个网站服务器都暴露在入侵者面前,如果服务器安全措施不够,那么整个网站数据都有可能被入侵者轻易毁灭。但是如果在客户/服务器模式里嵌入蜜罐,让蜜罐作为服务器角色,真正的网站服务器作为一个内部网络在蜜罐上做网络端口映射,这样可以把网站的安全系数提高,入侵者即使渗透了位于外部的“服务器”,他也得不到任何有价值的资料,因为他入侵的是蜜罐而已。虽然入侵者可以在蜜罐的基础上跳进内部网络,但那要比直接攻下一台外部服务器复杂得多,许多水平不足的入侵者只能望而却步。蜜罐也许会被破坏,可是不要忘记了,蜜罐本来就是被破坏的角色。
在这种用途上,蜜罐不能再设计得漏洞百出了。蜜罐既然成了内部服务器的保护层,就必须要求它自身足够坚固,否则,整个网站都要拱手送人了。
4.2.抵御入侵者,加固服务器
入侵与防范一直都是热点问题,而在其间插入一个蜜罐环节将会使防范变得有趣,这台蜜罐被设置得与内部网络服务器一样,当一个入侵者费尽力气入侵了这台蜜罐的时候,管理员已经收集到足够的攻击数据来加固真实的服务器。
采用这个策略去布置蜜罐,需要管理员配合监视,否则入侵者攻破了第一台,就有第二台接着承受攻击了……
4.3.诱捕网络罪犯
这是一个相当有趣的应用,当管理员发现一个普通的客户/服务器模式网站服务器已经牺牲成肉鸡的时候,如果技术能力允许,管理员会迅速修复服务器。那么下次呢?既然入侵者已经确信自己把该服务器做成了肉鸡,他下次必然还会来查看战果,难道就这样任由他放肆?一些企业的管理员不会罢休,他们会设置一个蜜罐模拟出已经被入侵的状态,做起了姜太公。同样,一些企业为了查找恶意入侵者,也会故意设置一些有不明显漏洞的蜜罐,让入侵者在不起疑心的情况下乖乖被记录下一切行动证据,有些人把此戏称为“监狱机”,通过与电信局的配合,可以轻易揪出IP源头的那双黑手。
四、结语
随着网络入侵类型的多样化发展,蜜罐也必须进行多样化的演绎,否则它有一天将无法面对入侵者的肆虐。这也对网络管理员的技术能力有了更高的要求,因为蜜罐 ――这个活跃在安全领域的虚拟演员,它的一举一动,都是通过你来设计的,我们无法让蜜罐像T-X那样变化无常,但是,至少要防止我们设计的阿诺再次被T- X踏断脖子注入反叛指令。