OESA-2026-2343 (CVE-2025-14179)

Vulnerability from osv_openeuler – Published: 2026-05-15 11:11 – Updated: 2026-08-06 11:11 – Source website
VLAI
Summary
php security update
Details

PHP is an HTML-embedded scripting language. PHP attempts to make it easy for developers to write dynamically generated web pages. PHP also offers built-in database integration for several commercial and non-commercial database management systems, so writing a database-enabled webpage with PHP is fairly simple. The most common use of PHP coding is probably as a replacement for CGI scripts. The php package contains the module (often referred to as mod_php) which adds support for the PHP language to Apache HTTP Server.

Security Fix(es):

In PHP versions 8.2. before 8.2.31, 8.3. before 8.3.31, 8.4. before 8.4.21, and 8.5. before 8.5.6, the PDO Firebird driver improperly handles NUL bytes when preparing SQL queries. During token-by-token query construction, a string token containing a NUL byte is copied via strncat(), which stops at the NUL byte, dropping the closing quote and causing subsequent SQL tokens to be interpreted as part of the string. This allows SQL injection when attacker-controlled values are quoted via PDO::quote() and embedded in SQL statements.(CVE-2025-14179)

In PHP versions 8.2. before 8.2.31, 8.3. before 8.3.31, 8.4. before 8.4.21, and 8.5. before 8.5.6, the SOAP extension's object deduplication mechanism stores pointers to PHP objects in a global map without incrementing their reference counts. When an apache:Map node contains duplicate keys, processing the second entry overwrites the first in the temporary result map, freeing the original PHP object while its stale pointer remains in the map. A subsequent href reference to the freed node can copy the dangling pointer into the result. As PHP string allocations can reclaim the freed memory region, an attacker with control over the SOAP request body can exploit this use-after-free to achieve remote code execution.(CVE-2026-6722)

In PHP versions 8.2. before 8.2.31, 8.3. before 8.3.31, 8.4. before 8.4.21, 8.5. before 8.5.6, due to improper sanitation of user data, it allows an attacker to compose an URL, which will cause the target to execute arbitrary JavaScript code (XSS) on the target's machine when the target is viewing the PHP-FPM status page.(CVE-2026-6735)

In PHP versions 8.2. before 8.2.31, 8.3. before 8.3.31, 8.4. before 8.4.21, and 8.5. before 8.5.6, some functions, including urldecode(), pass signed char to ctype functions (like isxdigit()). On the systems with default signed char and optimized table-lookup ctype functions - such as NetBSD - this can lead to accessing array with negative offset, which can trigger a denial of service.(CVE-2026-7258)

In PHP versions 8.2. before 8.2.31, 8.3. before 8.3.31, 8.4. before 8.4.21, and 8.5. before 8.5.6, a mismatch between encoding lists in Oniguruma and mbfl leads to  a NULL pointer dereference, resulting in a segmentation fault and denial of service. The vulnerability is exploitable when user-controlled input can influence the encoding passed to mb_regex_encoding().(CVE-2026-7259)

In PHP versions 8.2. before 8.2.31, 8.3. before 8.3.31, 8.4. before 8.4.21, and 8.5. before 8.5.6, when SoapServer is configured with SOAP_PERSISTENCE_SESSION, the handler object is persisted across requests via session storage. However, in the case SOAP requests results in an error, the persistance is handled incorrectly, resulting in freeing the object while keeping a pointer to it, which may lead to use-after-free. This may lead to memory corruption, information disclosure, or process crashes, with confidentiality, integrity, and availability impact on the vulnerable system.(CVE-2026-7261)

In PHP versions 8.2. before 8.2.31, 8.3. before 8.3.31, 8.4. before 8.4.21, and 8.5. before 8.5.6, when a SOAP server has a typemap configured, the decoding process contains a mistake which checks the wrong variable in case of missing value element.  This leads to dereferences a NULL pointer, causing a segmentation fault. This allows a remote unauthenticated attacker to crash the PHP SOAP server process, resulting in denial of service.(CVE-2026-7262)

