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

相关推荐
WeiXiao_Hyy30 分钟前
成为 Top 1% 的工程师
java·开发语言·javascript·经验分享·后端
吃杠碰小鸡1 小时前
高中数学-数列-导数证明
前端·数学·算法
kingwebo'sZone1 小时前
C#使用Aspose.Words把 word转成图片
前端·c#·word
xjt_09011 小时前
基于 Vue 3 构建企业级 Web Components 组件库
前端·javascript·vue.js
我是伪码农1 小时前
Vue 2.3
前端·javascript·vue.js
夜郎king2 小时前
HTML5 SVG 实现日出日落动画与实时天气可视化
前端·html5·svg 日出日落
辰风沐阳2 小时前
JavaScript 的宏任务和微任务
javascript
夏幻灵3 小时前
HTML5里最常用的十大标签
前端·html·html5
冰暮流星3 小时前
javascript之二重循环练习
开发语言·javascript·数据库
Mr Xu_3 小时前
Vue 3 中 watch 的使用详解:监听响应式数据变化的利器
前端·javascript·vue.js