Lucene search
+L

Amazon Linux 2023 : heif-pixbuf-loader, libheif, libheif-devel (ALAS2023-2026-1814)

🗓️ 08 Jun 2026 00:00:00Reported by TenableType 
nessus
 nessus
🔗 www.tenable.com👁 97 Views

Libheif vulnerabilities on Amazon Linux 2023 cause heap overflow and overread; fixed in version 1.22.0.

Related
Refs
Code
ReporterTitlePublishedViews
Family
attackerkb
CVE-2026-32740
19 May 202619:22
attackerkb
attackerkb
CVE-2026-32741
19 May 202619:57
attackerkb
attackerkb
CVE-2026-32882
19 May 202620:07
attackerkb
amazon
Important: libheif
8 Jun 202600:00
amazon
alpinelinux
CVE-2026-32740
19 May 202619:22
alpinelinux
circl
CVE-2026-32740
19 May 202621:00
circl
circl
CVE-2026-32741
19 May 202622:34
circl
circl
CVE-2026-32882
19 May 202622:37
circl
cnnvd
libheif 缓冲区错误漏洞
19 May 202600:00
cnnvd
cnnvd
libheif 安全漏洞
19 May 202600:00
cnnvd
Rows per page
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Amazon Linux 2023 Security Advisory ALAS2023-2026-1814.
##

include('compat.inc');

if (description)
{
  script_id(319823);
  script_version("1.2");
  script_set_attribute(attribute:"plugin_modification_date", value:"2026/06/26");

  script_cve_id("CVE-2026-32740", "CVE-2026-32741", "CVE-2026-32882");
  script_xref(name:"IAVB", value:"2026-B-0158");

  script_name(english:"Amazon Linux 2023 : heif-pixbuf-loader, libheif, libheif-devel (ALAS2023-2026-1814)");

  script_set_attribute(attribute:"synopsis", value:
"The remote Amazon Linux 2023 host is missing a security update.");
  script_set_attribute(attribute:"description", value:
"It is, therefore, affected by multiple vulnerabilities as referenced in the ALAS2023-2026-1814 advisory.

    libheif is a HEIF and AVIF file format decoder and encoder. Versions 1.21.2 and prior contain a heap-
    buffer-overflow (write) vulnerability in the grid tile compositing, allowing an attacker to write 64 bytes
    of fully attacker-controlled data past the end of a chroma plane heap allocation by crafting a HEIF/AVIF
    file with a 1x4 grid of odd-height tiles. The overflow is triggered during normal image decoding with
    default build configuration. The written bytes are chroma (Cb/Cr) pixel values from the attacking tile,
    giving the attacker full control over the overflow content. This issue has been fixed in version 1.22.0.
    (CVE-2026-32740)

    libheif is a HEIF and AVIF file format decoder and encoder. Versions 1.21.2 and below contain a heap
    buffer overflow in MaskImageCodec::decode_mask_image(). When decoding a HEIF file containing a mask image
    (mski), the function copies the full iloc extent data into a pixel buffer using memcpy(dst, data.data(),
    data.size()). The copy length data.size() is determined by the iloc extent in the file (attacker-
    controlled), while the destination buffer is sized based on the declared image dimensions. Because no
    upper-bound check exists on the data length, a crafted file whose iloc extent exceeds the pixel buffer
    allocation overflows the heap. The vulnerable single-memcpy branch is reached when the mskC property
    specifies bits_per_pixel = 8 and the ispe property declares an even width >= 64 (so that stride == width),
    with no changes to default security limits or external codec plugins required. This issue has been fixed
    in version 1.22.0. (CVE-2026-32741)

    libheif is a HEIF and AVIF file format decoder and encoder. Versions 1.21.2 and prior contain a heap
    buffer over-read in HeifPixelImage::overlay() in libheif/pixelimage.cc. When compositing an overlay image
    (iovl) whose child image has a different bit depth for the alpha channel than for the color channels, the
    function indexes into the alpha plane using the color channel stride (in_stride) instead of the previously
    retrieved alpha_stride, causing reads past the end of the alpha buffer (up to 3,123 bytes for a 100x50
    image with 10-bit color and 8-bit alpha). A crafted HEIF file can exploit this to cause a denial of
    service (crash) or potentially disclose adjacent heap memory through leaked bytes embedded in the decoded
    output pixels. This issue has been fixed in versionThis issue has been fixed in version 1.22.0.
    (CVE-2026-32882)

Tenable has extracted the preceding description block directly from the tested product security advisory.

Note that Nessus has not tested for these issues but has instead relied only on the application's self-reported version
number.");
  script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com//AL2023/ALAS2023-2026-1814.html");
  script_set_attribute(attribute:"see_also", value:"https://alas.aws.amazon.com/faqs.html");
  script_set_attribute(attribute:"see_also", value:"https://explore.alas.aws.amazon.com/CVE-2026-32740.html");
  script_set_attribute(attribute:"see_also", value:"https://explore.alas.aws.amazon.com/CVE-2026-32741.html");
  script_set_attribute(attribute:"see_also", value:"https://explore.alas.aws.amazon.com/CVE-2026-32882.html");
  script_set_attribute(attribute:"solution", value:
"Run 'dnf update libheif --releasever 2023.12.20260608' or
  or 'dnf update --advisory ALAS2023-2026-1814 --releasever 2023.12.20260608' to update your system.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
  script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2026-32740");

  script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
  script_set_attribute(attribute:"exploit_available", value:"true");

  script_set_attribute(attribute:"vuln_publication_date", value:"2026/05/19");
  script_set_attribute(attribute:"patch_publication_date", value:"2026/06/08");
  script_set_attribute(attribute:"plugin_publication_date", value:"2026/06/08");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:heif-pixbuf-loader");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:heif-pixbuf-loader-debuginfo");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:libheif");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:libheif-debuginfo");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:libheif-debugsource");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:libheif-devel");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:libheif-tools");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:amazon:linux:libheif-tools-debuginfo");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:amazon:linux:2023");
  script_set_attribute(attribute:"generated_plugin", value:"current");
  script_set_attribute(attribute:"stig_severity", value:"I");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Amazon Linux Local Security Checks");

  script_copyright(english:"This script is Copyright (C) 2026 and is owned by Tenable, Inc. or an Affiliate thereof.");

  script_dependencies("ssh_get_info.nasl");
  script_require_keys("Host/local_checks_enabled", "Host/AmazonLinux/release", "Host/AmazonLinux/rpm-list");

  exit(0);
}

