0X1 漏洞概述
nostromo nhttpd是一款开源的Web服务器。
最近,有安全研究人员发现nostromo nhttpd 1.9.6及之前版本中的'http_verify'函数存在路径遍历漏洞。该漏洞源于网络系统或产品未能正确地过滤资源或文件路径中的特殊元素。攻击者可利用该漏洞访问受限目录之外的位置从而导致命令执行
0X2 环境搭建
在开发者提供的站点以进行下载
http://www.nazgul.ch/dev.html
完成之后再*inux进行安装,我这里是在ubuntu16.04系统中。命令如下
./configure
make
make install
由于源码包已经检查过编译,所以直接进行后两步即可。完成之后再/var/目录下即可看到nostromo目录的存在。
配置文件在conf目录下,如下所示
然后启动环境
其他启动参数如下
然后即可访问环境。但是在虚拟机环境中可能是由于其他配置的问题,环境访问一直不成功,由于时间问题没有解决,我们直接傻蛋搜索一下在线使用该服务的站点,如下所示
可以看到中国境内的该服务几乎是没有,都是国外的网站使用该服务软件,大概有1965个站点服务可用。
0X3 漏洞利用
该漏洞最先由sp0re公布,在其github站点上发布了poc和exp代码
https://git.sp0re.sh/sp0re/Nhttpd-exploits
下载之后验证RCE漏洞
可以看到命令执行成功。
验证DOS漏洞
脚本执行之后,服务被宕掉,非常危险。
0X4 加固修复
官方目前并没有给出修复措施
参考链接:
https://git.sp0re.sh/sp0re/Nhttpd-exploits
https://github.com/jas502n/CVE-2019-16278
https://github.com/ianxtianxt/CVE-2019-16278