xss-labs-master靶场链接:https://pan.baidu.c服务器托管网om/s/1X_uZLF3CWw2Cmt3UnZ1bTw?pwd=gk9c
提取码:gk9c
xss-labs level 1 修改 url 地址中的name=,便可以通关
level 2在搜索框中输入的 JS 代码无法执行
查看网页源码可以发现表单提交的参数被存储在了value属性中
修改闭合方式来闭合value值,插入 js 代码便能执行
“>
level 3和上一关的情况差不多,输入值包含在value属性中
测试发现”>无法闭合属性值,可能是符号被转义
构造 poc 对响应包中的value属性进行闭合,提交后再次点击搜索框便会弹出弹窗
‘ nclick=’alert(1)
level 4查看第四关响应包,可以发现后台对尖括号进行了过滤
箭头 2 处却是把删除了但是,事件触发却不需要使用这两个符号。
直接使用事件闭合,注意这关的闭合符为双引号,提交后点击搜索框便会弹窗
” nclick=”alert(1)
” nfcus=javascript:alert(‘xss’) “
level 5查看响应包,可以发现
可以不使用
“>
“>
level 6和上一关类似,这次除了
而且标签的src属性和onerror属性也会被插入下划线
通过大小写转换可以绕过过滤
“>
level 7查看响应包,可以看到后台对script字符串进行了过滤
通过双写script字符串可以绕过过滤
“>
level 8[编码绕过]
从响应包可以看出,系统对表单中的双引号、尖括号进行了转义,在script字符串中插入了下划线(被编码在 href 属性值中script字符被插入了_字符破坏语义)
构造 poc 插入标签的href标签中,利用伪协议执行 JS 代码弹窗:
javascript:alert(1)
将 poc 进行 HTML 实体编码后提交,点击链接后便会弹窗
https://config.net.cn/tools/HtmlEncode.html
javascript:a
8;ert(1)
用来闭合引号的服务器托管网引号也被编码。
onfocus 一类的事件也被破坏尝试大小写绕过,也失败我们可以将要提交的 js 代码转成实体
level 9[检测关键字]用第 8 关的方式说链接不合法弹框的信息里面包含http://就可以了
提交的参数值插入到了标签的 value 属性值中
但是在标签的 href 属性中却并没有出现该参数值,
而是显示的 “您的链接不合法?有没有!”这样的字符串。
有可能是将我们的代码进行了过滤
只有包含正常的 url 地址才能添加到 href 属性值中构造一个有正常 url 地址的恶意代码:
javascript:alert(‘xsshttp://’)
弹框的信息里面包含http://就可以了
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
一些优势:比同类工具快2倍左右、节省磁盘空间 官网:pnpm – 速度快、节省磁盘空间的软件包管理器 | pnpm中文文档 | pnpm中文网 npm升级到yarn再升级到pnpm(速度更快) 安装方式:npm install -g pnpm 创建项目:pnp…