首页 > 代码库 > XSS学习
XSS学习
XSS基础篇 介绍(内容写在PPT里了,博客园就不做太详细的备份)
这份草稿这样了吧,偷懒了。
1 XSS (Cross Site Script) 跨站脚本攻击,简称“CSS”?
No,CSS缩写已经被层叠样式表占用,所以在被称为“XSS”。
2 神马是跨站脚本攻击(XSS)?
指黑客通过“HTML注入”修改网页内容,骗取用户点击后触发恶意代码。
3 XSS的原理是神马?
利用浏览器对脚本的自动解析,运行注入的恶意代码。
简述XSS攻击的过程----------------例1,做个简单的小例子
a 用户点击带有恶意代码的URL
b 用户浏览器自动解析URL里面包含的恶意代码
4 XSS的类型
a 反射型(包括DOM Base XSS) ----例2 DOM BASE XSS的例子
b 持久型 --------------------------------例3 laputa的一个BUG
两者的本质是一样的,区别在于脚本的储存地点,通常来说持久型的XSS更危险一些
5 小结
XSS的攻击交互过程:
a 用户请求了经过XSS处理的URL
b 浏览器自动解析了URL里面的恶意代码
6 抛出疑问
1 XSS 攻击的危害程度有多大? ----例4窃取cookie,登录用户帐号后获取用户信息
2 怎么骗取用户点击带有XSS的URL?
a 伪装
例如 标题吸引:恶意URL的标题一般都比较富有诱惑力
编码转换:转成16进制编码格式--------------------------------例子5 编码转换成16进制的
b XSS攻击的请求范围包括POST吗?
请见下一章节
c 如何构建XSS攻击脚本?
d XSS的防御策略如何设计
e XSS的部分功防策略演示
f 用神马工具寻找XSS漏洞
网上有很多,建议用开源的。
XSS深入篇 脚本
1 XSS脚本构建
a 了解脚本语言
1 javascript
2 flash
3 ...
b 了解主流的浏览器 ----------------------------------例6 IE8和FIREFOX 举例
1 不同浏览器对于脚本的支持程度
2 XSS的攻击范围包括POST请求
form表单方式----------------------例子7 DOM节点方式
XMLHTTPREQUEST方式---------------------例子8 AJAX方式
3 XSS构造技巧
1 利用字符编码
2 绕过长度限制
3 使用<base> 标签
4 window.name跨站攻击
5 不规范的脚本代码绕开过滤器
3 常见的能注入的HTML代码--P99例子
XSS防御篇
1 如何防御XSS?
a 高质量的代码(不现实,成本过高)
b 前台后台过滤一切可疑符号,PS-如果没有后台,那么也就没意义了(效果明显,但用户体验会变差,比如用户资料里面的文本输入不允许“” <>)
c 制定相对适合自身项目的策略(推荐)
1 HTTPONLY
微软在IE6时提出的一种策略,目前已经是一种标准,他规定禁止脚本语言访问带有httponly属性的cookie。
这样可以有效对关键cookie信息进行保护,------------例子 获取COOKIE的实例
2 选择性的禁用部分标签《IFRAME》《SCRIPT》《BASE》《FORM》需要严格禁用,可以允许部分安全标签
3 针对DOM BASE XSS特别防御
P103
参考资料
1 白帽子讲WEB安全
2 URL
3 URL
4 WEB黑客功防实例
XSS学习