CVE-2020-10560 OSSN任意文件读取漏洞,问题出现在Open Source Social Network(OSSN)5.3及之前版本中

0x01 问题描述

CVE-2020-10560 OSSN任意文件读取漏洞,问题出现在Open Source Social Network(OSSN)5.3及之前版本中。攻击者可通过对Site_Key实施暴力破解攻击来为components/OssnComments/ossn_com.php和libraries/ossn.lib.upgrade.php插入特制的URL,然后利用该漏洞读取任意文件。

0x02 环境搭建

通过git命令从github上下载OSSN环境,这里直接通过docker搭建

1
git clone https://github.com/kevthehermit/CVE-2020-10560

使用docker一键搭载OSSN环境

1
docker-compose up --build

出现如下提示,说明搭建成功

用命令docker ps查看一下,环境已经启动成功

通过访问127.0.0.1就可以进入管理界面,需要进行安装,点击下一步

填写内容

  • DB: ossn
  • username: ossn
  • password: ossn
  • host: mysqlserver

按照要求填写好后出现如下情况表示环境搭建完成

0x03 漏洞复现

首先需要获取site_key的值,在实际环境中可以通过脚本爆破的方式获取,site_key爆破脚本参考链接

https://github.com/LucidUnicorn/CVE-2020-10560-Key-Recovery/releases

因这里是本地使用的docker搭建的复现环境,我们直接取数据查询site_key值即可

如下可以看到有一个mysql主机,使用mysql用户名和密码连接数据库(ossn/ossn)

查询数据库中的表ossn_ site_settings,找到site_key的值

然后使用python3执行脚本,依次填写site_key,读取的文件,目标网站地址,可以看到成功读取到了目标系统的passwd文件内容

1
python3 poc.py 55e5dd7b /etc/passwd http://127.0.0.1

参考链接

https://blog.csdn.net/zzgslh/article/details/105436635

https://mp.weixin.qq.com/s/BeXxwvB4shbjm7nNZ3FbWg