那些年我们一起学XSS

上传人:mg****2 文档编号:123761183 上传时间:2020-03-10 格式:DOC 页数:112 大小:3.70MB
返回 下载 相关 举报
那些年我们一起学XSS_第1页
第1页 / 共112页
那些年我们一起学XSS_第2页
第2页 / 共112页
那些年我们一起学XSS_第3页
第3页 / 共112页
那些年我们一起学XSS_第4页
第4页 / 共112页
那些年我们一起学XSS_第5页
第5页 / 共112页
点击查看更多>>
资源描述

《那些年我们一起学XSS》由会员分享,可在线阅读,更多相关《那些年我们一起学XSS(112页珍藏版)》请在金锄头文库上搜索。

1、目录1. 什么都没过滤的入门情况12. 输出在<script></script>之间的情况33. 输出在HTML属性里的情况54. 宽字节复仇记 QQ邮箱基本通用105. 反斜线复仇记136. 换行符复仇记177. 宽字节、反斜线与换行符一起复仇记198. Dom Xss入门 显式输出229. Dom Xss入门 隐式输出2610. Dom Xss进阶 邂逅eval3411. Dom Xss进阶 善变iframe3812. Dom Xss进阶 路径con4213. Dom Xss实例 Discuz X2.54714. Flash Xss入门 navigateToURL5

2、115. Flash Xss进阶 ExternalInterface.call第一个参数5616. Flash Xss进阶 ExternalInterface.call第二个参数6117. XSS过滤器绕过 通用绕过6718. XSS过滤器绕过 猥琐绕过6919. 存储型XSS入门 什么都没过滤的情况7220. 存储型XSS入门 套现绕过富文本7621. 存储型XSS进阶 猜测规则,利用Flash addCallback构造XSS791. 什么都没过滤的入门情况只是些反射型XSS,单单发出来没有什么意义。 只是些反射型XSS,腾讯怎么修都修不完。只是些反射型XSS,我想让它变得更有价值。只是些

3、反射型XSS,我拿他们做成了教程。1. XSS的存在,一定是伴随着输入,与输出2个概念的。2. 要想过滤掉XSS,你可以在输入层面过滤,也可以在输出层面过滤。3. 如果输入和输出都没过滤。 那么漏洞将是显而易见的。4. 作为第一个最基础的例子, 我们拿出的是一个什么都没过滤(其实还是有些转义的,主要没过滤)的例子。 这种例子出现在腾讯这种大网站的概率不是很高。 但是还是让我找到了一个。5. http:/ 对于上面这个例子。我们可以看到什么是输入,什么是输出。7. 经过测试,我们发现,score这个【输入】参数,没有进行任何过滤,即,输入是什么,输出就是什么? 通俗点就是“吃什么,拉什么”。如下

4、图:网页中看到的效果如下:8. 既然可以直接输入 HTML标签,接下来的利用也就相对简单了。http:/ 通常,我们只需要在输出前,将 过滤掉即可。b. 这类XSS在小型网站中比较常见,在大型网站中少见。c. 这类XSS通常都被浏览器的XSS过滤器秒杀了,所以一般来说,威力较小。d. 对于普通用户来说,请使用IE8及以上版本(并开启XSS过滤器功能,默认开启),或chrome浏览器,将可以防御大部分此种类型的XSS攻击2. 输出在<script></script>之间的情况接着上面一个教程,我们继续。这个例子属于第一例的特殊情况,当然也有特殊解法。也属于非常常见的一种情

5、况。 1. 我们找到这么一个点,也是输入和输出都未过滤的一个点。相比教程第一例,其特殊之处在于,是输出在了 输出之间。http:/ 在【查看源代码】下,我们可以看到。缺陷网页源代码:document.domain=;_ret=_res:2;tryparent.aaa(_ret);catch(err)aaa(_ret);2. 碰到这种情况,我们一般有以下解法。2.1 首先判断,是否过滤了 , / 等符号,2.2 如果都没有过滤,恭喜你,一般可以直接XSS了。代码如下:http:/ 如果过滤了 ,那么就无法使用上面的办法了。我们接着看 33. script代码里的构造。友情提示:这里可能需要一点点

6、 javascript 的知识才行哦我们可以如下构造:http:/ 这种输出在JS代码里的情况十分常见,但是呢?不幸的是,像这样没过滤的情况,却不是很常见。例如:var a=输出; / 通常程序员会把 过滤掉, 这样的话,一般来说,我们就很难构造。但是,这并不是说,就一定是不能利用,后面我们会拿腾讯一些【比较有意思】的例子,来进一步说到 这个【输出在js里】的情况的修复方案:这类XSS的模型通常是:.输出.输出.解决方案:1. 过滤 组合2. 针对输出在不同的场景,进行合适的过滤。3. 输出在HTML属性里的情况和前面的不一样的时,有时候,输出会出现在HTML标签的属性之中。 例如: 、 ,再

7、比如 . 这个时候怎么办呢?1. 大网站一般不是吃素的。前面讲到的基本情况,一般都很少遇到了。2. 这个时候我们可以把目光发展一下,找一找在【输出】出现在HTML属性里的情况。3. 最为典型的一种情况,是下面这样的。http:/ 关键词:如果这里的word没过滤双引号。就会有以下的情况发生。http:/ onclick=alert(1)对应的源代码如下:解析:那么当用户点击这个文本框时,就会触发 alert(1) 。4. 当然理想是美好的,现实总是残酷的,我水平有限,并没有在腾讯找到这样的例子。因为绝大部分这样的情况, 腾讯都会做出相应的过滤。过滤方法也挺简单,将 过滤为 " 就行。过滤后的代码如下:5. 一般来说,上面的情况,过滤了 ,可以说是高枕无忧了,但是事实并非如此。某些情况下。我们依然可以继续XSS。下面以腾讯为例。-6. 首先看第一种场景。http:/ 更重要的是,这里没有过滤 ,反斜线, 而 css里,允许使用转义字符, + ascii16进制形式。这样一来,我们就可以构造利用语句啦。这里过滤了expression, 我们也可以轻松的用expr65ssion绕过。http:/

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 设计及方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号