WEB:wife_wife

背景知识

                JavaScript原型链污染

题目

先尝试一下,注册了管理员账号

这里不知道邀请码,所以没有勾选 

 答案不正确

这里借鉴其他大佬的思路

查看源代码才知道,后端没有数据库,所以sql注入是不可能的

// post请求的路径
app.post('/register', (req, res) => {let user = JSON.parse(req.body)  // 把我们输入的账号密码,从json字符串转成对象// 判断我们有没有输入账号和密码if (!user.username || !user.password) {  return res.json({ msg: 'empty username or password', err: true })}// 判断账号是否存在总对象的username里,如果相同的username就是重复用户名了if (users.filter(u => u.username == user.username).length) {  return res.json({ msg: 'username already exists', err: true })}// isAdmin是否true 与 邀请码是不是等于这个常量,所以sql注入没用,邀请码是个常量if (user.isAdmin && user.inviteCode != INVITE_CODE) {user.isAdmin = falsereturn res.json({ msg: 'invalid invite code', err: true })}// 使用系统函数复制对象,打包成一个新的对象let newUser = Object.assign({}, baseUser, user)users.push(newUser)  // 存到总对象里res.json({ msg: 'user created successfully', err: false })  // 设置返回信息
})

重新整理思路,进行原型链污染测试

看了这部分源码能判断出,如果这个登陆的对象里,isAdmin的属性是true,那就证明是一个管理员,如果是普通注册的用户,isAdmin属性是false

重新注册然后用bp进行抓包,根据上述思路,直接污染即可

 到最后我也没有成功拿到flag,后面复盘一下步骤

待更新

参考学习链接:
【web | CTF】攻防世界 wife_wife_天命传说的博客-CSDN博客

【愚公系列】2023年06月 攻防世界-Web(wife_wife)_愚公搬代码的博客-CSDN博客

 

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

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

相关文章

【网络】应用层——协议定制 | 序列化和反序列化 | 初识http

🐱作者:一只大喵咪1201 🐱专栏:《网络》 🔥格言:你只管努力,剩下的交给时间! 在前面本喵已经带大家见识过了scoket网络通信的样子,现在开始深入学习网络的原理&#xff…

机器学习 day29(高偏差、高方差,参数d对模型的影响)

1. 高偏差、高方差、拟合能力、泛化能力 偏差和方差分别代表拟合能力和泛化能力若给左图数据集拟合一阶多项式(d取1),则该模型有很高的偏差(欠拟合)。因为它对训练集和验证集的表现均不好,所以Jtrain很高…

快手内推(2024校招,社招)

校招 校招可以直接投递,如果想投递指定部门或岗位的可以私聊我。可以帮看简历和面试状态,加快推进。 内推码:vlxMTFNBS 专属内推链接:https://campus.kuaishou.cn/#/campus/jobs?codevlxMTFNBS 社招 社招内推私聊,可…

[Java]详解什么是注解以及如何自定义注解?

文章目录 一、什么是注解(1).注解的作用(2).注解的格式(3).注解在哪里使用 二、注解的类型(1).内置注解(2).元注解(3).自定义注解 三、自定义注解实现及测试结果: 一、什么是注解 (1).注解的作用 ①:注解一般用于对程序的说明,就像注释一样…

windows系统修改mysql8配置文件,关闭ssl验证

如何寻找配置文件 我的电脑,右键,管理,服务 找到MySQL8 右键,属性 找到配置文件位置 通常情况下的默认路径是: C:\ProgramData\MySQL\MySQL Server 8.0\my.ini 如何关闭SSL验证 打开 my.ini 配置内容如下&#x…

【100天精通python】Day7:数据结构_列表 List的创建、删除、访问、遍历、统计、排序、推导等使用

目录 1 列表的创建 2 列表的删除 3 访问列表元素 4 遍历列表 5 添加修改删除列表元素 6 对列表进行统计和计算 7 对列表进行排序 8 列表推导式 9 多维列表 在Python中,列表是一种有序的可变数据类型,用于存储一组元素。 列表使用方括号“[] ”来…

Qt5.14.2下载及安装

1. 下载 https://download.qt.io/archive/qt/5.14/5.14.2/ 由于Qt 自从5.15版本开始,对非商业版本(也就是开源版本),不提供已经制作好的离线exe安装包。所以,对于5.15(含)之后的版本&#xff…

Idea 设置类和方法的注释(获取参数)

