Yapi MongoDB注入致远程命令执行漏洞修复坎坷之路

admin 2022年11月22日21:38:40Yapi MongoDB注入致远程命令执行漏洞修复坎坷之路已关闭评论265 views字数 1975阅读6分35秒阅读模式


由 DeveloperPeer 发表于 软件

#头条创作挑战赛# 大晚上收到了阿里云的告警消息,说是网站存在高危应用漏洞,登录阿里云管理后台,发现了下面一个高危漏洞

Yapi MongoDB注入致远程命令执行漏洞修复坎坷之路

通常情况下,遇到这种高危漏洞,直接升级软件就可以解决,应为应用软件的开发者,通常都会在第一时间对软件进行修复。

然而这次却有点坎坷,记录一下,希望有人可以用到。
Yapi 介绍
Yapi 是一款国产的接口管理,测试工具,旨在为开发、产品、测试人员提供更优雅的接口管理服务。

修复过程

  1. 登录官网,查看升级步骤如下,但是执行起来就报错,也无法搜索到解决方案。

cd {项目目录}yapi ls //查看版本号列表yapi update //更新到最新版本yapi update -v {Version} //更新到指定版本

从错误看,应该是下面这个网址的访问问题。

# yapi ls(node:13547) UnhandledPromiseRejectionWarning: Error: Hostname/IP doesn't match certificate's altnames: "Host: www.easy-mock.com. is not in the cert's altnames: DNS:*.souche-inc.com, DNS:souche-inc.com" at Object.checkServerIdentity (tls.js:223:17) at TLSSocket.<anonymous> (_tls_wrap.js:1122:29) at emitNone (events.js:106:13) at TLSSocket.emit (events.js:208:7) at TLSSocket._finishInit (_tls_wrap.js:643:8) at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:473:38)

2.不能正常升级,就的想其其它办法了。 看了下,Yapi 的数据是存储在 mongodb 中的,这样数据不会受到影响,因此可以重新安装一份最新的版本,然后配置使用旧的数据就好。

3.依照官网的可视化安装方式来安装,但是与上面的错误一样。

npm install -g yapi-cli --registry https://registry.npm.taobao.orgyapi server

4.可视化安装不行,就命令行部署吧,因为 github 的访问问题,也没有成功

mkdir yapicd yapigit clone https://github.com/YMFE/yapi.git vendors

5.最后只好下载官网的release包,手动安装吧。

#wget https://github.com/YMFE/yapi/archive/refs/tags/v1.12.0.tar.gz# 下载后解压,移到自定义的目录下命名为verdors# 如果使用已有的配置和数据,请修改成复制之前的配置文件cp vendors/config_example.json ./config.json //复制完成后请修改相关配置cd vendorsnpm install --production --registry https://registry.npm.taobao.org# 下面这一步不要执行,因为是使用已有的数据和配置。####npm run install-server //安装程序会初始化数据库索引和管理员账号,管理员账号名可在 config.json 配置node server/app.js //启动服务器后,请访问 127.0.0.1:{config.json配置的端口},初次运行会有个编译的过程,请耐心等候

6.完成上面的基本上就成功了,但是如果配置的有 supervisor 守护 的话,可能需要修改下对应的配置, 然后让supervisor加载修改就好 supervisorctl reload. 如果有问题的话,可以根据 supervisor 和 yapi 的日志进行解决。

[program: yapi]command=node vendors/server/app.jsdirectory=yapipathautorestart=trueautostart=truestderr_logfile=/var/log/yapi.err.logstdout_logfile=/var/log/yapi..out.logenvironment=ASPNETCORE_ENVIRONMENT=Productionuser=rootstopsignal=INTstartsecs=1

修复后,阿里云重新监测下,发现漏洞已修复。

Yapi MongoDB注入致远程命令执行漏洞修复坎坷之路

总结:近年来,很多国产软件进入了我们的工作生活中,这是很好的现象,但是不少中小企业的软件在文档,易用性方面还有一些提升的余地。希望国产软件越来愈好。

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年11月22日21:38:40
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Yapi MongoDB注入致远程命令执行漏洞修复坎坷之路https://cn-sec.com/archives/1423533.html