Lucene search
K

RHEL 6 : gimp (Unpatched Vulnerability)

RHEL 6 GIMP unpatched vulnerabilities heap-based buffer overflows

Related
Refs
Code
ReporterTitlePublishedViews
Family
FreeBSD
The GIMP -- Use after Free vulnerability
20 Jun 201600:00
freebsd
FreeBSD
GIMP - Heap Buffer Overflow Vulnerability
21 Dec 201700:00
freebsd
ATTACKERKB
CVE-2022-30067
17 May 202217:15
attackerkb
ATTACKERKB
CVE-2017-17788
20 Dec 201709:29
attackerkb
ATTACKERKB
CVE-2022-32990
24 Jun 202214:15
attackerkb
ATTACKERKB
CVE-2017-17789
20 Dec 201709:29
attackerkb
ATTACKERKB
CVE-2017-17786
20 Dec 201709:29
attackerkb
ATTACKERKB
CVE-2017-17784
20 Dec 201709:29
attackerkb
ATTACKERKB
CVE-2017-17787
20 Dec 201709:29
attackerkb
ATTACKERKB
CVE-2017-17785
20 Dec 201709:29
attackerkb
Rows per page
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
#
# The descriptive text and package checks in this plugin were
# extracted from Red Hat Security Advisory gimp. The text
# itself is copyright (C) Red Hat, Inc.
##

include('compat.inc');

if (description)
{
  script_id(195523);
  script_version("1.0");
  script_set_attribute(attribute:"plugin_modification_date", value:"2024/05/11");

  script_cve_id(
    "CVE-2016-4994",
    "CVE-2017-17784",
    "CVE-2017-17785",
    "CVE-2017-17786",
    "CVE-2017-17787",
    "CVE-2017-17788",
    "CVE-2017-17789",
    "CVE-2022-30067",
    "CVE-2022-32990",
    "CVE-2023-44442",
    "CVE-2023-44444"
  );

  script_name(english:"RHEL 6 : gimp (Unpatched Vulnerability)");

  script_set_attribute(attribute:"synopsis", value:
"The remote Red Hat 6 host is affected by multiple vulnerabilities that will not be patched.");
  script_set_attribute(attribute:"description", value:
"The remote Redhat Enterprise Linux 6 host has one or more packages installed that are affected by multiple
vulnerabilities that have been acknowledged by the vendor but will not be patched.

  - gimp: Heap-based buffer overflow in read_channel_data function in plug-ins/common/file-psp.c
    (CVE-2017-17789)

  - Use-after-free vulnerability in the xcf_load_image function in app/xcf/xcf-load.c in GIMP allows remote
    attackers to cause a denial of service (program crash) or possibly execute arbitrary code via a crafted
    XCF file. (CVE-2016-4994)

  - In GIMP 2.8.22, there is a heap-based buffer over-read in load_image in plug-ins/common/file-gbr.c in the
    gbr import parser, related to mishandling of UTF-8 data. (CVE-2017-17784)

  - In GIMP 2.8.22, there is a heap-based buffer overflow in the fli_read_brun function in plug-ins/file-
    fli/fli.c. (CVE-2017-17785)

  - In GIMP 2.8.22, there is a heap-based buffer over-read in ReadImage in plug-ins/common/file-tga.c (related
    to bgr2rgb.part.1) via an unexpected bits-per-pixel value for an RGBA image. (CVE-2017-17786)

  - In GIMP 2.8.22, there is a heap-based buffer over-read in read_creator_block in plug-ins/common/file-
    psp.c. (CVE-2017-17787)

  - In GIMP 2.8.22, there is a stack-based buffer over-read in xcf_load_stream in app/xcf/xcf.c when there is
    no '\0' character after the version string. (CVE-2017-17788)

  - GIMP 2.10.30 and 2.99.10 are vulnerable to Buffer Overflow. Through a crafted XCF file, the program will
    allocate for a huge amount of memory, resulting in insufficient memory or program crash. (CVE-2022-30067)

  - An issue in gimp_layer_invalidate_boundary of GNOME GIMP 2.10.30 allows attackers to trigger an unhandled
    exception via a crafted XCF file, causing a Denial of Service (DoS). (CVE-2022-32990)

  - GIMP PSD File Parsing Heap-based Buffer Overflow Remote Code Execution Vulnerability. This vulnerability
    allows remote attackers to execute arbitrary code on affected installations of GIMP. User interaction is
    required to exploit this vulnerability in that the target must visit a malicious page or open a malicious
    file. The specific flaw exists within the parsing of PSD files. The issue results from the lack of proper
    validation of the length of user-supplied data prior to copying it to a heap-based buffer. An attacker can
    leverage this vulnerability to execute arbitrary code in the context of the current process. Was ZDI-
    CAN-22094. (CVE-2023-44442)

  - GIMP PSP File Parsing Off-By-One Remote Code Execution Vulnerability. This vulnerability allows remote
    attackers to execute arbitrary code on affected installations of GIMP. User interaction is required to
    exploit this vulnerability in that the target must visit a malicious page or open a malicious file. The
    specific flaw exists within the parsing of PSP files. Crafted data in a PSP file can trigger an off-by-one
    error when calculating a location to write within a heap-based buffer. An attacker can leverage this
    vulnerability to execute code in the context of the current process. Was ZDI-CAN-22097. (CVE-2023-44444)

Note that Nessus has not tested for these issues but has instead relied on the package manager's report that the package
is installed.");
  script_set_attribute(attribute:"solution", value:
"The vendor has acknowledged the vulnerabilities but no solution has been provided. Refer to the vendor for remediation
guidance.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:P");
  script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:L/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-2017-17789");

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

  script_set_attribute(attribute:"vuln_publication_date", value:"2016/06/20");
  script_set_attribute(attribute:"plugin_publication_date", value:"2024/05/11");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:5");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:6");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:7");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:gimp");
  script_set_attribute(attribute:"generated_plugin", value:"current");
  script_end_attributes();

  script_category(ACT_GATHER_INFO);
  script_family(english:"Red Hat Local Security Checks");

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

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

  exit(0);
}


