当前位置:首页 > 网络安全 > 安全通告 > 详情
安全漏洞预警通告-ACME Mini_httpd组件任意文件读取漏洞(CVE-2018-18778)预警
2018年11月01日   
   1、基本情况
  应用于大量IOT设备的Mini_httpd组件存在任意文件读取漏洞(CVE-2018-18778)。当服务器上的Mini_httpd组件开启vhost模式时,由于没有对http头数据进行安全过滤,导致外网攻击者可发送HOST头为空的HTTP数据包,触发漏洞,读取设备任意文件。
  Mini_httpd是一个微型的Http服务器,在占用系统资源较小的情况下可以保持一定程度的性能(约为Apache的90%),因此广泛被各类IOT(路由器,交换器,摄像头等)作为嵌入式服务器。而包括华为,zyxel,海康威视,树莓派等在内的厂商的旗下设备都曾采用Mini_httpd组件。
  2、攻击原理
  漏洞原因在于Mini_httpd中虚拟主机模式(vhost)有缺陷。
   

 

  

  虚拟主机模式并不是默认开启,需要在命令行利用-v参数开启(mini_httpd -v -C mini_httpd.conf)。当虚拟主机模式开启后,网络请求文件的绝对路径为:Host头+url。因此攻击者只要在web端口访问服务器时,设置Host头为空,等同于通知服务器需要某绝对物理路径文件。
   

 

  

  只有在vhost值不为0的情况下,才会调用virtual_file函数,进行拼接。virtual_file函数中的snprintf函数拼接host+url。
  接着,会调用do_file函数,该函数功能是记录日志,并读取Host拼接后的文件输出给用户(客户端或web端)。此时,攻击者就可以直接看到返回的敏感文件数据。
   

 

  

  do_file函数中的open函数根据绝对路径读取文件。
  3、影响范围
  目前漏洞影响版本号包括:
  Mini_httpd 1.30之前版本。
  4、处置建议
  1)在漏洞未完全修复前,设备使用方应限制问题设备的互联网访问权限。
  2)安装最新ACME mini_httpd 1.3版本,新版本官网下载地址:
  http://www.acme.com/software/mini_httpd/
  5、 参考链接
  https://acme.com/software/mini_httpd/