Pikachu-Cross-Site Scripting(XSS)

反射型xss(get)

先尝试最简单的payload,发现不能输入了,查看html代码定位到这个输入框发现最大长度只能输入20

直接通过修改html源代码,将payload输入完毕,完成漏洞

反射性xss(post)

根据提示输入用户名和密码,此处的用户名和密码由之前的爆破得到

进入之后我们输入payload获取cookie

payload:<script>alert(document.cookie)</script>

存储型xss

直接输入payload

123123asdfasf
<img src="1" onerror=alert("attack")> 

DOM型xss

输入内容后发现这个就是下面的连接内容

使用与标签契合的payload,可以看到标签改变了,那么点击就能获取到cookie

payload:javascript:alert(document.cookie)

这题也可以使用闭合的方法,但是发现是单引号,这里我不太理解为什么是单引号,求各路大神指点指点

payload:'> <img src="1" onerror=alert(1)>

DOM型xss-x

这题就是在上一题的基础上多加了一个链接跳转,payload与上一题一样,无差别

xss盲打

直接在界面上输入payload,但是看不到任何效果,我们通过后台登录查看

登录后台查看,已经生效

xss之过滤

先输入一段payload看看有什么反应,好像是被过滤了

试试大小写绕过,成功

xss之htmlspecialchars

什么是htmlspecialchars?

htmlspecialchars(),函数功能就是把特殊符号,比如尖括号,引号转换成实体编码,这样就不会再输入的地方去干扰页面源代码。经过实体字符编码后,用户输入的特殊符号在源代码中就变成编码,但是在页面输出的时候,还是会显示成原来的样子。当输出位置在元素内容里面,并且被实体编码后,基本上就没有XSS的可能了。

先输入一段正常的payload,查看源代码

发现有些东西被转义成了html实体编码,我们避免输入这些,想办法进行绕过

可以看到这个是与标签有关的payload

payload:javascript:alert(1)

xss之href输出

先输入一段payload提交,看到是a标签

使用javascript:alert(1)

xss之js输出

先输入内容,查看源代码

接下来绕过


__EOF__

本文作者诗酒于人
本文链接https://www.cnblogs.com/iplkcc/p/16890637.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   诗酒于人  阅读(29)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示