Lucene search
K

Fedora 42 : php (2025-ce8a4096e7)

🗓️ 19 Dec 2025 00:00:00Reported by TenableType 
nessus
 nessus
🔗 www.tenable.com👁 3 Views

Fedora 42 PHP 8.4.16 advisory fixes multiple vulnerabilities (FEDORA-2025-ce8a4096e7).

Related
Refs
Code
#%NASL_MIN_LEVEL 80900
##
# (C) Tenable, Inc.
##
# The descriptive text and package checks in this plugin were
# extracted from Fedora Security Advisory FEDORA-2025-ce8a4096e7
#

include('compat.inc');

if (description)
{
  script_id(279350);
  script_version("1.3");
  script_set_attribute(attribute:"plugin_modification_date", value:"2026/02/23");

  script_cve_id("CVE-2025-14177", "CVE-2025-14178", "CVE-2025-14180");
  script_xref(name:"FEDORA", value:"2025-ce8a4096e7");
  script_xref(name:"IAVA", value:"2026-A-0020");

  script_name(english:"Fedora 42 : php (2025-ce8a4096e7)");

  script_set_attribute(attribute:"synopsis", value:
"The remote Fedora host is missing one or more security updates.");
  script_set_attribute(attribute:"description", value:
"The remote Fedora 42 host has a package installed that is affected by multiple vulnerabilities as referenced in the
FEDORA-2025-ce8a4096e7 advisory.

    **PHP version 8.4.16** (18 Dec 2025)

    **Core:**

    * Sync all boost.context files with release 1.86.0. (mvorisek)
    * Fixed bug [GH-20435](https://github.com/php/php-src/issues/20435) (SensitiveParameter doesn't work for
    named argument passing to variadic parameter). (ndossche)
    * Fixed bug [GH-20286](https://github.com/php/php-src/issues/20286) (use-after-destroy during userland
    stream_close()). (ndossche, David Carlier)

    **Bz2:**

    * Fix assertion failures resulting in crashes with stream filter object parameters. (ndossche)

    **Date:**

    * Fix crashes when trying to instantiate uninstantiable classes via date static constructors. (ndossche)

    **DOM:**

    * Fix memory leak when edge case is hit when registering xpath callback. (ndossche)
    * Fixed bug [GH-20395](https://github.com/php/php-src/issues/20395) (querySelector and querySelectorAll
    requires elements in $selectors to be lowercase). (ndossche)
    * Fix missing NUL byte check on C14NFile(). (ndossche)

    **Fibers:**

    * Fixed bug [GH-20483](https://github.com/php/php-src/issues/20483) (ASAN stack overflow with
    fiber.stack_size INI small value). (David Carlier)

    **FTP:**

    * Fixed bug [GH-20601](https://github.com/php/php-src/issues/20601) (ftp_connect overflow on timeout).
    (David Carlier)

    **GD:**

    * Fixed bug [GH-20511](https://github.com/php/php-src/issues/20511) (imagegammacorrect out of range
    input/output values). (David Carlier)
    * Fixed bug [GH-20602](https://github.com/php/php-src/issues/20602) (imagescale overflow with large height
    values). (David Carlier)

    **Intl:**

    * Fixed bug [GH-20426](https://github.com/php/php-src/issues/20426) (Spoofchecker::setRestrictionLevel()
    error message suggests missing constants). (DanielEScherzer)

    **LibXML:**

    * Fix some deprecations on newer libxml versions regarding input buffer/parser handling. (ndossche)

    **MbString:**

    * Fixed bug [GH-20491](https://github.com/php/php-src/issues/20491) (SLES15 compile error with mbstring
    oniguruma). (ndossche)
    * Fixed bug [GH-20492](https://github.com/php/php-src/issues/20492) (mbstring compile warning due to non-
    strings). (ndossche)

    **MySQLnd:**

    * Fixed bug [GH-20528](https://github.com/php/php-src/issues/20528) (Regression breaks mysql connexion
    using an IPv6 address enclosed in square brackets). (Remi)

    **Opcache:**

    * Fixed bug [GH-20329](https://github.com/php/php-src/issues/20329) (opcache.file_cache broken with full
    interned string buffer). (Arnaud)

    **PDO:**

    * Fixed [GHSA-8xr5-qppj-gvwj](https://github.com/php/php-src/security/advisories/GHSA-8xr5-qppj-gvwj) (PDO
    quoting result null deref). (**CVE-2025-14180**) (Jakub Zelenka)

    **Phar:**

    * Fixed bug [GH-20442](https://github.com/php/php-src/issues/20442) (Phar does not respect case-
    insensitiveness of __halt_compiler() when reading stub). (ndossche, TimWolla)
    * Fix broken return value of fflush() for phar file entries. (ndossche)
    * Fix assertion failure when fseeking a phar file out of bounds. (ndossche)

    **PHPDBG:**

    * Fixed ZPP type violation in phpdbg_get_executable() and phpdbg_end_oplog(). (Girgias)

    **SPL:**

    * Fixed bug [GH-20614](https://github.com/php/php-src/issues/20614) (SplFixedArray incorrectly handles
    references in deserialization). (ndossche)

    **Standard:**

    * Fix memory leak in array_diff() with custom type checks. (ndossche)
    * Fixed bug [GH-20583](https://github.com/php/php-src/issues/20583) (Stack overflow in http_build_query
    via deep structures). (ndossche)
    * Fixed [GHSA-www2-q4fc-65wf](https://github.com/php/php-src/security/advisories/GHSA-www2-q4fc-65wf)
    (Null byte termination in dns_get_record()). (ndossche)
    * Fixed [GHSA-h96m-rvf9-jgm2](https://github.com/php/php-src/security/advisories/GHSA-h96m-rvf9-jgm2)
    (Heap buffer overflow in array_merge()). (**CVE-2025-14178**) (ndossche)
    * Fixed [GHSA-3237-qqm7-mfv7](https://github.com/php/php-src/security/advisories/GHSA-3237-qqm7-mfv7)
    (Information Leak of Memory in getimagesize). (**CVE-2025-14177**) (ndossche)

    **Tidy:**

    * Fixed bug [GH-20374](https://github.com/php/php-src/issues/20374) (PHP with tidy and custom-tags).
    (ndossche)

    **XML:**

    * Fixed bug [GH-20439](https://github.com/php/php-src/issues/20439) (xml_set_default_handler() does not
    properly handle special characters in attributes when passing data to callback). (ndossche)

    **Zlib:**

    * Fix assertion failures resulting in crashes with stream filter object parameters. (ndossche)


Tenable has extracted the preceding description block directly from the Fedora 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://bodhi.fedoraproject.org/updates/FEDORA-2025-ce8a4096e7");
  script_set_attribute(attribute:"solution", value:
"Update the affected php package.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:N/I:P/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:N/S:U/C:N/I:L/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:P/RL:O/RC:C");
  script_set_attribute(attribute:"cvss4_vector", value:"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N");
  script_set_attribute(attribute:"cvss4_threat_vector", value:"CVSS:4.0/E:P");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2025-14178");
  script_set_attribute(attribute:"cvss4_score_source", value:"CVE-2025-14180");

  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:"2025/12/17");
  script_set_attribute(attribute:"patch_publication_date", value:"2025/12/17");
  script_set_attribute(attribute:"plugin_publication_date", value:"2025/12/19");

  script_set_attribute(attribute:"plugin_type", value:"local");
  script_set_attribute(attribute:"cpe", value:"cpe:/o:fedoraproject:fedora:42");
  script_set_attribute(attribute:"cpe", value:"p-cpe:/a:fedoraproject:fedora:php");
  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:"Fedora Local Security Checks");

  script_copyright(english:"This script is Copyright (C) 2025-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/RedHat/release", "Host/RedHat/rpm-list");

  exit(0);
}


include('rpm2.inc');

if (!get_kb_item('Host/local_checks_enabled')) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
var os_product = get_kb_item('installed_os/local/SSH/0/product');
if (isnull(os_product) || 'Fedora' >!< os_product) audit(AUDIT_OS_NOT, 'Fedora');
var os_version = get_kb_item('installed_os/local/SSH/0/version');
if (isnull(os_version)) audit(AUDIT_UNKNOWN_APP_VER, 'Fedora');
if (! preg(pattern:"^42([^0-9]|$)", string:os_version)) audit(AUDIT_OS_NOT, 'Fedora 42', 'Fedora ' + os_version);

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) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, 'Fedora', cpu);

var constraints = [
  {
    'release': '42',
    'pkgs': [
      {'reference':'php-8.4.16-1.fc42', 'rpm_spec_vers_cmp':TRUE}
    ]
  }
];

var os_release = get_one_kb_item('installed_os/local/SSH/0/release');
var os_sp = get_one_kb_item('Host/*/minor_release');

var flag = 0;
var reference;
var sp;
var _cpu;
var el_string;
var rpm_spec_vers_cmp;
var epoch;
var allowmaj;
var exists_check;
var cves;
foreach var constraint ( constraints ) {
  # Check that the target release is equal to the affected release
  if (!empty_or_null(constraint['release'])){
    if (constraint['release'] != os_release) continue;
  }
  if (!empty_or_null(constraint['sp'])){
    if (constraint['sp'] != os_sp) continue;
  }
  foreach var pkg ( constraint['pkgs'] ) {
    reference = NULL;
    sp = NULL;
    _cpu = NULL;
    el_string = NULL;
    rpm_spec_vers_cmp = NULL;
    epoch = NULL;
    allowmaj = NULL;
    exists_check = NULL;
    cves = NULL;
    if (!empty_or_null(pkg['reference'])) reference = pkg['reference'];
    if (!empty_or_null(pkg['sp'])) sp = pkg['sp'];
    if (!empty_or_null(pkg['cpu'])) _cpu = pkg['cpu'];
    if (!empty_or_null(pkg['el_string'])) el_string = pkg['el_string'];
    if (!empty_or_null(pkg['rpm_spec_vers_cmp'])) rpm_spec_vers_cmp = pkg['rpm_spec_vers_cmp'];
    if (!empty_or_null(pkg['epoch'])) epoch = pkg['epoch'];
    if (!empty_or_null(pkg['allowmaj'])) allowmaj = pkg['allowmaj'];
    if (!empty_or_null(pkg['exists_check'])) exists_check = pkg['exists_check'];
    if (!empty_or_null(pkg['cves'])) cves = pkg['cves'];
    if (reference &&
        ## (no known rpm to check OR known rpm_exists)
        (!exists_check || rpm_exists(rpm:exists_check)) &&
        rpm_check(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, 'php');
}

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

23 Feb 2026 00:00Current
6Medium risk
Vulners AI Score6
CVSS 3.16.5 - 8.2
CVSS 48.2
EPSS0.00573
SSVC
3