pikachu靶场XSS通关攻略

1.反射型xss(get)

在输入框中输入1 发现1会停留在页面上 可以尝试xxs攻击

当我们输入弹窗的js代码时 发现输入框的长度不允许我们输入过长的语句

我们可以打开网站控制台(f12)修补一下输入框的长度

我们把20改成50即可输入剩下的js代码 就会出现弹窗

<script>alert(1)</script>

2.反射型xss(post)

第二关点一下提示 会让我们进行登录

登录之后可以看到输入框

然后输入js恶意代码 可以弹窗

<script>alert(1)</script>

3.存储型xss

这里是一个留言板功能

输入一个1 可以进行留言功能

尝试输入js恶意代码 <script>alert(1)</script>

页面就会出现弹窗

因为他是存储型xxs 当我们点击别的页面 然后再回来这个页面时还会自动弹窗

我们只能再数据库中进行删除

打开PHPstudy里的软件管理中的mysql管理工具

输入数据库的账号和密码进行登录

点击数据库中的pikachu数据库

然后点击message

可以看到我们刚才构造的js语句 进行删除即可关闭自动弹窗

4.DOM型xss

这一关会用到点击事件οnclick=''

我们在输入框中输入οnclick='alert(1)' 点击之后发现报错了

我们查看网页源代码 可以发现前面需要一个引号来闭合前面的语句才可以

我们加一个单引号尝试有没有弹窗 发现页面出现弹窗 说明存在xxs漏洞

5.DOM型xss-x

这一关也是点击事件触发弹窗

这一关同上一关 只不过是点击的次数不一样 这里是点击第二次会有弹窗

'οnclick='alert(1)'

6.xss之盲打

当我们将恶意js代码提交到后台时 当后台管理员进行登陆时 会自动执行我们输入的js代码

在输入框中输入恶意js代码 <script>alert(1)</script>进行提交

我们登录后台管理就会出现恶意弹窗

7.xss之过滤

当我们在输入框中输入恶意的js代码后发现页面没有出现弹窗

我们去查看网页的源代码 看看是不是闭合方式的问题

我们需要使用单引号把前面的代码闭合 然后写我们的js代码

然后发现加上单引号也不能显示弹窗 考虑js代码是否被过滤

尝试使用大小写混写看一下 发现可以出现弹窗 '<sCript>alert(1)</sCript>

8.xss之htmlspecialchars

这一关也是使用点击事件js代码 οnclick='执行代码'

当我们在输入框中输入οnclick='alert(1)'时 发现点击也无法出现弹窗 出现报错

我们查看网页源代码 发现闭合方式不对 需要在前面使用单引号闭合 然后输入我们执行的js代码

当我们输入'οnclick='alert(1)'时 页面出现弹窗

9.xss之href输出

这一关使用JavaScript协议来进行弹窗

javascript:alert(1)

10.xss之js输出

这一关我们正常输入恶意弹窗代码 <script>alert(1)</script>

然后发现页面没有任何回显

我们查看网页源代码 发现需要先闭合前面的<script>标签 后面再输入我们的恶意js代码

再输入这个 </script><script>alert(1)</script> 页面出现弹窗

相关推荐
ssshooter1 小时前
Tauri 项目实践:客户端与 Web 端的授权登录实现方案
前端·后端·rust
兆子龙1 小时前
【React】19 深度解析:掌握新一代 React 特性
前端·架构
Moment1 小时前
MinIO已死,MinIO万岁
前端·后端·github
无双_Joney2 小时前
心路散文 - 转职遇到AI浪潮,AIGC时刻人的价值是什么?
前端·后端·架构
有意义2 小时前
深度拆解分割等和子集:一维DP数组与倒序遍历的本质
前端·算法·面试
小怪点点2 小时前
vue3使用
前端·vue.js
进击的尘埃2 小时前
Vitest 自定义 Reporter 与覆盖率卡口:在 Monorepo 里搞增量覆盖率检测
javascript
进击的尘埃2 小时前
E2E 测试里的网络层,到底该怎么 Mock?
javascript
Bigger3 小时前
CSS 这些年都经历了什么?一次看懂 CSS 的演化史
前端·css·前端工程化
DevUI团队3 小时前
🚀 【Angular】MateChat V20.2.2版本发布,新增8+组件,欢迎体验~
前端·javascript·人工智能