Fiddler使用X5S插件查找XSS漏洞

一、X5S是什么

1、X5S是专门帮助渗透测试人员查找网站的XSS漏洞的,是Fiddler中的一个插件,是一个WebDebugging Proxy;

2、X5S使用fiddler的包记录技术,并通过在每个请求中添加一条序文(Preamble),来找出包中的哪些请求可能存在XSS漏洞。但用户需要了解XSS和encoding编码知识,因为所有和XSS相关的工作都要手动完成。

3、X5S就是去检测需要用户输入的地方有没有被正确编码。有时Unicode字符转换可能bypass一些安全过滤,所以也会检测这种字符转换。

4、该插件会查看URL中的请求和响应,之后尝试注入XSSpayloads来确定是否存在XSS漏洞

********需要注意的是:该工具基本上只能检测反射型XSS问题,不能检测基于DOM的XSS漏洞,也不能检测存储型XSS,因为这种漏洞的数据不会在请求和响应的参数中出现。要想检测这两种漏洞,读者需要用额外的工具。

二、X5S的下载安装

1.下载地址:http://xss.codeplex.com/releases/43170/download/115610

2.下载后直接安装,重启fiddler后,可以看到X5S的插件标签入口,如:


1.png

三、X5S的配置

1.进入Fiddler,打开X5S标签,选择顶部的enable复选框,之后在Preamble文本框输入XSS。这里可以输入任意单词,但要确保不是常见的词,X5S会用该选项注入请求的每个参数中。

2.选择“EnableDomain Name Targeting”前面的复选框,并添加域名,这里可以添加所有想要测试的域名,而且可以添加多个

3.选中“Request”和“Responses”前面的复选框,并在“AutoInjection Options”下选中所有复选框

配置后如下:


2.png

四、测试用例配置

1.X5S的标签下面还有三个子标签,单击第二个“TestCase Configuration”,在该标签下可以配置X5S的测试用例,即探测字符,包含三种类型:

(1)可转换测试用例(Transformable):探测字符可能是大写的、小写的、以及转换为其它形式

(2)传统测试用例(Traditional): XSS注入使用的字符。这些注入字符包括”、’、<和>。如果不经过适当过滤,这些字符可能是引起XSS漏洞的主要问题所在。

(3)超长UTF-8测试用例(Overlong):这种测试用例会注入non-shortestUTF-8编码或传统测试用例,例如ASCII字符<的UTF-8格式为0x3C。

选择想要测试的字符。这里可以选择任意多个,或直接全选。之后就可以开始XSS攻击,挖掘注入点了


3.png

五、测试结果查看

1、开始一个页面一个页面地测试所有forms,测试后在Result标签查看扫描结果。如果显示搜索结果,说明网站可能存在XSS漏洞。单击其中的任意一条扫描结果,可以在下面的文本区域查看细节描述。


4.png

2、选择某条结果,下面的文本区域就会显示细节描述,如加上XSS字符后是如何发现preamble的。查看细节描述并分析,描述中的红字部分,显示了页面中preamble的信息。

下一步要做的就是查找疑似包含漏洞的URL。Fiddler左侧记录了之前访问过的URL,我们要做的就是找出包含漏洞的URL请求。查看记录,找到用灰色高亮的请求地址。如下图所示:


5.png

3、查找疑似包含漏洞的URL。Fiddler左侧记录了之前访问过的URL,我们要做的就是找出包含漏洞的URL请求。查看记录,找到用灰色高亮的请求地址,右击该条记录,选择copy下的“JustURL”,拷贝该请求URL


6.png

4、打开浏览器,将该地址拷贝到浏览器,并用自己的XSS payloads替换地址中的preamble字符

常见的XSS payloads如下:

<script>alert(1)</script>
“><script>alert(1)</script>
</style><script>alert(1)</script>
“)</script><script>alert(1)</script>
“><img src=”a” onerror=”prompt”>

这种情况下有很多XSS payloads可用,上文中的这些payloads如果显示一个Javascript警告框并显示1,就说明执行成功了。因为在payloads中插入 了alert(1),弹出了对话框就表示网站执行了我们的自定义脚本,也就是说该站存在XSS漏洞。


7.jpg

六、总结

X5S是一个很不错的Fiddler插件,可以用作查找XSS漏洞的渗透测试工 具。不过只有理解了XSS的基本原理,以及存在多少种方法注入Javascript代码之后再使用该工具。如果用户不擅长手工XSS测试,该工具无疑只是 个鸡肋。但对专业XSS测试人员,使用该工具可能是查找web应用的XSS漏洞的最快方式。通过本文的示例可知,该工具找到了所有可能存在XSS漏洞的可 疑热点(hotspots),用户只需要测试这些热点,并确认哪里可以执行外部脚本,如果可以注入就表示成功了。否则就继续测试,直到测试完所有的XSS payloads。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.这些水果中哪种水果最甜?西瓜最甜。 これらの果物の中でどの果物が一番甘いです スイカは最も甘い 2.和夏天相比...
    红橘子和绿柚子阅读 493评论 0 0
  • 我想穿过四季拥抱你,在春天漫步在樱花盛开的大道,看细碎花瓣飘落肩头,扫去你眉间的郁结。 我想穿过四季拥抱你,在夏天...
    不安的芒果君阅读 471评论 0 0
  • 你还来看我 你还来看我时 抬头看天 不下雨时天不再与你 有关 不起风时 我也不会与你有关 你看树,侧身让过的鸟 你...
    张天狗阅读 181评论 0 0