xss实战总结
1.输入 单引号,双引号,尖括号,scrpt标签等看看过滤了什么
2.闭合标签(前后闭合)
3.提取payload
后闭合
列:
我们输入的520被插入,但是发现后面还有个size=28 />才能闭合,所以我们提取的payload不光要闭合双引号的还要闭合后面的才能
插入 img标签,因为img标签本身就只能单独存在,不能插入属性中
所以构造payload:
" size=“28”/><img src=x οnerrοr=alert(‘xss’) />"
或者
" οnclick=alert(1) size=“28”/>
思路
1.可以插入数字
2.看看是否HTML实体化,如果实体化,并且过滤了单引号,则不存在xss跨站,如果没有过滤单引号则可以尝试’ οnclick='alert(520)'之内的标签
3.尝试字符看看过滤了哪些,特别是看看单引号,双引号,尖扩号有没有过滤
4.尝试script标签,过滤了就用 ’ οnclick='alert(520)'标签,不行就用img标签,在不行就在尝试其他标签
5.闭合前后,提取出payload
简单化
1.插入数字
2.实体化
3.过滤了啥
4.尝试并且取payload