扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
随着人们越来越多地依靠互联网进行商业、个人财政和投资等活动,互联网诈骗已经成为一个越来越大的威胁。互联网诈骗有多种形式,从eBay网站上销售的假冒商品到操纵股票价格的恶语流言,再到承诺如果你通过自己的银行帐户帮助进行一笔国外金融交易就能得到大笔财富的骗局,不一而足。
网络钓鱼就是互联网诈骗中很有趣且发展最快的一种。网络钓鱼(Phishing)的名称来自使用精心布置的诱饵(如看起来很像来自一个真实公司或机构的E-mail),这些诱饵是一些别有用心的人所设置,用于“钓取”用户的财政状况、信用卡详细情况和密码。钓鱼攻击使用的E-mail消息和网站看起来很像是来自一家合法的知名组织,其目的是骗取用户透露其个人、财政或计算机帐户信息。攻击者然后利用这些信息进行犯罪活动,如身分窃取、盗窃或欺诈。用户在被欺骗的情况下,或者通过网页形式透露信息,或者通过下载和安装恶意软件而透露信息。
当用户上当受骗,对在线交流形成一种错误的观念,并进而采取违背用户真实意图的行动时,钓鱼攻击就获得成功。由于推断一个用户的意图是很困难的,因此,要创建一种自动系统保护用户免遭钓鱼攻击是一个很具有挑战性的问题。
近来,钓鱼攻击发生的频率越来越高,其中许多足以以假乱真,欺骗用户。据反钓鱼攻击工作组(APWG)透露,仅2004年4月,对钓鱼攻击的报告就增加了180%,而在之前的六个月内则增加了4000%。从事反垃圾邮件的邮件边界公司最近一项研究发现,钓鱼邮件欺骗用户的成功率为28%。2002年,钓鱼攻击所造成的损失估计近3700万美元。
一、一个钓鱼攻击案例的剖析
反钓鱼攻击工作组对钓鱼攻击的案例进行收集和存档,这是一项很有价值的工作,因为攻击所用网址只存在很短的时间。其中一件案例就是对eBay消费者的攻击,它首次在2004年3月9日被报道。
攻击从潜在的受害者收到一封声称来自eBay的电子邮件开始(图1),信中称用户的帐户信息已经过期,必须进行更改。信件还包含了一个看起来很像是指向eBay网站页面的嵌入式超链接,该网页要求用户输入信用卡号、联系方式、社会安全号码以及eBay的用户名和密码(图2)。
然而,隐藏在表面下的事实却是,信件的内容和网页都不是它看起来的那样,图3给出了欺骗过程的示意图。钓鱼邮件看起来像一封来自eBay的合法邮件,在“发信人”栏列出的是“S-Harbor@eBay.com”,它指向eBay公司的合法域名,信件中嵌入的链接也指向“eBay.com”,甚至还使用了加密通道(“https:”)。在这些暗示和信件内容的基础上,用户对该信件就会建立一种思想模型,即eBay要求更新用户信息,然后用户就采取行动,点击嵌入的超链接,并认为它指向eBay。但用户的行动被转变为一种完全不同的系统操作,即从“210.93.131.250”的IP地址获取网页,该IP地址代表在韩国汉城注册的一家通信公司的服务器,这家公司同eBay公司没有任何关系。
钓鱼网站的欺骗模式也与此类似,其网页看起来很像是合法的eBay网页,它包含了一个eBay标识,其内容和版面同真实eBay网站网页的格式也相同。在这种情况下,用户就会建立一种思想模型,即浏览器所打开的是eBay的网页,用户必须提供所要求的信息,以保持用户eBay帐户的有效性。然后用户就采取行动,输入个人和财政数据,并点击“提交”按钮,希望将这些信息发送给eBay,但用户的行动被网页浏览器转变为这样一种系统操作:将用户输入的数据加密转变成一个HTTP请求并发送给“210.93.131.250”,而该IP并不是一个合法的eBay服务器。
二、钓鱼――“语义攻击”
国际著名安全问题专家布鲁斯·施奈尔曾称,攻击计算机网络的方法可分为越来越复杂和抽象的不同波次。第一波攻击在本质上是物理性的,其目标是计算机、网络设备和它们之间的链路,其目的是使信息流发生中断。第二波攻击由一系列“句法攻击”组成,其目标是网络协议、加密算法或软件运行中的缺陷,“句法攻击”是近十年来安全研究的主要对象。第三波攻击是“语义攻击”,其目标是我们作为人类所赋予内容的意义。
钓鱼攻击是一种“语义攻击”。成功的钓鱼攻击取决于用户对一个信息如一封电子邮件或一个网页的理解方式和该信息实际结果间的差异。图4给出了一个典型的互联网通信结构,它将通信分为两部分,系统模型涉及的是计算机如何交换位信息――协议、显示和软件。但是,当用户参与到通信中,仅理解和保护系统模型是不够的,因为所传递的真实消息不仅取决于交换的位信息,而且取决于用户从这些位信息所得出的语义含义,这个语义层就是用户的思想模型。钓鱼攻击的有效性表明,人们并不总是为他们的在线交流赋予正确的语义含义。
当用户面对一次钓鱼攻击,他对交流的思想模型往往会同系统模型发生错位,例如,用户的本意是要“进入eBay网站”,但超链接的实际运行可能“进入一台韩国的服务器”,正是这种错位使攻击得以成功,而且也正是这种错位使钓鱼攻击非常难于防范。用户根据交流的显示,即交流在计算机屏幕上所出现的方式,来建立其对交流的思想模型,而网页和电子邮件信息运行的细节被隐藏起来,且对大多数用户来说是不可获知的。因此,用户是不可能对其思想模型和系统模型进行比较的,即便能比较,也将费力甚巨,另一方面,电子邮件客户端程序和网页浏览器按照消息所提供的编码指令运行,而不会去核实用户的意图。由于不了解这两类模型,用户和计算机都不能察觉钓鱼攻击所造成的错位。
对钓鱼攻击问题的一个很极端的解决办法就是简单的丢弃互联网通信的显示部分,因为它不可信任,而且正是显示部分产生了用户的思想模型,并相应地再从运行中直接产生新的显示。但这种思想在可用性和功能性方面的成本都非常高,毕竟大多数在线消息都是合法的,其显示正确反映了运行,钓鱼消息只是很少见(但有害)的特例。因此,这种解决办法为了制止少数做坏事的人,将会不恰当地牺牲合法发信人显示和标识自己的自由。
因此,我们必须接受这一事实,即用户将查看带有误导性的显示和运行的消息。本文所讨论的从计算机方面防范钓鱼攻击就是为了使计算机能成为用户的思想模型和真实的系统模型间联系的桥梁,但用户将是判断一个消息是否是钓鱼攻击的最终决定者,因为钓鱼攻击的目标是用户如何为其在线交流赋予语义含义,这种赋予过程不在系统的控制范围之内。
三、常见钓鱼攻击技术
钓鱼攻击使用多种技术,使一封电子邮件信息或网页的显示同其运行表现出欺骗性差异。下面列出了一些较为常见攻击技术。
1、复制图片和网页设计、相似的域名
用户鉴别网站的一种方法是检查地址栏中显示的URL。为了达到欺骗目的,攻击者会注册一个域名,它看起来同要假冒的网站域名相似,有时攻击者还会改变大小写或使用特殊字符。由于大多数浏览器是以无衬线字体显示URL的,因此,“paypaI.com”可用来假冒“paypal.com”,“barcIays.com”可用来假冒“barclays.com”。更常见的是,假域名只简单地将真域名的一部分插入其中,例如,用“ebay-members-security.com”假冒“ebay.com”,用“users-paypal.com”假冒“paypal.com”。而大多数用户缺少判断一个假域名是否真正为被仿冒公司所拥有的工具和知识。
2、URL隐藏
假冒URL的另一种方法利用了URL语法中一种较少用到的特性。用户名和密码可包含在域名前,语法为:http://username:password@domain/。攻击者将一个看起来合理的域名放在用户名位置,并将真实的域名隐藏起来或放在地址栏的最后,例如“http://earthlink.net%6C%6C...%6C@211.112.228.2”。网页浏览器的最近更新已关闭了这个漏洞,其方法是在地址栏显示前将URL中的用户名和密码去掉,或者只是简单的完全禁用含用户名/密码的URL语法,Internet Explorer就使用了后一种办法。
3、IP地址
隐藏一台服务器身份的最简单办法就是使它以IP地址的形式显示,如http://210.93.131.250。这种技术的有效性令人难以置信,由于许多合法URL也包含一些不透明且不易理解的数字,因此,只有懂得解析URL且足够警觉的用户才有可能产生怀疑。
4、欺骗性的超链接
一个超链接的标题完全独立于它实际指向的URL。攻击者利用这种显示和运行间的内在差异,在链接标题中显示一个URL,而在背后使用了一个完全不同的URL。即便是一个有着丰富知识的用户,他在看到消息中显而易见的URL后也可能不会想到去检查其真实的URL。检查超链接目的地址的标准方法是将鼠标放在超链接上,其URL就会在状态栏中显示出来,但这也可能被攻击者利用JavaScript或URL隐藏技术所更改。
5、隐藏提示
还有一种更复杂的攻击,它不是在URL上做文章,而是通过完全替换地址栏或状态栏达到使其提供欺骗性提示信息的目的。最近发生的一次攻击就使用了用JavaScript在Internet Explorer的地址栏上创建的一个简单的小窗口,它显示的是一个完全无关的URL。
6、弹出窗口
最近对Citibank客户的一次攻击使网页复制技术前进了一步,它在浏览器中显示的是真实的Citibank网页,但在页面上弹出了一个简单的窗口,要求用户输入个人信息。
7、社会工程
钓鱼攻击还使用非技术手段使用户坠入陷阱,其中的一个策略就是急迫性,从而使用户急于采取行动,而较少花时间去核实消息的真实性。另一个策略是威胁用户,如果不按照所要求的去做就会造成可怕的后果,如终止服务或关闭帐户,少数攻击还许诺将获得巨额回报(如“你中了一个大奖!”),但威胁攻击更为常见,用户往往会对不劳而获产生怀疑,这可能是人类的本能。
钓鱼攻击还有一些值得关注的特点:
1、持续时间短
大多数钓鱼网站只存在很短的一段时间,其单位以天甚至小时计算。
2、憋脚的语言
许多钓鱼攻击所用的消息存在大量的拼写错误、语法错误或使人困惑的措词。
四、对钓鱼攻击的防范
正如前面提到的eBay网站被攻击的例子,我们可将在线交流分为四步(图5):
消息获取。一封电子邮件或一个网页从互联网到达用户的个人计算机。
显示。消息在用户界面上显示,用户查看消息,并形成思想模型。
行动。在思想模型的指引下,用户在用户界面中采取行动,如点击链接或填表。
系统操作。用户的行动被转变为系统操作,如连接一台网络服务器并提交数据。
1、消息获取阶段
在理想状态下,对钓鱼攻击的最佳防范是通过在消息获取时过滤所有钓鱼攻击通信并进行拦截,使他们不能显示给用户。这种解决办法的基本要求是计算机必须能准确地从合法消息中识别出钓鱼消息。在消息获取时过滤的防范措施取决于计算机易于理解的消息的属性。
发信人的身份
其中的一个属性是发信人的身份,“黑名单”被广泛用于拦截潜在的危险或不受欢迎的消息,如垃圾邮件。如果发信人的IP地址在“黑名单”中,接收的消息就被当作垃圾邮件,或者甚至在不通知用户的情况下简单地拒收。“黑名单”可以由单独的用户来管理,Internet Explorer的Content Advisor(内容顾问)(图6)就是采用这种方法,它还可以由一个组织或由许多用户协作进行管理。
对今天的互联网来说,“黑名单”已不再是一种有效的防范措施,因为攻击者很容易制造新的身份,如新的邮件地址和新的域名,甚至新的IP地址的费用也很低,且很容易获得。“黑名单”必须不断进行更新,才能向用户提供来自新创建消息源的危险消息的警报。由于钓鱼网站只存在很短的时间,“黑名单”每隔几小时甚至几分钟就必须进行更新,以保持拦截攻击的有效性。
与“黑名单”相对的是“白名单”,它允许用户只查看来自可接受消息源列表的消息,例如,Secure Browser(安全浏览器)使用许可的URL列表来控制用户在互联网上浏览的内容。“白名单”避免了新身份的问题,因为新创建源的初始状态被标记为不可接受,但是,确定“白名单”是一个很头疼的问题,因为要预测用户可能需要浏览的内容是不可能的,一个预先确定的、固定的“白名单”不可避免地会拦截用户访问合法的网站,另一方面,一个动态的“白名单”需要用户不断维护,这给用户造成了负担,因为对于用户要访问的每一个网站,他们首先必须决定是否将它放入“白名单”中。这还造成一个缺陷,即如果一个钓鱼网站能获得用户的信任并向其提交敏感数据,它也能获得用户的信任并将其放入“白名单”中。
消息的文本内容
消息过滤所涉及的另一个属性是消息的文本内容,这种内容分析的方法被广泛用于反垃圾邮件和防病毒解决方案中。危险的消息可通过搜索已知的模式如垃圾邮件关键词和病毒代码特征进行探测。为了对付内容分析,攻击者可将内容进行篡改,使其能绕过已知的过滤规则,例如,目前的病毒采用了加密和压缩的方法以绕过反病毒扫描,另外,还可在垃圾邮件中插入任意的字符,使其能绕过垃圾邮件过滤器,还有一种更复杂的钓鱼攻击,它使用图片的方式显示文本消息,因此能逃过内容分析。
垃圾邮件过滤是在消息获取时应用的一种防范措施。由于几乎所有的钓鱼攻击目前都是通过垃圾邮件进行的,因此,控制垃圾邮件可以大大降低遭受钓鱼攻击的危险。然而,许多垃圾邮件过滤器所使用的技术是通过扫描消息内容中的关键词来分辨垃圾邮件和合法邮件,这种技术已不足以识别钓鱼攻击,因为钓鱼消息是经过精心设计的,它模仿来自已同用户建立信任关系的组织发送的合法邮件。即使垃圾邮件过滤器设法大量减少了垃圾邮件问题,我们也可以预见,钓鱼攻击将采用其他传播途径,如在讨论网站上发表匿名评论,或严格筛选邮件攻击的目标,而不是通过广播方式发送垃圾邮件。
2、显示阶段
当一个消息通过邮件客户端程序或网页浏览器提供给用户时,用户界面也能提供一些可视线索,帮助用户确定该消息是否是合法的。
当前的网页浏览器通过一系列可视线索提供网页的源地址和完整性信息,例如,窗口上方的地址栏能显示所打开网页的URL,状态栏还会显示一个有代表性的锁的图标,表明该网页是否通过一个加密的、已被验证的连接打开的。目前这些线索在应对钓鱼攻击的防范中被广泛应用且最易为用户所理解,对钓鱼攻击的安全建议也提醒用户要在任何时候都密切关注这些线索。
但是,这些可视的线索也有一些缺陷。首先,这些线索显示在浏览器的外围区域,同网页的内容是分离的,而内容位于中央,且永远是用户的关注焦点,外围的线索必须要能引起用户的注意。其次,这些线索可被“钓鱼者”直接攻击。前面已经提到的URL隐藏和域名相似就是地址栏欺骗的一个例证,攻击者还利用JavaScript和Java程序隐藏或伪造其他安全线索,包括地址栏、状态栏、验证对话框、SSL锁图标、SSL证书信息等。
eBay的Account Guard将一个地址身份指示器放入专用的工具栏,Account Guard将互联网分为三类:
真正属于eBay或PayPal的网站,用绿色图标指示
已知的eBay或PayPal欺骗网站,用红色图标指示
所有其他网站,用中灰色图标指示
这种方法的一个问题是它缺乏可量测性,钓鱼攻击的对象不仅限于eBay和PayPal,截止2004年10月,反钓鱼攻击工作组已收集了针对39个不同组织客户的攻击。要想把所有可能的工具栏(每一个工具栏代表单独的一个组织)都放进一个浏览器是不可能的,一种较好的办法是由一个权威机构如VeriSign或TRUSTe创建和管理一个工具栏,其他组织如果已经成为或害怕成为钓鱼攻击的受害者可以订购该工具栏。VeriSign可能会立即着手这项计划,推出一个能自动验证其所有VeriSign安全戳记计划成员的工具栏。
SpoofStick是一个浏览器的扩展,它帮助用户解析URL并通过在一个专用工具栏上显示最相关的域信息来探测URL欺骗,例如,当目前的URL是“http://signin.ebay.com@10.19.32.4”时,SpoofStick就会显示“你在10.19.32.4上”,当目前的URL是“http://www.citibank.com.intl-en.us”时,SpoofStick就会显示“你在intl-en.us上”。由于SpoofStick使用了彩色的大字体,该工具栏较易被用户所注意,但SpoofStick不能解决相似域名问题,例如,它不能确定ebay-members-security.com是否是eBay拥有的域名,或者mypaypal.com是否是PayPal的合法域名。如果用户认为这两个域名是合法的,那么即使用户安装了SpoofStick,他也会上当受骗,而且,目前尚不清楚是否IP地址而不是域名能在用户的头脑中引起足够的警觉,因为一些合法的网站也使用纯粹的IP地址,如Google缓冲存储器。
为了解决伪造线索的问题,一些专家提出了同步随机动态边界技术,按照这种方法,所有合法的浏览器窗口以任意的时间间隔同时变换它们的边界颜色,由于远程机器产生的欺骗窗口无法得到本地机器产生的随机值,因此,其边界颜色的变化不会与合法窗口边界颜色的变化同步。Mozilla网络浏览器对这种方法进行了考虑,但由于担心用户不易理解,因此放弃了。
还有一些专家提出了一种相关的方法――个性化显示,按照这种方法,合法的浏览器窗口将被打上个人标记,如一幅用户的脸部照片。同样的原理还可用于区分合法网页和钓鱼攻击网页,例如,Amazon和Yahoo!使用姓名向注册用户传递问候。PassMark甚至走得更远,它将用户设置的一幅图片作为网站登录页面的一部分进行显示,因此在网站验证用户的同时用户也可验证网站。
个性化较难于进行欺骗,但要求用户进行更多的设置,如果网站能自动为用户选择一幅随机图片,用户就不用进行设置,但系统选择的图片对用户来说易于忘记。个性化的另一个问题是,缺少个性化的钓鱼攻击网页是否能引起用户的足够警觉,正面线索如个性化的缺少可能不会象负面线索如工具栏上红灯的存在那样引起用户的注意。
3、行动阶段
钓鱼攻击不仅要使用户上当受骗,而且要使用户按照欺骗信息的指示采取行动,因此,安全专家建议用户不要执行有潜在危险性的行动。例如,目前大多数钓鱼攻击利用电子邮件消息作为初始诱饵,并骗使接收者点击电子邮件中提供的链接,而该链接指向一台钓鱼攻击服务器。在此情况下,用户应无视电子邮件中的链接,并打开一个新浏览器窗口,手动输入合法网站的URL。这个建议可能不会被用户所采纳。考虑到钓鱼攻击消息相对于合法消息出现的频率很低,该建议为了防止用户点击极少数钓鱼邮件中的错误链接而牺牲了大多数合法邮件中超链接所带来的高效。
4、系统操作阶段
在一次成功钓鱼攻击的最后一步,用户的行动被转变成系统操作,这也是我们防止攻击的最后机会。但是,由于钓鱼攻击不是利用系统缺陷,攻击所涉及的系统操作都是非常正当的,例如,向远程服务器发送信息是一件很平常的事。只基于系统操作的告警将不可避免地导致较高的虚假错误率,即就合法行动向用户发出警告。这种高虚假错误率的最终结果是使用户关闭告警或按照习惯取消告警。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。