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> 页面出现弹窗

相关推荐
杰克尼3 分钟前
JavaWeb_p165部门管理
java·开发语言·前端
EndingCoder4 分钟前
WebSocket实时通信:Socket.io
服务器·javascript·网络·websocket·网络协议·node.js
90后的晨仔5 分钟前
Vue3 状态管理完全指南:从响应式 API 到 Pinia
前端·vue.js
90后的晨仔20 分钟前
Vue 内置组件全解析:提升开发效率的五大神器
前端·vue.js
我胡为喜呀23 分钟前
Vue3 中的 watch 和 watchEffect:如何优雅地监听数据变化
前端·javascript·vue.js
我登哥MVP1 小时前
Ajax 详解
java·前端·ajax·javaweb
非凡ghost1 小时前
Typora(跨平台MarkDown编辑器) v1.12.2 中文绿色版
前端·windows·智能手机·编辑器·软件需求
馨谙1 小时前
/dev/null 是什么,有什么用途?
前端·chrome
JamSlade2 小时前
流式响应 sse 系统全流程 react + fastapi为例子
前端·react.js·fastapi
徐同保2 小时前
react useState ts定义类型
前端·react.js·前端框架