XSS又叫CSS (Cross Site Script) ,跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的。
1. DOM-based cross-site scripting
页面本身包含一些DOM对象的操作,如果未对输入的参数进行处理,可能会导致执行恶意脚本。
2. Reflected cross-site scripting
也被称为None-Persistent cross-site scripting,即,非持久化的XSS攻击,是我们通常所说的,也是最常用,使用最广的一种方式。它通过给别人发送带有恶意脚本代码参数的URL,当URL地址被打开时,特有的恶意代码参数被HTML解析、执行。它的特点是非持久化,必须用户点击带有特定参数的链接菜能引起。
3. Persistent cross-site scripting
持久化XSS攻击,指的是恶意脚本代码被存储进被攻击的数据库,当其他用户正常浏览网页时,站点从数据库中读取了非法用户存入非法数据,恶意脚本代码被执行。这种攻击类型通常在留言板等地方出现。
防范:
1,BB Code的方法。使用特定的标签代替一些格式。比如:[B]表示粗体
2,白名单过滤机制/黑名单替换机制
AntiXSS,由微软推出的用于防止XSS攻击的一个类库。它的实现原理也是使用白名单机制。
一个MSDN里图文并茂的使用说明:http://msdn.microsoft.com/en-us/library/aa973813.aspx
http://huaidan.org/archives/1523.html
http://huaidan.org/archives/1909.html
http://www.cnblogs.com/hyddd/archive/2009/03/22/1419104.html
参考:
http://www.cnblogs.com/coderzh/archive/2008/09/06/1285500.html
http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html
作者:未签收
出处:http://www.cnblogs.com/tchoyi/
声明:除特别标明之文章外,大部分整理自网络和小部分来自自己感悟,如有侵犯原作者版权的行为,可以随时与我联系!我会及时删除!