=========================================2019.4.19更改=================================================

昨天收到了confluence的一个路径穿越漏洞,所以在此记录,使用本教程的朋友请注意安全,或者升级到高版本,目前还没有尝试高版本的破解

发布时间 2019-04-18

更新时间 2019-04-18

漏洞等级 High

CVE编号 CVE-2019-3398

漏洞详情

Confluence Server和Data Center产品在downloadallattachments资源中存在一个路径穿越漏洞。有权向页面和(或)博客添加附件,或创建新空间或个人空间,或者对空间具有“管理员”权限的远程攻击者可以利用此漏洞将文件写入任意位置,最终导致远程代码执行。

影响范围

影响产品:

Confluence Server、Confluence Data Center

影响版本:

6.6.14之前的所有版本

所有6.7.x-6.11.x版本

6.12.4 之前的所有6.12.x版本

6.13.4 之前的所有6.13.x版本

6.14.3 之前的所有6.14.x版本

6.15.2 之前的所有6.15.x版本

修复方案

注意:安装升级前,请做好数据备份、快照和测试工作,防止发生意外

1.升级Confluence Server或Data Center版本:

6.6.13

6.13.4

6.14.3

6.15.2

2.执行官方缓解措施:

1)停止Confluence

2)编辑/conf/server.xml:

如果没有为 Confluence 配置 context path,则将以下代码添加至 元素中:

<Context path="/pages/downloadallattachments.action" docBase="" >

<Valapp className="org.apache.catalina.valapps.RemoteAddrValapp" deny="*" />

</Context>

如果已为 Confluence 配置了 context path,比如说 /wiki,则需要将以下代码添加至 元素中:

<Context path="/wiki/pages/downloadallattachments.action" docBase="" >

<Valapp className="org.apache.catalina.valapps.RemoteAddrValapp" deny="*" />

</Context>

3)保存文件,重启Confluence验证缓解措施是否生效:

访问含有2个或以上附件的页面/博客,点击… > 附件 > 下载全部,若返回404页面,则说明缓解措施已生效。

我目前已经将confluence升级到6.14.3 jira升级到了8.1.按照之前的办法依然可行,备份数据的时候出了一点小问题,抽空来记录一下

环境准备

$ yum -y install mariadb mariadb-devel mariadb-server
$ systemctl start mariadb

  

安装JDK并且配置环境

$ tar xf jdk-8u181-linux-x64.tar.gz -C /usr/local/
$ rpm -qa | grep java
$ ln -s /usr/local/jdk1.8.0_181/ /usr/local/java
$ vim /etc/profile.d/jdk.sh
export JAVA_HOME=/usr/local/java
export JRE_HOME=$JAVA_HOME/jre
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
$ source /etc/profile.d/jdk.sh
$ java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

数据库授权

$ create database confluence character set utf8 collate utf8_bin;
$ create database jira character set utf8 collate utf8_bin;
$ create database crowd character set utf8 collate utf8_bin;

$ grant all privileges on confluence.* to 'confluence'@'localhost' identified by 'Qy123456.';
$ grant all privileges on confluence.* to 'confluence'@'%' identified by 'Qy123456.';
$ grant all privileges on jira.* to 'jira'@'localhost' identified by 'Qy123456.';
$ grant all privileges on jira.* to 'jira'@'%' identified by 'Qy123456.';
$ grant all privileges on crowd.* to 'crowd'@'localhost' identified by 'Qy123456.';
$ grant all privileges on crowd.* to 'crowd'@'%' identified by 'Qy123456.';

$ flush privileges;

  

Confluence的安装

$ wget  https://product-downloads.atlassian.com/software/confluence/downloads/atlassian-confluence-6.10.0-x64.bin
$ chmod +x chmod +x atlassian-confluence-6.10.0-x64.bin
$ ./atlassian-confluence-6.10.0-x64.bin

破解jar包

$ mv /opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.4.1.jar /opt/

将这个包拷贝到/opt下,然后下载到windows系统中

下载java虚拟机

在这个网站http://www.java.com/zh_CN/上下载最新版虚拟机

安装完下载的java虚拟机

下载破解器(Windows上操作)

https://pan.baidu.com/s/1xlad7bMAh-RjZHeJdinc5A

解压后,点击confluence_keygen.jar

打开显示如下界面,然后通过.patch!选择刚才拷贝的atlassian-extras-decoder-v2-3.4.1.jar(改名为atlassian-extras-2.4.jar)

将产生的新的atlassian-extras-2.4.jar上传wiki服务器的/opt/atlassian/confluence/confluence/WEB-INF/lib下,同时修改回原来的名字

$ mv atlassian-extras-2.4.jar /opt/atlassian/confluence/confluence/WEB-INF/lib/atlassian-extras-decoder-v2-3.3.0.jar

