Ubuntu 16.04 ESM:ImageMagick 漏洞 (USN-5335-1)

high Nessus 插件 ID 159107

简介

远程 Ubuntu 主机缺少一个或多个安全更新。

描述

远程 Ubuntu 16.04 LTS 主机上安装的程序包受到 USN-5335-1 公告中提及的多个漏洞影响。

- 在 ImageMagick 6.9.7-10 之前版本中,图像尺寸过大将造成崩溃(而不是报告宽度或高度超出限制错误),使用 mpc 编码器即为一例。(CVE-2017-13144)

- ImageMagick 7.0.10-7 中 coders/xpm.c 内的 ReadXPMImage 发生基于堆栈的缓冲区溢出和无条件跳转。(CVE-2020-19667)

- 在 coders/png.c 的 PNG 编码器的 WriteOnePNGImage() 中,不当调用 AcquireVirtualMemory() 和 memset() 可导致稍后在调用 MagickCore/quantum-private.h 中的 PopShortPixel() 时发生越界写入问题。该补丁通过将 256 添加到 rowbytes 来修复这些调用。能够提供特制图像的攻击者可在对数据完整性造成较低影响的情况下,损害数据可用性。此缺陷会影响 6.9.10-68 和 7.0.8-68 之前的 ImageMagick 版本。(CVE-2020-25664)

- coders/palm.c 中的 PALM 图像编码器未正确调用例程 WritePALMImage() 中的 AcquireQuantumMemory(),因为它需要偏移 256。这会导致稍后例程中发生越界读取。此补丁在对 AcquireQuantumMemory() 的调用中向 bytes_per_row 添加了 256。这会对可靠性造成影响。此缺陷会影响 7.0.8-68 之前的 ImageMagick 版本。(CVE-2020-25665)

- coders/png.c(PNG 编码器)中 WriteOnePNGImage() 的 for 循环具有不正确的退出条件,该退出条件会通过堆缓冲区溢出造成越界读取。发生此问题的原因是,颜色映射可能具有少于 256 个有效值,但循环条件将循环 256 次,从而尝试将无效的颜色映射数据传递到事件记录器。此补丁将硬编码的 256 值替换为对 MagickMin() 的调用,以确保使用正确的值。当 ImageMagick 处理特别构建的输入文件时,这可能会影响应用程序可用性。此缺陷会影响 7.0.8-68 之前的 ImageMagick 版本。(CVE-2020-25674)

- 在 /MagickCore/pixel.c 中的 CatromWeights()、MeshInterpolate()、InterpolatePixelChannel()、InterpolatePixelChannels() 和 InterpolatePixelInfo() 函数内,存在多个不受限制的像素偏移计算,这些计算与 floor() 函数一起使用。这些计算产生了超出范围和整数溢出形式的未定义行为(由 UndefinedBehaviorSanitizer 识别)。如果攻击者能够提供构建的输入文件让 ImageMagick 进行处理,则可以触发这些未定义行为的实例。这些问题可能会影响应用程序可用性,或者可能造成与未定义行为相关的其他问题。此缺陷会影响 7.0.9-0 之前的 ImageMagick 版本。(CVE-2020-25676)

- 在 ImageMagick 的 MagickCore/colorspace-private.h 和 MagickCore/quantum.h 中发现了一个缺陷。如果攻击者提交构建的文件让 ImageMagick 进行处理,可能会触发类型为“unsigned char”的值超出范围和除以零数学计算形式的未定义行为。这最有可能会影响应用程序可用性,但也可能会造成与未定义行为相关的其他问题。此缺陷会影响 7.0.8-68 之前的 ImageMagick 版本。(CVE-2020-27750)

- /coders/miff.c 的 MIFF 编码器中存在多个内存泄漏,这是由图像深度值不正确所致,此行为可由特别构建的输入文件触发。这些泄漏可能会影响应用程序可用性或造成拒绝服务。最初据报告这些问题存在于“AcquireMagickMemory()”中,因为这是 LeakSanitizer 检测到泄漏的位置,但此补丁解决了 MIFF 编码器中的问题,即错误地处理传递到“AcquireMagickMemory()”的数据。此缺陷会影响 7.0.9-0 之前的 ImageMagick 版本。(CVE-2020-27753)

- 在 /MagickCore/enhance.c 的“GammaImage()”中,ImageMagick 处理构建的输入文件时可能会触发除以零情况,具体取决于“gamma”值。这可能会影响应用程序可用性。此补丁使用“PerceptibleReciprocal()”来防止出现除以零情况。此缺陷会影响 7.0.8-68 之前的 ImageMagick 版本。
(CVE-2020-27760)

- 在 ImageMagick 的 coders/hdr.c 中发现了一个缺陷。如果攻击者提交构建的文件让 ImageMagick 进行处理,可能会触发类型为“unsigned char”的值超出范围形式的未定义行为。这最有可能会影响应用程序可用性,但也可能会造成与未定义行为相关的其他问题。此缺陷会影响 7.0.8-68 之前的 ImageMagick 版本。(CVE-2020-27762)