include("rpm.inc");

if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);

var alas_release = get_kb_item("Host/AmazonLinux/release");
if (isnull(alas_release) || !strlen(alas_release)) audit(AUDIT_OS_NOT, "Amazon Linux");
var os_ver = pregmatch(pattern: "^AL(A|\d+|-\d+)", string:alas_release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "Amazon Linux");
os_ver = os_ver[1];
if (os_ver != "-2023")
{
  if (os_ver == 'A') os_ver = 'AMI';
  audit(AUDIT_OS_NOT, "Amazon Linux 2023", "Amazon Linux " + os_ver);
}

if (!get_kb_item("Host/AmazonLinux/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);

var pkgs = [
    {'reference':'heif-pixbuf-loader-1.19.8-1.amzn2023.0.5', 'cpu':'aarch64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'heif-pixbuf-loader-1.19.8-1.amzn2023.0.5', 'cpu':'x86_64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'heif-pixbuf-loader-debuginfo-1.19.8-1.amzn2023.0.5', 'cpu':'aarch64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'heif-pixbuf-loader-debuginfo-1.19.8-1.amzn2023.0.5', 'cpu':'x86_64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-1.19.8-1.amzn2023.0.5', 'cpu':'aarch64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-1.19.8-1.amzn2023.0.5', 'cpu':'x86_64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-debuginfo-1.19.8-1.amzn2023.0.5', 'cpu':'aarch64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-debuginfo-1.19.8-1.amzn2023.0.5', 'cpu':'x86_64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-debugsource-1.19.8-1.amzn2023.0.5', 'cpu':'aarch64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-debugsource-1.19.8-1.amzn2023.0.5', 'cpu':'x86_64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-devel-1.19.8-1.amzn2023.0.5', 'cpu':'aarch64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-devel-1.19.8-1.amzn2023.0.5', 'cpu':'x86_64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-tools-1.19.8-1.amzn2023.0.5', 'cpu':'aarch64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-tools-1.19.8-1.amzn2023.0.5', 'cpu':'x86_64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-tools-debuginfo-1.19.8-1.amzn2023.0.5', 'cpu':'aarch64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE},
    {'reference':'libheif-tools-debuginfo-1.19.8-1.amzn2023.0.5', 'cpu':'x86_64', 'release':'AL-2023', 'rpm_spec_vers_cmp':TRUE}
];

var flag = 0;
foreach var package_array ( pkgs ) {
  var reference = NULL;
  var _release = NULL;
  var sp = NULL;
  var _cpu = NULL;
  var el_string = NULL;
  var rpm_spec_vers_cmp = NULL;
  var epoch = NULL;
  var allowmaj = NULL;
  var exists_check = NULL;
  var cves = NULL;
  if (!empty_or_null(package_array['reference'])) reference = package_array['reference'];
  if (!empty_or_null(package_array['release'])) _release = package_array['release'];
  if (!empty_or_null(package_array['sp'])) sp = package_array['sp'];
  if (!empty_or_null(package_array['cpu'])) _cpu = package_array['cpu'];
  if (!empty_or_null(package_array['el_string'])) el_string = package_array['el_string'];
  if (!empty_or_null(package_array['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = package_array['rpm_spec_vers_cmp'];
  if (!empty_or_null(package_array['epoch'])) epoch = package_array['epoch'];
  if (!empty_or_null(package_array['allowmaj'])) allowmaj = package_array['allowmaj'];
  if (!empty_or_null(package_array['exists_check'])) exists_check = package_array['exists_check'];
  if (!empty_or_null(package_array['cves'])) cves = package_array['cves'];
  if (reference && _release && (!exists_check || rpm_exists(release:_release, rpm:exists_check))) {
    if (rpm_check(release:_release, sp:sp, cpu:_cpu, reference:reference, epoch:epoch, el_string:el_string, rpm_spec_vers_cmp:rpm_spec_vers_cmp, allowmaj:allowmaj, cves:cves)) flag++;
  }
}

if (flag)
{
  security_report_v4(
      port       : 0,
      severity   : SECURITY_HOLE,
      extra      : rpm_report_get()
  );
  exit(0);
}
else
{
  var tested = pkg_tests_get();
  if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
  else audit(AUDIT_PACKAGE_NOT_INSTALLED, "heif-pixbuf-loader / heif-pixbuf-loader-debuginfo / libheif / etc");
}

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

26 Jun 2026 00:00Current
6Medium risk
Vulners AI Score6
CVSS 3.18.8
EPSS0.00514
SSVC
97