同时将mysql-connector-java-5.1.44-bin.jarConfluence-6.0.0-m22-language-pack-zh_CN.jar也上传到/opt/atlassian/confluence/confluence/WEB-INF/lib

重启服务

$ service confluence restart

浏览器访问 ip:8090

将上图获得Server ID 通过破解器获得Key,然后复制粘贴

Name:可以随便填
Server ID:就是之前记录的Server ID
点击“.patch”选中atlassian-extras-2.4.jar
点击“.gen!”生成key
记下生成的key

等待完成

Jira的安装

https://www.atlassian.com/software/jira/download-archives

  

破解包步骤如Confluence(/opt/atlassian/jira/atlassian-jira/WEB-INF/lib/atlassian-extras-3.2.jar 拷贝到Windows系统上,改名为atlassian-extras-2.2.2.jar,使用工具破解,成功后,上传源目录,并改为原名。上传

mysql-connector-java-5.1.44-bin.jar )

要先将mysql-connector-java-5.1.44-bin.jar拷贝到/opt/atlassian/jira/atlassian-jira/WEB-INF/lib目录下

测试成功之后,点击下一步

在这一步的时候,破解jar包,方法同Confluence

atlassian-extras-3.2.jar

设置账号密码

等待完成

设置语言

设置头像,进行下一步

创建一个简单项目

开启jira管理

设置--->系统 修改语言

Crowd的安装

下载Crowd-3.2.1

$ wget https://www.atlassian.com/software/crowd/downloads/binary/atlassian-crowd-3.2.1.tar.gz

  

解压

$ tar -zxvf atlassian-crowd-3.2.1.tar.gz -C /usr/local
$ ln -s /usr/local/atlassian-crowd-3.2.1/ /usr/local/crowd

  

配置环境

$ vim /usr/local/crowd/crowd-webapp/WEB-INF/classes/crowd-init.properties
#取消注释
crowd.home=/var/crowd-home
$ mkdir /var/crowd-home

  

破解jar包,步骤如Confluence(/usr/local/crowd/crowd-webapp/WEB-INF/libatlassian-extras-3.2.jar改名为atlassian-extras-2.6.jar,破解完改完名,放回原位置,同时上传mysql-connector-java-5.1.44-bin.jar)

启动Crowd

/usr/local/crowd/start_crowd.sh

  

访问IP:8095

使用crowd_keygen.jar获取秘钥,方法如Confluence

登录

Crowd搭建完成

Jira+Confluence基于Crowd登录

在Crowd上创建组:

confluence-usersconfluence-administrators

jira-usersjira-developersjira-administrators

创建用户:

在confluence-administratorsconfluence-users组中添加confluenceadmin

在jira-usersjira-administratorsjira-developers组中添加jiraadmin

给用户添加组

confluence报错

隔离级别

如果出现mysql的数据库隔离级别必须为'READ-COMMITTED',进行如下操作即可

MariaDB [(none)]> SET GLOBAL tx_isolation='READ-COMMITTED';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.02 sec)

或者
[mysqld]
···
transaction-isolation=READ-COMMITTED
···

  

乱码

$ vim /var/atlassian/application-data/confluence/confluence.cfg.xml
<property name="hibernate.connection.url">jdbc:mysql://10.30.162.127:3306/confluence?useUnicode=TRUE&characterEncoding=utf-8&autoReconnect=TRUE</property>
$ systemctl restart confluence

  

调整数据库的语言

$ vim /etc/my.cnf
character-set-server=utf8
collation-server=utf8_bin
$ systemctl restart mariadb

  

可能之前创建的空间还不能加载过来,创建新的空间,再次查看,中文正常显示

PID问题

启动遇到PID的问题。无法正常启动

$ rm -rf  /opt/atlassian/confluence/work/catalina.pid
$ systemctl restart confluence

  

Dashboard无法显示

PS:百度网盘的资源可能过几天就不能使用了,需要的可以私聊我,留言即可