include('rpm.inc');
include('rhel.inc');

if (!get_kb_item("global_settings/vendor_unpatched"))
exit(0, "Unpatched Vulnerabilities Detection not active.");

if (!get_kb_item('Host/local_checks_enabled')) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var os_release = get_kb_item('Host/RedHat/release');
if (isnull(os_release) || 'Red Hat' >!< os_release) audit(AUDIT_OS_NOT, 'Red Hat');
var os_ver = pregmatch(pattern: "Red Hat Enterprise Linux.*release ([0-9]+(\.[0-9]+)?)", string:os_release);
if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, 'Red Hat');
os_ver = os_ver[1];
if (!rhel_check_release(operator: 'ge', os_version: os_ver, rhel_version: '6')) audit(AUDIT_OS_NOT, 'Red Hat 6.x', 'Red Hat ' + os_ver);

if (!get_kb_item('Host/RedHat/rpm-list')) audit(AUDIT_PACKAGE_LIST_MISSING);

var cpu = get_kb_item('Host/cpu');
if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
if ('x86_64' >!< cpu && cpu !~ "^i[3-6]86$" && 's390' >!< cpu && 'aarch64' >!< cpu && 'ppc' >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'Red Hat', cpu);

var constraints = [
  {
    'pkgs': [
      {'reference':'gimp', 'release':'6', 'rpm_spec_vers_cmp':TRUE, 'unpatched_pkg':'gimp'}
    ]
  }
];


var flag = 0;
foreach var constraint_array ( constraints ) {
  var repo_relative_urls = NULL;
  var enterprise_linux_flag = rhel_repo_urls_has_content_dist_rhel(repo_urls:repo_relative_urls);
  foreach var pkg ( constraint_array['pkgs'] ) {
    var unpatched_pkg = NULL;
    var _release = NULL;
    var sp = NULL;
    var el_string = NULL;
    var rpm_spec_vers_cmp = NULL;
    var exists_check = NULL;
    var cves = NULL;
    if (!empty_or_null(pkg['unpatched_pkg'])) unpatched_pkg = pkg['unpatched_pkg'];
    if (!empty_or_null(pkg['release'])) _release = 'RHEL' + pkg['release'];
    if (!empty_or_null(pkg['sp'])) sp = pkg['sp'];
    if (!empty_or_null(pkg['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = pkg['rpm_spec_vers_cmp'];
    if (!empty_or_null(pkg['exists_check'])) exists_check = pkg['exists_check'];
    if (!empty_or_null(pkg['cves'])) cves = pkg['cves'];
    if (unpatched_pkg &&
        _release &&
        (!exists_check || rpm_exists(release:_release, rpm:exists_check)) &&
        unpatched_package_exists(release:_release, package:unpatched_pkg, cves: cves)) flag++;
  }
}

if (flag)
{
  var extra = NULL;
  security_report_v4(
      port       : 0,
      severity   : SECURITY_WARNING,
      extra      : unpatched_packages_report()
  );
  exit(0);
}
else
{
  var tested = pkg_tests_get();
  if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
  else audit(AUDIT_PACKAGE_NOT_INSTALLED, 'gimp');
}

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