跳转到帖子
  • 游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

    赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

    TheHackerWorld官方

  • 0

GitLab任意文件读取漏洞复现(CVE-2020-10977)


HACK1949

问题

GitLab任意文件读取漏洞复现(CVE-2020-10977)

5fed69442cc88.png

0x00简介

GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。GitLab是由GitLabInc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和issue跟踪功能。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。

0x01漏洞概述

在Gitlab 8.5-12.9版本中,存在一处任意文件读取漏洞,攻击者可以利用该漏洞,在不需要特权的状态下,读取任意文件,造成严重信息泄露,从而导致进一步被攻击的风险。

0x02影响版本

GitLab GitLab CE/EE >=8.5 and <=12.9

GitLab GitLab CE >=8.5,<=12.9

0x03环境搭建

环境:centos7搭建。这里以centos7为例安装,其他系统请参照以下链接

https://mirrors.tuna.tsinghua.edu.cn/help/gitlab-ce/

1.首先在/etc/yum.repos.d/下新建一个名为gitlab-ce.repo的文件,内容为以下内容

[gitlab-ce]

name=Gitlab CE Repository

baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/

gpgcheck=0

enabled=1

1609297049_5febec99d48743c81d2ba.jpg!sma

2.使用以下命令安装带漏洞版本的gitlab

yum makecache

yum install gitlab-ce-12.8.7-ce.0.el7

1609297057_5febeca14bb2901687514.jpg!sma

注:使用命令安装可能会非常的慢,这里使用rpm的方式安装

下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

选择下载漏洞版本,这里选择下载12.8.7

下载完成后使用rpm -i gitlab-ce-12.8.7-ce.0.el7.x86_64.rpm安装即可

1609297064_5febeca8d5c14e64290c2.jpg!sma

下载完成后使用rpm -i gitlab-ce-12.8.7-ce.0.el7.x86_64.rpm安装即可

3.这里使用命令安装成功

1609297077_5febecb5578ac4bc97657.jpg!sma

4.在执行完成后,修改/etc/gitlab/gitlab.rb文件注释掉external_url 'http://gitlab.example.com'

1609297085_5febecbd0ed3d437f0097.jpg!sma

5.保存退出后,使用命令gitlab-ctl reconfigure来进行安装,然后等待安装完成。

1609297096_5febecc85792ee6d39f77.jpg!sma

使用如下命令检测当前GitLab版本:

cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

1609297103_5febeccf9ccd88b0321f7.jpg!sma

6.安装完成后,在浏览器直接访问IP即可

1609297110_5febecd6c46840e6073a5.jpg!sma

0x04漏洞复现

1.在首页随便创建一个账号,然后登陆

1609297117_5febecddf16ffaffcb15d.jpg!sma

2.登录后创建两个project,名字随意

1609297130_5febecea67bcbd71feab2.jpg!sma

1609297141_5febecf5c9038ec20da52.jpg!sma

3.两个project创建完成后,在test1中创建一个issues。填入以下内容:

Payload:![a](/uploads/11111111111111111111111111111111/../../../../../../../../../../../../../../etc/passwd)

1609297150_5febecfe72c218ebf09bf.jpg!sma

1609297158_5febed061aa011b76ff5e.jpg!sma

4.提交后,将这个创建好的issues move到前面创建好的test2中。

1609297166_5febed0e86815629a8167.jpg!sma

5.MOVE完成后,从test2中就可以看到passwd文件的连接地址,可以直接点击下载。

1609297173_5febed15e489005e90ef3.jpg!sma

1609297183_5febed1fb52958cb20e10.jpg!sma

0x05修复建议

1.建议在官网升级至最新版本

参考链接:https://mp.weixin.qq.com/s/ZmzXk0C-o0AnBLzVMAhRJg


本文作者:东塔安全学院

链接帖子
意见的链接
分享到其他网站

这个问题有0个答案

推荐的帖子

此问题没有答案

黑客攻防讨论组

黑客攻防讨论组

    You don't have permission to chat.
    • 最近浏览   0位会员

      • 没有会员查看此页面。
    ×
    ×
    • 创建新的...