Confluence-6.10.0+Jira-7.13+Crowd-3.2.1最全破解文档,附下载包的更多相关文章

  1. PDF 补丁丁 0.4.1 版:新增嵌入中文字库、替换文档字库的功能

    PDF 补丁丁 0.4.1 版新增了嵌入中文字库.替换文档字库的功能. 嵌入汉字字库 历史上有一批黄底黑字的 PDF 文档.这批文档都具有相同的问题:没有嵌入字库.在一些设备上阅读时显示乱码.复制文本 ...

  2. PDF 补丁丁 0.4.2.1013 测试版发布:修复替换PDF文档字体等问题

    新的测试版修复了若干问题,建议下载了旧测试版的用户更新.修复的问题列表: 替换PDF文档字体可能将字体宽度变成0. 书签编辑器在加载XML书签时不显示对应文档的预览. 自动生成书签功能复制文本筛选器后 ...

  3. 【2017年9月10日更新】ABP配套代码生成器(ABP Code Generator)帮助文档,实现快速开发

    ABP代码生成器介绍 ABP Code Generator 针对abp这个框架做了一个代码生成器,功能强大.分为两大功能点,一个是数据层,一个是视图层. 数据服务层:通过它,可以实现表设计.领域层初始 ...

  4. OllyScripts 0.92帮助文档

    -------------------------------Olly脚本插件v0.92 制作: SHaG文档汉化:ZMWorm[CCG][TT]E-Mail:TranslationTeam[at]1 ...

  5. Android开发之深入理解Android 7.0系统权限更改相关文档

    http://www.cnblogs.com/dazhao/p/6547811.html 摘要: Android 6.0之后的版本增加了运行时权限,应用程序在执行每个需要系统权限的功能时,需要添加权限 ...

  6. css2.0文档查阅及字体样式

    css2.0文档查阅下载     网址:http://soft.hao123.com/soft/appid/9517.html <html xmlns="http://www.w3.o ...

  7. Win10 x64 + CUDA 10.0 + cuDNN v7.5 + TensorFlow GPU 1.13 安装指南

    Win10 x64 + CUDA 10.0 + cuDNN v7.5 + TensorFlow GPU 1.13 安装指南 Update : 2019.03.08 0. 环境说明 硬件:Ryzen R ...

  8. "/usr/local/openresty/nginx/html/index.html" is forbidden (13: Permission denied), client: 10.0.4.118, server: localhost, request: "GET / HTTP/1.1"

    openrestry 安装之后 报"/usr/local/openresty/nginx/html/index.html" is forbidden (13: Permission ...

  9. tensorflow-gpu 1.13 提示找不到 libcublas.so.10.0 的问题

    tensorflow-gpu 使用 1.13.1,cuda-10-0已安装好,但启动时依然报错 ImportError: libcublas.so.10.0: cannot open shared o ...

随机推荐

  1. 一文讲透静电放电(ESD)保护(转发)

    一直想给大家讲讲ESD的理论,很经典.但是由于理论性太强,任何理论都是一环套一环的,如果你不会画鸡蛋,注定了你就不会画大卫. 先来谈静电放电(ESD: Electrostatic Discharge) ...

  2. minikube windows hyperx填坑记

    minikube windows hyperx填坑记 安装了一天半,还是没行,先放弃 开始 minikube start --vm-driver=hyperv --hyperv-virtual-swi ...

  3. GBDT总结

    一.简介 gbdt全称梯度下降树,在传统机器学习算法里面是对真实分布拟合的最好的几种算法之一,在前几年深度学习还没有大行其道之前,gbdt在各种竞赛是大放异彩.原因大概有几个,一是效果确实挺不错.二是 ...

  4. 用微信小程序连接leancloud数据库注意事项~

    具体步骤转载如下: 官网教程 大佬提示 注意事项: 1.下载的av-weapp-min.js,需要放在当前项目名称的子目录pages下 2.如上述教程,需要注册leancloud和AppID,并写在a ...

  5. “tar: Removing leading `/’ from member names”的错误

    “tar: Removing leading `/’ from member names”的错误 使用tar打bz2压缩的时候报的错误,解决方案:加入参数: P (大写的屁) # tar -jcPf ...

  6. Django框架详细介绍---请求流程

    Django请求流程图 1.客户端发送请求 2.wsgiref是Django封装的套接字,它将客户端发送过来的请求(请求头.请求体封装成request) 1)解析请求数据 2)封装响应数据 3.中间件 ...

  7. Oracle 体系结构chapter2

    前言:Oracle 体系结构其实就是指oracle 服务器的体系结构,数据库服务器主要由三个部分组成 管理数据库的各种软件工具(sqlplus,OEM等),实例(一组oracle 后台进程以及服务器中 ...

  8. Aes CBC加密

    <?php namespace app\components; use yii; class Aes { /** * This was AES-128 / CBC / PKCS5Padding ...

  9. jdk5升级至jdk8框架版本选型

    spring-framework-4.3.18.RELEASE 4.3.x+:JDK8  Spring JDK Version Range Spring Framework 5.1.x: JDK 8- ...

  10. json转换导致金额失真问题解决

    平台的余额查询逻辑中,今天爆了个雷.因平台用户都是较大的商户,且资金一般都是整数(这也是埋雷这么久的原因吧),但今天有客户说他们今天充值金额有个0.63的零头,但为何页面展示的账户余额零头却只是0.6 ...