漏洞概述
1、CVE编号
CVE-2019-5166, CVE-2019-5167, CVE-2019-5168, CVE-2019-5169, CVE-2019-5170, CVE-2019-5171, CVE-2019-5172, CVE-2019-5173, CVE-2019-5174, CVE-2019-5175, CVE-2019-5176, CVE-2019-5177, CVE-2019-5178, CVE-2019-5179, CVE-2019-5180, CVE-2019-5181, CVE-2019-5182, CVE-2019-5184, CVE-2019-5185, CVE-2019-5186。
2、严重程度
8.8 (CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H)
3、受影响产品
4、漏洞类型
典型的缓冲区溢出,缓冲区复制时未检查输入大小。
5、简要描述
攻击者需要在设备上进行授权登录才能利用此处提到的漏洞。
报告的漏洞使具有有效登录凭据的本地攻击者能够在设备上创建文件来更改设备设置,例如,默认网关地址,时间服务器等,并可能执行代码。
WAGO IO检查服务 "I/O-Check"缓存DNS代码执行漏洞:CVE-2019-5166
CWE-ID:CWE-120-缓冲区复制时未进行输入大小的检查 ("典型的缓冲区溢出")
Base Score:8.8
Vector:CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
将特制的XML缓存文件写入设备上的特定位置会导致堆栈缓冲区溢出,从而导致代码执行。攻击者可以发送特制的数据包来触发此缓存文件的解析。
WAGO IO检查服务"I/O-Check" 缓存多命令注入漏洞:CVE-2019-5167, CVE-2019-5168, CVE-2019-5169, CVE-2019-5170, CVE-2019-5171, CVE- 2019-5172, CVE-2019-5173, CVE-2019-5174, CVE-2019-5175
CWE-ID: CWE-78: 不正确地中和OS命令中使用的特殊元素("OS命令注入")
Base Score: 8.8
Vector: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
写入设备上特定位置的特制xml缓存文件可用于注入OS命令。攻击者可以发送特制的数据包来触发此缓存文件的解析。
WAGO IO检查服务"I/O-Check" 缓冲区多代码执行漏洞:CVE-2019-5176, CVE-2019-5177, CVE-2019-5178, CVE-2019-5179, CVE-2019-5180, CVE- 2019-5181, CVE-2019-5182
CWE-ID:CWE-120 - 缓冲区复制时未进行输入大小的检查 ("典型的缓冲区溢出")
Base Score: 8.8
Vector: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
WAGO IO检查服务"I/O-Check" 缓存网关内存损坏漏洞CVE-2019-5184
CWE-ID: CWE-415: Double Free
Base Score: 7.0
Vector: CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
将特制的xml缓存文件写入设备上的特定位置可能会导致两次释放堆指针,从而导致拒绝服务并可能执行代码。攻击者可以发送特制的数据包来触发此缓存文件的解析。
WAGO io检查服务"I/O-Check"缓存多代码执行漏洞:CVE-2019-5185, CVE-2019-5186
CWE-ID: CWE-120-缓冲区复制时未进行输入大小的检查 ("典型的缓冲区溢出")
Base Score: 7.0
Vector: CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
6漏洞验证说明
Talos测试并确认TALOS-2019-0939/CVE-2019-5149影响运行固件版本03.00.39(12)和03.01.07(13)的WAGO PFC200以及运行03.00.39(12)和03.02.02(14)的PFC100。
WALOS PFC200,固件版本03.00.39(12)和03.01.07(13)和PFC100版本03.00.39(12)受TALOS-2019-0923/CVE-2019-5134和TALOS-2019-0924/CVE-2019-5135的影响。
TALOS-2019-0948/CVE-2019-5155,TALOS-2019-0949/CVE-2019-5156,TALOS-2019-0954/CVE-2019-5161和TALOS-2019-0950/CVE-2019-5157影响PFC200的版本03.02.02(14),03.01.07(13)和03.00.39(12)。
根据对早期固件版本的检查,Talos认为这些漏洞会影响两个设备(甚至更早)中固件的过去10个版本。
TALOS-2019-0952/CVE-2019-5159和TALOS-2019-0951/CVE-2019-5158影响WAGO e!COCKPIT版本1.6.0.7。
Talos测试并确认WAGO PFC200和PFC100的03.00.39(12)版本受TALOS-2019-0862至0864和TALOS-2019-0870至0874的影响。
解决方案及缓解措施
鉴于本次爆出的漏洞数量较多,严重性也较高,远程攻击者可以利用这些漏洞来进行各种恶意活动,包括命令注入、信息泄露和远程执行代码。德国VDE CERT已于3月9日发布安全公告并提出缓解建议。
1、解决方案
仅在安装和调试期间需要I/O-Check服务协议,而在正常操作期间则不需要。强烈建议在调试后禁用I/O-Check服务。这是保护设备免受列出的漏洞影响的最简单,最安全的方法。
无论采取上述何种措施,该漏洞都有望在2020年第二季度的FW16版本中得到修复。
2、缓解措施
禁用I/O检查服务。
限制对设备的网络访问。
不要将设备直接连接到互联网。
禁用未使用的TCP / UDP端口。
来源:关键基础设施安全应急响应中心