- 在 ImageMagick 的 MagickCore/statistic.c 中发现了一个缺陷。如果攻击者提交构建的文件让 ImageMagick 进行处理,可能会触发类型为“unsigned long”的值超出范围形式的未定义行为。这最有可能会影响应用程序可用性,但也可能会造成与未定义行为相关的其他问题。此缺陷会影响 7.0.8-69 之前的 ImageMagick 版本。(CVE-2020-27766)

- 由于缺少对“replace_extent”的 0 值的检查,偏移“p”可能在 SubstituteString() 中溢出,从而可能影响应用程序可用性。当 ImageMagick 处理构建的输入文件时,可能会触发该缺陷。此缺陷会影响 7.0.8-68 之前的 ImageMagick 版本。(CVE-2020-27770)

- 在 ImageMagick 6.9.11-57 和 7.0.10-57 的 gem.c 中发现了除以零缺陷。如果攻击者提交构建的文件让 ImageMagick 进行处理,此缺陷会允许攻击者通过除以零触发未定义行为。此漏洞最大的威胁在于系统可用性。(CVE-2021-20176)

- 在 ImageMagick 的 coders/jp2.c 中发现了一个缺陷。攻击者提交构建的文件供 ImageMagick 处理,可触发数学中除以零形式的未定义行为。此漏洞最大的威胁在于系统可用性。(CVE-2021-20241)

- 在 ImageMagick 的 MagickCore/resize.c 中发现了一个缺陷。攻击者提交构建的文件供 ImageMagick 处理,可触发数学中除以零形式的未定义行为。此漏洞最大的威胁在于系统可用性。(CVE-2021-20243)

请注意,Nessus 尚未测试这些问题,而是只依据应用程序自我报告的版本号进行判断。

解决方案

更新受影响的程序包。

另见

https://ubuntu.com/security/notices/USN-5335-1

插件详情

严重性: High

ID: 159107

文件名: ubuntu_USN-5335-1.nasl

版本: 1.5

类型: local

代理: unix

发布时间: 2022/3/21

最近更新时间: 2023/10/23

支持的传感器: Frictionless Assessment AWS, Frictionless Assessment Azure, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Nessus

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: Medium

基本分数: 6.8

时间分数: 5.3

矢量: CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P

CVSS 分数来源: CVE-2020-27766

CVSS v3

风险因素: High

基本分数: 7.8

时间分数: 7

矢量: CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

时间矢量: CVSS:3.0/E:P/RL:O/RC:C

漏洞信息

CPE: cpe:/o:canonical:ubuntu_linux:16.04:-:esm, p-cpe:/a:canonical:ubuntu_linux:imagemagick, p-cpe:/a:canonical:ubuntu_linux:imagemagick-6.q16, p-cpe:/a:canonical:ubuntu_linux:imagemagick-common, p-cpe:/a:canonical:ubuntu_linux:libimage-magick-perl, p-cpe:/a:canonical:ubuntu_linux:libimage-magick-q16-perl, p-cpe:/a:canonical:ubuntu_linux:libmagick%2b%2b-6-headers, p-cpe:/a:canonical:ubuntu_linux:libmagick%2b%2b-6.q16-5v5, p-cpe:/a:canonical:ubuntu_linux:libmagick%2b%2b-6.q16-dev, p-cpe:/a:canonical:ubuntu_linux:libmagick%2b%2b-dev, p-cpe:/a:canonical:ubuntu_linux:libmagickcore-6-arch-config, p-cpe:/a:canonical:ubuntu_linux:libmagickcore-6-headers, p-cpe:/a:canonical:ubuntu_linux:libmagickcore-6.q16-2, p-cpe:/a:canonical:ubuntu_linux:libmagickcore-6.q16-2-extra, p-cpe:/a:canonical:ubuntu_linux:libmagickcore-6.q16-dev, p-cpe:/a:canonical:ubuntu_linux:libmagickcore-dev, p-cpe:/a:canonical:ubuntu_linux:libmagickwand-6-headers, p-cpe:/a:canonical:ubuntu_linux:libmagickwand-6.q16-2, p-cpe:/a:canonical:ubuntu_linux:libmagickwand-6.q16-dev, p-cpe:/a:canonical:ubuntu_linux:libmagickwand-dev, p-cpe:/a:canonical:ubuntu_linux:perlmagick

必需的 KB 项: Host/cpu, Host/Debian/dpkg-l, Host/Ubuntu, Host/Ubuntu/release

可利用: true

易利用性: Exploits are available

补丁发布日期: 2022/3/18

漏洞发布日期: 2017/8/23

参考资料信息

CVE: CVE-2017-13144, CVE-2020-19667, CVE-2020-25664, CVE-2020-25665, CVE-2020-25674, CVE-2020-25676, CVE-2020-27750, CVE-2020-27753, CVE-2020-27760, CVE-2020-27762, CVE-2020-27766, CVE-2020-27770, CVE-2021-20176, CVE-2021-20241, CVE-2021-20243

IAVB: 2020-B-0042-S

USN: 5335-1