BugKu -- XSS

XSS

100

http://103.238.227.13:10089/

Flag格式:Flag:xxxxxxxxxxxxxxxxxxxxxxxx

打开页面提示XSS注入,但是没有注入点啊。。。百度提示在url上加id参数。。

BugKu -- XSS_第1张图片

试试 ?id=1,有回显1,这下有注入点了 

 BugKu -- XSS_第2张图片

构造xss  

http://103.238.227.13:10089/?id=

进行了回显,没有执行xss,应该是过滤了

BugKu -- XSS_第3张图片

右键查看源码

... ...

分析源码,首先获取url里的id值赋值给s,接着赋值到div中,但是.innerHTML有个特性

如果字符串中拼接的 HTML 标签中有 script 标签,那么该段脚本是无法执行的,这并不是 bug,而是 w3c 的文档规定的

那就不用 script 喽 ,用 ,还是没有执行。

猜测 <> 可能有过滤,注意页面编码utf-8  ,id传入代码会在s中运行,那么考虑将<>进行unicode编码,这样当代码被替换进去运行时 utf-8编码又会将其变回来

详细内容看这里:https://blog.csdn.net/qq_26090065/article/details/81589817

< 的编码\u003C, > 的编码\u003E,构造 \u003cimg src="javascript:alert(_key_)"\u003e ,执行成功 ~ 右键源码查看flag

你可能感兴趣的:(ctf)