🍬 博主介绍
- 👨🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~
- ✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】
- 🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
- 🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
- 🙏作者水平有限,欢迎各位大佬指点,相互学习进步!
目录
一、反射型xss(get)
反射型XSS(不会存在数据库里面,一般出现在查询页面)
反射型XSS,又称非持久型XSS,攻击相对于受害者而言是一次性的,具体表现在受害者点击了含有的恶意JavaScript脚本的url,恶意代码并没有保存在目标网站,而Web应用程序只是不加处理的把该恶意脚本“反射”回受害者的浏览器而使受害者的浏览器执行相应的脚本。
XSS 具体内容看:pikachu靶场通关之XSS(一)__PowerShell的博客-CSDN博客
本篇文章讲 pikachu 反射型 XSS 之 get 型 过关详解。
文章不是直接给出 payload 就完事儿,而是直接分析详解 包含 payload。
二、过关:
1. 页面
2. 首先确认一下这个页面是否存在xss漏洞
在对应点输入一些特定的字符 如 ‘“<>6666
主要是为了测试:
1.特殊字符会不会被过滤
2.验证输入会不会输出
3.输出会不会被处理
发现原封不动的输出
根据思路 看一下源码
Ctrl+f查找6666
发现我们输入的’”<>6666直接被输出在了html源码的p标签里面
也就意味了 我们输入的 原封不同的输出到了p标签中
也就意味着我们输入javascript代码也会被原封不同的·输出
回到输入点输入一个简单的payload:<script>内容</script>
输入时发现 输入以下字符后输入不进去了
很多前端都会对输入框做一个长度的限制 此关就如此
这种安全措施是没用的
所有在前端做的安全措施只能当作辅助来用 不能正真的起到效果
3. 字符长度限制
发现字符最长度为20 我们可以更改
我们改为2000 就可以随意输入了
4. 输入payload
然后接着输入javascript代码
<script>内容</script>
<script>alert('xss')</script> //弹窗显示内容为xss
5. 查看网页源码:
这个数据从前端输入 后端接收 没有存储 后端再输出
重新刷新页面 这个代码就没有了
三、通过后端代码分析产生漏洞的原因:
表单 就是前端看到的输入框
提交后 判断是否为空 是否为kobe 不是 原封不动输出
这样就形成了xss漏洞
四、反射型xss利用场景:
pt><script>alert("1")</script>
重新输入payload 字符串限制改为2000
是以get方式提交到后台 进行了url编码
我们通过url就可以执行我们之前的代码
直接浏览器访问url
也就是说get型的xss是比较好利用的
比如说某个论坛出现了一个xss漏洞
我们就可以精心的去设置一个javascript 不仅仅是弹窗 可以发挥想象去做任何的事情
可以构造一个对应的payload
把整串url发送给需要攻击的目标
一旦受害者点击了这个域名(链接)
看到这个域名是比较著名的域名 觉得链接没有问题
一旦点击链接 这个url以get方式向后台提交了一个恶意的JavaScript的payload
又被返回回来 就把自己给x到了(获取cookie 钓鱼 键盘记录等等)
五、专栏分享
每个专栏都在持续更新中~~~