漏洞概述
Trustwave 研究人员Martin Rakhmanov在 IBM Db2 数据库数据管理产品中发现了一个内存泄露漏洞,本地攻击者利用该漏洞可以访问敏感信息,甚至引发DoS 攻击。
该漏洞CVE编号为CVE-2020-4414,攻击者利用该漏洞可以通过不当共享内存在系统上执行非授权的动作。通过发送伪造的请求,攻击者可以利用该漏洞来获取敏感信息和发起DoS 攻击。
由于开发者忘记对Db2 trace工具使用的共享内存进行明确的内存保护,导致任何本地用户都可以在该内存区域中读写。反过来可以访问敏感数据并修改trace子系统功能,引发数据库的DoS 条件。
Db2 trace工具主要是用来记录Db2 数据和事件,包括报告Db2 系统信息、收集性能分析所需的数据、获取数据访问审计。
考虑到共享内存中保存了敏感的信息,对系统有访问权限的攻击者可以创建一个恶意应用来用恶意数据来覆写内存。
内存泄露
在Windows中,启动进程浏览器或其他类似的工具来检查Db2 主进程开放句柄。可以看到,并没有向共享内存中分配任何权限,因此任何人都可以从中读取或写入数据。
研究人员创建了一个简单的console应用尝试打开给定内存部分,并复制前几个字节的内容:
然后启动Db2 tracing工具:
然后就可以看到写入内存部分的内容:
也就是说,本没有权限的本地用户可以滥用该漏洞通过在内存部分写入不正确的数据来引发DoS 竞争条件。与Db2 数据库在同一计算机上运行的低权限的进程可以修改Db2 trace、获取敏感数据、使用这些信息来发起其他攻击。
该漏洞与Cisco WebEx视频会议服务中的漏洞CVE-2020-3347 非常相似。本地认证的攻击者利用CVE-2020-3347漏洞可以获取用户名、认证token和会议信息。
漏洞影响和补丁
漏洞影响IBM Db2 V9.7、V10.1、V10.5、V11.1和V11.5。
IBM已于6月30日发布了安全补丁,研究人员建议相关用户尽快安装补丁更新。
本文翻译自:https://www.trustwave.com/en-us/resources/blogs/spiderlabs-blog/ibm-db2-shared-memory-vulnerability-cve-2020-4414/ 与 https://thehackernews.com/2020/08/ibm-data-management.html如若转载,请注明原文地址: