顶象:“INFRA:HALT”漏洞的技术分析与影响研判
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了顶象:“INFRA:HALT”漏洞的技术分析与影响研判相关的知识,希望对你有一定的参考价值。
参考技术A近日,国外网络安全研究人员披露了 14 个影响常用TCP/IP 堆栈的漏洞。这些漏洞被命名为“INFRA:HALT”,攻击者基于该系列漏洞能够进行远程代码执行、拒绝服务、信息泄漏、TCP 欺骗等攻击,甚至在DNS缓存植入恶意代码、病毒等。
分析显示,“INFRA:HALT”系列漏洞主要影响NicheStack 4.3之前所有版本,包括NicheLite也受到影响,全球大多数工业自动化企业都使用NicheStack TCP/IP协议栈,受影响的设备厂商超过200家。
NicheStack,又名InterNiche Stack,是用于嵌入式系统的第三方闭源TCP/IP协议栈组件,旨在提供互联网连接工业设备,主要部署在制造工厂、发电、水处理和关键基础设施领域的设备上。包含西门子、艾默生、霍尼韦尔、三菱电机、罗克韦尔自动化、施耐德电气等的可编程逻辑控制器 (PLC) 和其他产品,以及许多制造、发电、水处理等关键基础设施领域的操作技术(OT)设备中均有应用。
“INFRA:HALT”包含14个安全漏洞
“INFRA:HALT”系列漏洞主要包含远程代码执行、DoS、信息泄露、TCP欺骗等14个漏洞,影响DNSv4、HTTP、TCP、ICMP等模块,其中2个漏洞CVSS评分超过9分。
CVE-2020-25928:该漏洞是分析DNS响应时未检查单个DNS答案时未检查响应数据长度(response data length)域引发的安全漏洞,可能引发OOB-R/W,是一个远程代码执行漏洞,影响DNSv4模块,CVSS评分9.8分。
CVE- 2021-31226:该漏洞是分析HTTP POST请求时由于未进行大小验证引发的堆缓存溢出漏洞,是一个远程代码执行漏洞,影响HTTP模块,CVSS评分9.1分。
CVE-2020-25767:该漏洞是分析DNS域名时未检查压缩指针的指向是否在包边界内,可能引发OOB-R,最终引发DoS攻击和信息泄露,该漏洞CVSS评分7.5分,影响DNSv4模块。
CVE-2020-25927:该漏洞是分析DNS响应时未检查包头中特定的查询或响应数是否与DNS包中的查询或响应一致引发的安全问题,可能引发DoS攻击,CVSS评分8.2分。
CVE-2021-31227:该漏洞是分析HTTP POST请求时由于错误的签名整数比较引发的对缓存溢出漏洞,可能引发DoS攻击,影响HTTP模块,CVSS评分7.5分。
CVE-2021-31400:TCP带外紧急数据处理函数在处理带外紧急数据的末尾指针指向TCP包外的数据时,会调用一个panic函数。如果panic函数没有移除trap调用,就会引发死循环,最终引发DoS攻击,该漏洞影响TCP模块,CVSS评分为7.5分。
CVE-2021-31401:TCP头处理代码没有对IP长度(头+数据)的长度进行处理。如果攻击者伪造一个IP包,就可能引发整数溢出,因为IP数据的长度是通过全部IP数据包的长度减去header的长度来计算的。该漏洞影响TCP模块,CVSS评分为7.5分。
CVE-2020-35683:处理ICMP包的代码依赖IP payload大小来计算ICMP校验和,但是IP payload的大小是没有经过检查的。当IP payload大小的设定值小于IP header的大小时,ICMP校验和的计算函数就可能读越界,引发DoS攻击。该漏洞影响ICMP模块,CVSS评分7.5分。
CVE- 2020-35684:处理TCP包的代码依赖IP payload大小来计算TCP payload的长度。当IP payload大小的设定值小于IP header的大小时,ICMP校验和的计算函数就可能读越界,引发DoS攻击。该漏洞影响TCP模块,CVSS评分7.5分。
CVE- 2020-3568:该漏洞是由于TCP ISN的生成是以一种可预测的方式生成的。该漏洞可能引发TCP欺骗,影响TCP模块,CVSS评分7.5分。
CVE- 2021-27565:当接收到未知的HTTP请求时,会调用panic。该漏洞可能引发DoS攻击,漏洞影响HTTP模块,CVSS评分7.5分。
CVE- 2021-36762:TFTP包处理函数无法确保文件名是否是非终止符,因此之后调用strlen()可能会引发协议包缓存越界,引发DoS攻击。该漏洞影响TFTP模块,CVSS评分7.5分。
CVE- 2020-25926:该漏洞是由于DNS客户端未设置足够多的随机交易ID引发的,可能引发DNS缓存投毒攻击。漏洞影响DNSv4模块,CVSS评分4分。
CVE- 2021-31228:攻击者可以预测DNS查询的源端口,因此可以发送伪造的DNS请求包来让DNS客户端作为请求的有效应答来接收,可能引发DNS缓存投毒攻击。漏洞影响DNSv4模块,CVSS评分4分。
受“INFRA:HALT”漏洞影响的工控厂商
针对全网互联网工控设备情况进行分析发现,受“INFRA:HALT”系列漏洞影响最严重的主要是美国、加拿大、西班牙以及瑞典等国家。
西门子受影响产品:
霍尼韦尔受影响产品:官方尚未发布该系列漏洞安全公告。
施耐德电气目前尚未提供漏洞修复补丁,建议通过防火墙等安全措施对潜在的漏洞攻击风险进行缓解。
霍尼韦尔受影响产品:官方尚未发布该系列漏洞安全公告。
三菱受影响产品:官方尚未发布该系列漏洞安全公告。
INFRA:HALT系列漏洞的利用情况
根据安全研究者披露的一份技术文档显示,目前关于“INFRA:HALT”系列漏洞有一定程度的技术描述,但尚未公布基于该系列漏洞的利用程序与POC。
分析显示,使用了InterNiche协议栈组件的产品容易遭受“INFRA:HALT”系列漏洞攻击,受影响的主要为HTTP、FTP、TELNET、SSH等服务。查询Shodan发现,有超过6400个运行NicheStack协议栈的设备。其中6360个运行HTTP服务器,其他大多数运行FTP、SSH、Telnet等服务。这些设备可能遭受 CVE-2020-25928、CVE-2021-31226漏洞的攻击,导致设备被远程控制。
安全研究员公布方还发布了一个开源的检测脚本,可以协助检测设备系统是否使用了InterNiche协议栈及其版本信息。
截至目前,HCC Embedded 公司已准备发布修复补丁。但在更新固件前,攻击者可能已开始利用“INFRA:HALT”系列漏洞发动攻击。因此受影响企业应尽快排查、监测相关设备系统的使用情况,禁止相关设备开启HTTP、FTP、TELNET、SSH等通用网络服务,或者使用防火墙等网络安全产品将相关端口进行过滤。
顶象保障工控安全
顶象是一家以大规模风险实时计算技术为核心的业务安全公司,旨在帮助客户构建自主可控的风险安全体系,实现业务可持续的增长。作为CNNVD(国家信息安全漏洞库)、CICSVD(国家工业信息安全漏洞库)重要技术支撑单位,顶象是工信部、人保部、共青团中央等12个部门主办“2020年全国工业互联网安全技术技能大赛”的出题方和裁判员,并获得主办方颁发的“突出贡献奖”荣誉称号。
基于多年安全技术研究、业务安全攻防实战经验,顶象推出了一整套工控安全智能防护系统,拥有漏洞挖掘、未知威胁发现、风险预测感知、威胁欺骗诱捕、主动安全防御能力,为石油石化、能源电力、轨道交通、智能制造等工业领域提供覆盖全生命周期的安全体系。
通过符号执行和污点跟踪分析,结合顶象独有的人工智能技术,实现X86、X86_64、 ARM、MIPS等主流架构的无源码二进制文件漏洞挖掘,能够快速定位包括内存越界、溢出等各种类型安全漏洞。并通过集成了数万种扫描插件的自主研发的非入侵式无损智能扫描系统,对设备进行完整性、脆弱性、安全性进行全面检测与评估,提升设备的安全性、可靠性和稳定性。
、脆弱性、安全性进行全面检测与评估,提升设备的安全性、可靠性和稳定性。
nginx漏洞分析与升级修复
一 、此次漏洞分析
1 nginx HTTP/2漏洞
[nginx-announce] nginx安全公告(CVE-2018-16843,CVE-2018-16844)
在nginx HTTP / 2实现中发现了两个安全问题,
漏洞对服务器的影响:
可能会导致过多的内存消耗(CVE-2018-16843)和CPU使用率(CVE-2018-16844)。
影响范围:
这些问题会影响使用ngx_http_v2_module编译的nginx(不是默认情况下编译)如果“listen”指令的“http2”选项是用于配置文件。
影响版本:
这些问题会影响nginx 1.9.5 - 1.15.5。
解决方法:
问题在nginx 1.15.6,1.14.1中得到修复。建议升级到最新稳定版
以上内容参考:
http://mailman.nginx.org/pipermail/nginx-announce/2018/000220.html
2 ngx_http_mp4_module漏洞
[nginx-announce] nginx安全公告(CVE-2018-16845)
漏洞对服务器的影响:
在ngx_http_mp4_module中发现了一个安全问题,可能是这个问题允许攻击者在工作进程中导致无限循环,导致攻击工作进程崩溃,或者可能导致工作进程内存使用特制的mp4文件(CVE-2018-16845)进行披露。
影响范围:
如果使用ngx_http_mp4_module构建,则该问题仅影响nginx(默认情况下不构建模块)并使用“mp4”指令配置文件。此外,只有在攻击时才能进行攻击,攻击者能够触发特制的mp4文件的处理使用ngx_http_mp4_module。
影响版本:
该问题影响nginx 1.1.3 +,1.0.7 +。
解决方法:
该问题在1.15.6,1.14.4中得到修复。建议升级到最新稳定版
该问题的补丁可以在这里找到:
http://nginx.org/download/patch.2018.mp4.txt
以上内容参考:
http://mailman.nginx.org/pipermail/nginx-announce/2018/000221.html
3 模块ngx_http_mp4_module介绍
作用:为H.264(一种视频编码格式)/AAC(一种音频编码格式)文件,主要是以 .mp4、.m4v、和.m4a为扩展名的文件, 提供伪流媒体服务端支持。
二、nginx升级
1 备份原有文件
cp -a /usr/local/nginx /tmp/nginx_back
2 解压nginx-1.14.1.tar.gz文件
tar -xf nginx-1.14.1
3 进入nginx-1.14.1目录
cd nginx-1.14.1
4 编译配置
(1)请先使用nginx -V 命令查看原有nginx编译的选项,
# nginx -V
nginx version: nginx/1.0.15
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-http_flv_module --add-module=/usr/local/src/nginx-auth-ldap --with-http_realip_module
(2)故保持和原有一样的编译配置,根据自己情况具体而定。
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module
--with-http_ssl_module --with-http_gzip_static_module --with-http_flv_module --with-http_realip_module
--with-http_auth_request_module --with-http_auth_request_module --add-module=/usr/local/src/nginx-auth-ldap
--add-module=/usr/local/src/headers-more-nginx-module-master --with-cc-opt=-Wno-error
5 编译
make
6 备份原来sbin/nginx
cd /usr/local/nginx/sbin/
mv nginx nginx.back
7 复制nginx-1.14.1/objs/nginx到/usr/local/nginx/sbin/
cp nginx-1.14.1/objs/nginx /usr/local/nginx/sbin/
8 升级
cd nginx-1.14.1 make upgrade
输出如下:
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful kill -USR2 `cat /usr/local/nginx/logs/nginx.pid` sleep 1 test -f /usr/local/nginx/logs/nginx.pid.oldbin kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
或者输出为以下内容:
/usr/local/nginx/sbin/nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful kill -USR2 `cat /usr/local/nginx/logs/nginx.pid` sleep 1 test -f /usr/local/nginx/logs/nginx.pid.oldbin make: *** [upgrade] Error 1
看到 Error 1也不用太在意,已经升级成功
如果nginx是关闭的请情况输出如下:
/usr/local/nginx/sbin/nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful kill -USR2 `cat /usr/local/nginx/logs/nginx.pid` kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec] make: *** [upgrade] Error 1
9 查看升级是否成功
# /usr/local/nginx/sbin/nginx -v
nginx version: nginx/1.14.1
以上是关于顶象:“INFRA:HALT”漏洞的技术分析与影响研判的主要内容,如果未能解决你的问题,请参考以下文章