XSS

Pikachu-XSS

Posted by Tattoo on 2019-04-29
Estimated Reading Time 1 Minutes
Words 340 In Total
Viewed Times

XSS之过滤

提示有过滤

1
输入<script>alert(1)</script>

没有完整的输出
很明显有东西被过滤了
找出被过滤的东西

alert成功输出
script成功输出

<script>失败
script>成功输出
<script失败

过滤了<script,没有过滤alert

1
2
尝试更换img标签
<img src=x onerror=alert(1)>

成功弹框

XSS之htmlspecialchars

htmlspecialchars函数
预定义字符(&,’,”,<,>)转换为 HTML 实体,默认仅编码双引号
输入的单引号没有被过滤的话,经过htmlspecialchars后拼接到html语句中会自动换成双引号

F12查看源码

发现输入的字符串被插入到a标签的href属性

1
输入'asd'asd'

第一个单引号被换成双引号,而中间和后面的单引号没有被改变

构造a标签的onclick事件

1
' onclick='alert(1)'

成功弹框

XSS之href输出

与上一题一样,输入的字符串被插入到a标签的href属性中

很多HTML标记中的属性都支持javascript:[code]伪协议的形式
使用这种方法执行js

1
javascript:alert(1)

成功弹框

XSS之js输出

输入的字符串被插入到js代码中的ms变量中

构造闭合变量,然后用注释符//注释后面的单引号和分号

1
';alert(1);//

成功弹框


If you like this blog or find it useful for you, you are welcome to comment on it. You are also welcome to share this blog, so that more people can participate in it. If the images used in the blog infringe your copyright, please contact the author to delete them. Thank you !