Idea 添加注释:类注释、方法注释 类注释 方法注释 类注释 File–Setting–Editor–File and Code Templates–Class: 注释模板: /** **description: *author: fqtang*time: ${DATE} ${TIME}* */ 操作截图: 效果: 方法注释 为了…

图数据库Neo4j学习二——cypher基本语法

1命名规范 名称应以字母字符开头,不以数字开头,名称不应包含符号,下划线除外可以很长,最多65535( 2^16 - 1) 或65534字符,具体取决于 Neo4j 的版本名称区分大小写。:PERSON和:Person是:person三个不同的标签&#xff…

Jmeter+Jenkins+Ant自动化持续集成环境搭建

一、安装准备 1.JDK:jdk-8u121-windows-x64 2.jmeter工具:apache-jmeter-2.13 3.ANT工具:apache-ant-1.9.7-bin 4.jenkins工具:jenkins-2.32.2 二、软件安装 1.JDK的安装 >双击JDK安装包,选择安装路径(本人是…

详细总结Webpack5的配置和使用

打包工具 使用框架(React、Vue),ES6 模块化语法,Less/Sass 等 CSS预处理器等语法进行开发的代码要想在浏览器运行必须经过编译成浏览器能识别的 JS、CSS 等语法,才能运行。 所以需要打包工具帮我们做完这些事。除此之…

3、C# 方法构成

上一节,我们讲述了程序的基本构成。由大到小分别为”解决方案-->项目-->类-->方法“。 这一节,我们讲讲方法。 方法可以说是程序的基本构成单位。假如把方法抽象成点的话,我们可以认为程序是一个树状的结构。树根,就是我们的起点方法,也叫主方法。这一点,基本…

决策树(Decision Tree)

决策树的原理 决策树算法是一种基于树结构的分类和回归算法。它通过对数据集进行递归地分割,构建一个树形模型,用于预测目标变量的值。 决策树的构建过程基于以下原理: 1. 特征选择:选择最佳的特征来进行数据集的分割。常用的…

堆排序与直接选择排序

目录 一、直接选择排序 1.基本思想 2.直接选择排序的特性总结 3.代码实现: 二、堆排序 1. 概念: 2.图像实现: 3.代码实现: 一、直接选择排序 1.基本思想 每一次从待排序的数据元素中选出最小(或最大&#xff09…

MySQL多表连接查询练习

准备工作 创建student表 CREATE TABLE student ( id INT(10) NOT NULL UNIQUE PRIMARY KEY , name VARCHAR(20) NOT NULL , sex VARCHAR(4) , birth YEAR, department VARCHAR(20) , address VARCHAR(50) );创建score表 CREATE TABLE score ( id INT(10) NOT …

NetSuite ERP顾问的进阶之路

目录 1.修养篇 1.1“道”是什么?“器”是什么? 1.2 读书这件事儿 1.3 十年计划的力量 1.3.1 一日三省 1.3.2 顾问损益表 1.3.3 阶段课题 2.行为篇 2.1协作 2.2交流 2.3文档管理 2.4时间管理 3.成长篇 3.1概念能力 3.1.1顾问的知识结构 …

大数据学习05-Kafka分布式集群部署

系统环境:centos7 软件版本:jdk1.8、zookeeper3.4.8、hadoop2.8.5 本次实验使用版本 kafka_2.12-3.0.0 一、安装 Kafka官网 将安装包上传至linux服务器上 解压 tar -zxvf kafka_2.12-3.0.0.tgz -C /home/local/移动目录至kafka mv kafka_2.12-3.0…

护城河理论

护城河理论 护城河理论|来自股神巴菲特,是指投资的企业在某一方面的核心竞争力。 模型介绍 在2000年的伯克希尔哈撒韦的年会上,巴菲特说:让我们来把护城河作为一个伟大企业的首要标准,保持它的宽度,保持它不被跨越。我…

听GPT 讲K8s源代码--pkg(五)

在 Kubernetes 中,kubelet 是运行在每个节点上的主要组件之一,它负责管理节点上的容器,并与 Kubernetes 控制平面交互以确保容器在集群中按照期望的方式运行。kubelet 的代码位于 Kubernetes 代码库的 pkg/kubelet 目录下。 pkg/kubelet 目录…

数学建模-分类模型 Fisher线性判别分析

论文中1. 判别分析系数 2. 分类结果 多分类问题 勾选内容和上面一样