借助E-mail推广Web时 企业当心成替罪羊

随着邮件系统的广泛使用,越来越多的企业喜欢将Email系统与Web服务器结合起来使用。如会向用户发送带有Web连接的邮件,向用户推广自己的网站。笔者以前的一家客户就在采取这样的操作。他们会了配合广告宣传,在自己的网站上做了一个市场有奖调研活动。他们通过邮件的形式,将这个活动的信息发给客户。客户只要通过点击邮件中的链接(如被设计成一个按钮),就可以直接打开企业的网站参加活动。这个看起来很简单的需求,其实隐藏着比较大的安全隐患。一不小心,企业的这种行为,就会成为替罪羊。

一、安全隐患举例

当用户接收到带有链接的邮件时,一般都会比较小心。如果邮件的发送者是陌生人的话,可能不怎么会去点。即使没有意识到可能有安全陷阱,也会认为这是一封垃圾邮件,而将其删除。但是,如果这个邮件是认识的人发过来的,如是自己的客户或者供应商,那么情况就另当别论了。用户往往会去点击,以查看是否有重要的信息。

此时用户一点击这个链接,灾难就可能降临了。如果这个用户的安全意识比较强,在客户端上安装了防火墙或者杀毒软件并已经升级到了最新版本,那么系统就会提示你打开的Web网页可能有木马。如果没有安装,那么在打开网页的同时,木马、病毒等也会悄无声息的在用户的后台运行。

此时用户就可能会打电话给合作伙伴投诉。其实此时这个合作伙伴也可能还蒙在鼓里。这个活动确实是有的,但是他们当然不会自己砸自己的招牌,在自己的网站中挂载木马或者病毒,来引起客户或者供应商的不满。

二、安全隐患分析

其实这是一种比较典型的通过Web与邮件结合使用来传播木马与病毒的一种手段。此时网页还是原来的网页,有家还是原来的邮件。只是攻击者在这里加入了一点“调料”。如下图所示:

在用户的邮件中有一个按钮。只要用户点击这个按钮,就可以打开企业的Web网站。其实这个按钮就是一个网络连接。现在攻击者点击这个链接后,其实第一次打开的并不是企业的网页,而是其伪造的一个网页。同时在这个网页代码中,会再去打开企业搞活动的网页,而将自己伪造的网页隐藏起来。注意,在这个过程中,伪造的网页就会像用户的主机中下载各种各样的木马与病毒。从安全的角度讲,这封邮件本身是没有病毒的。所以不会被企业的防火墙拦截。只有当用户点击邮件中的链接,从伪造的网页中下载木马时,防火墙才能够发觉并提醒用户。在这种情况下,用户就觉得是企业的网页在作怪。其实这是一个天大的冤枉。大部分情况是因为邮件中的URL链接被篡改所导致的。

另外一种可能就是攻击者直接在企业的网站上开刀。如攻击者通过各种攻击手段获得网站的管理员权限之后,就可以在企业的Web页面中添加恶意代码。如从其他网站上下载木马或者直接使一个木马代码。当用户通过链接打开这个活动业面时就会中招。此时就会辜负其他用户对企业的信任,从而成为了一只无辜的替罪羊。

三、安全隐患的防护

这种Email与Web系统结合使用而导致的安全隐患,防护起来具有一定难度。主要是因为安全人员很难通过自查的方式来发现这个安全隐患。从以上的分析中可以看出,其攻击点只要有两个。一是邮件中的URL链接,另外一个就是企业的Web网页。只要其中有一个被攻击了,就会造成上面所分析的后果。既然这存在这么大的安全隐患,那么企业能否放弃这种方式呢?其实这也不现实。因为根据企业的反馈来看,通过这种形式来推广企业的品牌形象是一个非常有效的方法。不仅成本便宜,而且比价具有针对性。这就给安全人员一个新的挑战,如何来解决这个安全问题呢?对此笔者有如下几个安全建议。

一是不要使用按钮,而直接使用链接。如果使用按钮,那么即使攻击者更改了URL链接,管理员也很难发掘这个中更改的行为。如故直接使用URL链接地址,而不是按钮,那么这种情况就可能有所改观。如用户在发送邮件的时候,也同时发送给自己。查看自己收到的URL链接,可以初步判断这个链接有没有被更改过。这是一个比较初级的方法,但是也是一个行之有效的手段。

二是需要追踪。这种攻击有一个显著的特点,就是攻击的直接受害者并不是企业自己,而是信赖企业的合作伙伴,包括供应商、客户等合作伙伴。当其他用户发现这个网站有问题时,企业的Web管理员很有可能还一无所知。由于Web管理员后之后决,就导致了受害用户的增加。笔者建议,对有这些具有推广Web网站性质的邮件,安全管理人员应该给与特殊的关注,如需要加强后续的追踪。其实这个追逐也比较简单,只需要管理员在后续的工作中,自己去点击一下,看看有没有问题。当然前提是客户端安装了杀毒软件并已经将其升级至最新版本的情况下。

三是完善网页代码的编写。以上这种攻击,又被称之为XSS攻击。XSS攻击其主要采用的是页面文件编写不完善所造成的。为此一般很难通过现有的安全产品(如防火墙等等)来解决。其最直接的方式就是对企业现有的Web页面文件进行完善。笔者这里建议,在编写Web页面文间时,最好采用多层式的编码结构。这可以在很大程度上完善页面文件,以提到防范XSS攻击的目的。笔者再强调一下,针对这种攻击,通常情况下的安全防护工具并不能够起到很大的效果。

四是需要仔细分析日志。从企业的网站日志中,一般会详细记录访问的相关信息。如用户的访问地址等等。在上面的攻击原理中,我们会发现,当超链接被更改后,攻击者会利用一个假冒的网页去打开目标网页。现在如果通过日志发现,很多访问者都是来自相同的地址(仿冒的访问者),那么就可以判断这些访问存在着异常的情况。此时Web安全人员就需要仔细核对相关的内容,判断是哪里存在问题。

五是选择一跨好的网页开发工具。上面笔者谈到过,发生这种工具很多情况下是由于Web页面自身的漏洞所造成的。对于一个比较复杂的网页,要通过手工检查来发现这些漏洞,具有一定的难度。其实在选择网页开发工具时,我们可以有意识的选择一些安全性比较高的开发平台。如VS2010等等。这些平台往往会带有一些安全自检工具。通过这些工具,可以发现网页页面中存在的已知漏洞。在发布之前就做好相关的安全自检工具,就能够将这种攻击档在门外。

其实上面的这些安全措施主要体现了两个原理。一是攘外必先安内。要避免外部的工具,就需要先保障自身的安全。俗话说,苍蝇不叮无缝的鸡蛋。如果页面文间本身不存在安全问题,这种攻击也只能够望洋兴叹了。二是要最后追踪与分析工作。任何攻击都有迹象可循。及早发现攻击的迹象,并将其扼杀在萌芽状态,可以减少受影响的用户。亡羊补牢,为时未晚。