In PHP versions 8.2. before 8.2.31, 8.3. before 8.3.31, 8.4. before 8.4.21, and 8.5. before 8.5.6, the metaphone() function in ext/standard/metaphone.c uses a signed int variable to track the current position within the input string. If a string longer than 2,147,483,647 bytes is passed, a signed integer overflow occurs, resulting in undefined behavior. This can lead to an out-of-bounds read, causing a segmentation fault or access to unrelated memory, and may affect the availability of the PHP process.(CVE-2026-7568)


{
  "affected": [
    {
      "ecosystem_specific": {
        "aarch64": [
          "php-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-bcmath-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-cli-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-common-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-dba-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-dbg-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-debuginfo-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-debugsource-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-devel-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-embedded-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-enchant-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-ffi-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-fpm-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-gd-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-gmp-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-intl-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-ldap-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-mbstring-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-mysqlnd-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-odbc-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-opcache-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-pdo-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-pgsql-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-process-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-snmp-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-soap-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-sodium-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-tidy-8.3.31-1.oe2403sp1.aarch64.rpm",
          "php-xml-8.3.31-1.oe2403sp1.aarch64.rpm"
        ],
        "noarch": [
          "php-help-8.3.31-1.oe2403sp1.noarch.rpm"
        ],
        "src": [
          "php-8.3.31-1.oe2403sp1.src.rpm"
        ],
        "x86_64": [
          "php-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-bcmath-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-cli-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-common-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-dba-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-dbg-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-debuginfo-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-debugsource-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-devel-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-embedded-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-enchant-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-ffi-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-fpm-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-gd-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-gmp-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-intl-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-ldap-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-mbstring-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-mysqlnd-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-odbc-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-opcache-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-pdo-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-pgsql-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-process-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-snmp-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-soap-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-sodium-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-tidy-8.3.31-1.oe2403sp1.x86_64.rpm",
          "php-xml-8.3.31-1.oe2403sp1.x86_64.rpm"
        ]
      },
      "package": {
        "ecosystem": "openEuler:24.03-LTS-SP1",
        "name": "php",
        "purl": "pkg:rpm/openEuler/php\u0026distro=openEuler-24.03-LTS-SP1"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "8.3.31-1.oe2403sp1"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "database_specific": {
    "severity": "Critical"
  },
  "details": "PHP is an HTML-embedded scripting language. PHP attempts to make it easy for developers to write dynamically generated web pages. PHP also offers built-in database integration for several commercial and non-commercial database management systems, so writing a database-enabled webpage with PHP is fairly simple. The most common use of PHP coding is probably as a replacement for CGI scripts. The php package contains the module (often referred to as mod_php) which adds support for the PHP language to Apache HTTP Server.\r\n\r\nSecurity Fix(es):\n\nIn PHP versions 8.2.* before 8.2.31, 8.3.* before 8.3.31, 8.4.* before 8.4.21, and 8.5.* before 8.5.6, the PDO Firebird driver improperly handles NUL bytes when preparing SQL queries. During token-by-token query construction, a string token containing a NUL byte is copied via strncat(), which stops at the NUL byte, dropping the closing quote and causing subsequent SQL tokens to be interpreted as part of the string. This allows SQL injection when attacker-controlled values are quoted via PDO::quote() and embedded in SQL\u00a0statements.(CVE-2025-14179)\n\nIn PHP versions 8.2.* before 8.2.31, 8.3.* before 8.3.31, 8.4.* before 8.4.21, and 8.5.* before 8.5.6, the SOAP extension\u0026apos;s object deduplication mechanism stores pointers to PHP objects in a global map\u00a0without incrementing their reference counts. When an apache:Map node contains duplicate keys, processing the second entry overwrites the first in the temporary result map, freeing the original PHP object while its stale pointer remains in the map. A subsequent href reference to the freed node can copy the dangling pointer into the result. As PHP string allocations can reclaim the freed memory region, an attacker with control over the SOAP request body can exploit this use-after-free to achieve remote code execution.(CVE-2026-6722)\n\nIn PHP versions 8.2.* before 8.2.31, 8.3.* before 8.3.31, 8.4.* before 8.4.21, 8.5.* before 8.5.6, due to improper sanitation of user data, it\u00a0allows an attacker to compose an URL, which will cause the target to execute arbitrary JavaScript code (XSS) on the target\u0026apos;s machine when the target is viewing the\u00a0PHP-FPM status page.(CVE-2026-6735)\n\nIn PHP versions 8.2.* before 8.2.31, 8.3.* before 8.3.31, 8.4.* before 8.4.21, and 8.5.* before 8.5.6, some functions, including urldecode(), pass signed char to ctype functions (like\u00a0isxdigit()). On the systems with default signed char and optimized table-lookup ctype functions - such as NetBSD - this can lead to accessing array with negative offset, which\u00a0can trigger a denial of service.(CVE-2026-7258)\n\nIn PHP versions 8.2.* before 8.2.31, 8.3.* before 8.3.31, 8.4.* before 8.4.21, and 8.5.* before 8.5.6, a mismatch between encoding lists in Oniguruma and mbfl leads to\u00a0\u00a0a NULL pointer dereference, resulting in a segmentation fault and denial of service. The vulnerability is exploitable when user-controlled input can influence the encoding passed to\u00a0mb_regex_encoding().(CVE-2026-7259)\n\nIn PHP versions 8.2.* before 8.2.31, 8.3.* before 8.3.31, 8.4.* before 8.4.21, and 8.5.* before 8.5.6, when SoapServer is configured with SOAP_PERSISTENCE_SESSION, the handler object is persisted across requests via session storage. However, in the case SOAP requests results in an error, the persistance is handled incorrectly, resulting in freeing the object while keeping a pointer to it, which may lead to use-after-free. This may lead to memory corruption, information disclosure, or process crashes, with confidentiality, integrity, and availability impact on the vulnerable system.(CVE-2026-7261)\n\nIn PHP versions 8.2.* before 8.2.31, 8.3.* before 8.3.31, 8.4.* before 8.4.21, and 8.5.* before 8.5.6, when a SOAP server has a typemap configured, the decoding process contains a mistake which checks the wrong variable in case of missing value element.\u00a0 This leads to\u00a0dereferences a NULL pointer, causing a segmentation fault. This allows a remote unauthenticated attacker to crash the PHP SOAP server process, resulting in denial of service.(CVE-2026-7262)\n\nIn PHP versions 8.2.* before 8.2.31, 8.3.* before 8.3.31, 8.4.* before 8.4.21, and 8.5.* before 8.5.6, the metaphone() function in ext/standard/metaphone.c uses a signed int variable to track the current position within the input string. If a string longer than 2,147,483,647 bytes is passed, a signed integer overflow occurs, resulting in undefined behavior. This can lead to an out-of-bounds read, causing a segmentation fault or access to unrelated memory, and may affect the availability of the PHP process.(CVE-2026-7568)",
  "id": "OESA-2026-2343",
  "modified": "2026-08-06T11:11:18Z",
  "published": "2026-05-15T11:11:18Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-2343"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2025-14179"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-6722"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-6735"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-7258"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-7259"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-7261"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-7262"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-7568"
    }
  ],
  "schema_version": "1.7.2",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ],
  "summary": "php security update",
  "upstream": [
    "CVE-2025-14179",
    "CVE-2026-6722",
    "CVE-2026-6735",
    "CVE-2026-7258",
    "CVE-2026-7259",
    "CVE-2026-7261",
    "CVE-2026-7262",
    "CVE-2026-7568"
  ]
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…