XSS练习

  1. 1.  XSS (Reflected)  Low level

最基本的测试,在input框中输入 <script>alert(1)</script>页面出现下面的效果

 

出现我们期望的结果 说明存在xss反射型漏洞

  1. 2.  XSS (Reflected)  medium level

同样用上面的方法测试 发现页面并没有出现预想的结果,接着换另一种方法,

 

通过输出的内容可以发现 之前输入过的<script>并没有显示,猜测很可能是被过滤掉了,由于代码执行的时候只能过滤一次,利用这个特性,在input框中输入 <scr<script>ipt>alert(1)</scr</script>ipt>

 

这时候 发现竟然还是不可以,然后按F12查看一下Hello处的元素 发现有趣的东西,

 

这时候终于明白了,只过滤了前面的没有过滤后面的 因此 在输入框中输入 <scr<script>ipt>alert(1)</script> 终于出现了预想的效果

 

  1. 3.  XSS (Reflected)  High level

这次依然是按照流程走一遍,先输入 <script>alert(1)</script>,出现了下面诡异的现象,比上一个出现的信息更少。

 

然后开始用大小写的方式绕过试一下,发现也不行,猜测可能直接把整个语句都过滤掉了,这时换另一种方式,利用img标签(当然其他标签也可以),在输入框中输入 <img src=a onclick=alert(1)/> 这时发现这种方法竟然可以

 

ß-------------------------我是分割线--------------------------à

  1. Xss挑战 1

 

给出这样的一个场景,到处瞅了瞅发现没有输入框,这是考虑可能是get类型传参,看向地址栏 发现了端倪。

 

开始测试: 先将这里的test修改为 <script>alert(1)</script> 出现了不可思议的画面

 

换浏览器,

 

emmm......换浏览器果然好使。

  1. Xss挑战 2

 

一眼望去 可以判断是post类型。老办法,在输入框中输入  出现了下面的情况,说明没有成功

 

这时去查看元素发现,之前输入的内容出现在了value中

 

这时就要想方法将 输入的内容给隔离出来 使其能够执行,因为字符串是不能够运行的。在这里方法比较多,我用的是 构造一个新的标签,将前面的标签闭合先,在input框中输入 "> <script>alert(1)</script>

 

  1. Xss挑战 3

这次学聪明了 先查看一下源代码,看是否有特殊的代码

 

细心的人就会发现 这里竟然是单引号,坑。

利用上题的思路 输入 ' > <script>alert(1)</script> 又遇到坑 竟然不行,依旧是查看源代码 发现 对方将尖括号进行了转义,这时就想到了另一种方法,不构造一个新的标签,直接操作这个标签,利用事件进行绕过,输入 ' onfocus=alert(1) ',终于成功!

 

  1. Xss挑战 4

 查看源代码 跟第二题存在相同的情况,在input框中输入 " onclick=alert(1) 一次性成功。

 

  1. XSS挑战 5

同样的查看源代码 跟第二题存在相同的情况,

 

用第二题的方法进行测试,失败 查看源代码 看到 这里的script被做了手脚

 

换用第三题的方法发现 onclick也被做了手脚。

 

这时候 换用一下大小写混合试试,貌似也不行如今 script 与事件都不能用了 ,试试另一个方法 <iframe src=javascript:alert(1);> 成功

 

  1. XSS挑战 6

 

同样存在第五题的情况,先大小写混合试试,没想到一次性成功 " Onclick=alert(1) >

猜你喜欢

转载自www.cnblogs.com/Abelte/p/8982593.html
xss