p PatchFirst

PatchFirst · Latest vulnerabilities

PHP stack vulnerabilities · Page 46

Vulnerabilities published for PHP in the last 30 days: 216. Listed in the KEV catalogue: 2.

Filter vulnerabilities
PHP

Early warnings

Fresh vulnerability reports from vendor announcements and security news. These warnings do not change the security rating.

  1. php

    No fix published

    PHP: remote code execution

    According to OpenNet, PHP has a remote code execution vulnerability (CVE-2026-115560). The exact affected versions are unspecified. The report does not name a fixed version.

    What to do now: Check whether a PHP update with the fix is available and install it.

    CVE-2026-115560

Vulnerabilities: 7231

  1. CVE-2026-55744

    High · CVSS 8.6EPSS 0.15%No fix published

    Cotonti CSRF in PFS allows forced arbitrary file upload

    Cotonti 1.0.0 (master branch, commit f43f1fc3) is vulnerable to Cross-Site Request Forgery in the Personal File Storage (PFS) module. In modules/pfs/inc/pfs.main.php, the file upload action ('a=upload') processes uploaded files without calling cot_check_xg to validate the anti-CSRF token, even though sibling actions such as 'delete' (line 272) do.

    Published Updated
  2. CVE-2026-55742

    Critical · CVSS 9.4EPSS 0.15%No fix published

    Cotonti CSRF in admin.rights.php allows privilege escalation

    Cotonti 1.0.0 (master branch, commit f43f1fc3) is vulnerable to Cross-Site Request Forgery in the administration rights handler. In system/admin/admin.rights.php, the rights update action ('a=update') modifies group access rights (including via cot_auth_add_group) without calling cot_check_xg to validate the anti-CSRF token.

    Published Updated
  3. CVE-2026-48820

    Medium · CVSS 6.3EPSS 0.26%Fix available

    CakePHP: View::element() is missing a path containment check

    CakePHP is a rapid development framework for PHP. In versions 4.5.11 and earlier, 4.6.0 through 4.6.3, 5.0.0 through 5.1.6, 5.2.0 through 5.2.12, and 5.3.0 through 5.3.5, View::_getElementFileName() does not check that the resolved element path is within the application/plugin view template paths. When element names are created with specifically crafted user-supplied data this weakness can be leveraged to include other PHP files on the server. Patched releases are available in 5.3.6, 5.2.13, 5.1.7, 4.6.4, and 4.5.11.

    • Update to 4.5.11
    • Update to 4.6.4
    • Update to 5.1.7
    • Update to 5.2.13
    • Update to 5.3.6
    Published Updated
  4. CVE-2026-48979

    High · CVSS 7.5EPSS 0.27%Fix available

    PHP Standard Library: HTTP/2 server-side missing content-length validation enables request smuggling

    PHP Standard Library (PSL) is set of APIs covering async, collections, networking, I/O, cryptography, terminal UI, etc. In versions 6.1.0, 6.1.1 and 6.2.0, the Psl\H2\ServerConnection does not validate that the total bytes received in DATA frames match the content-length header declared in the HEADERS frame, allowing request smuggling. This is in violation of RFC 9113 §8.1.1. A malicious client is able to send more DATA bytes than declared, smuggling additional content past application-level size limits and send fewer DATA bytes than declared and close the stream early, causing applications that trust the declared length to behave incorrectly

    • Update to 6.1.2
    • Update to 6.2.1
    Published Updated
  5. CVE-2026-11407

    High · CVSS 8.6EPSS 0.62%No fix published

    Pimcore CMS 12.3.8 Twig Sandbox Bypass via SecurityPolicy checkMethodAllowed

    Pimcore CMS/DXP version 12.3.8 contains a sandbox bypass vulnerability that allows authenticated administrative attackers to execute arbitrary methods on PHP objects by exploiting empty checkMethodAllowed() and checkPropertyAllowed() implementations in the custom Twig SecurityPolicy. Attackers can supply malicious Twig templates through the DataObject ClassDefinition Layout\Text component to perform arbitrary file reads, execute arbitrary database queries, and potentially achieve remote code execution via PHP object gadget chains, with the pimcore_* function wildcard further broadening the bypass to all Pimcore Twig functions.

    Published Updated
  6. GHSA-crmm-hgp2-wgrp

    Medium · CVSS 4.2Fix available

    Laravel Framework: Temporary Signed URL Path Confusion

    A vulnerability in Laravel's local filesystem driver allows temporary signed URLs to be parsed ambiguously, potentially misrouting requests and bypassing expiration enforcement. Under certain conditions, a generated temporary signed URL can be interpreted differently by the server than intended at signing time. This may cause requests to resolve to an unintended resource, and can prevent expiration from being enforced, allowing expired URLs to remain valid indefinitely. ### Impact - Expired temporary URLs may continue to be accepted - Requests may resolve to a different resource than the one that was signed - The upload variant may allow wr

    • Update to 12.61.1
    • Update to 13.12.0
    Published Updated
  7. CVE-2026-48157

    Medium · CVSS 6.1EPSS 0.17%Fix available

    Slim has Reflected XSS in the HtmlErrorRenderer

    Slim is a PHP micro framework that enables users to write simple web applications and APIs. In versions 4.4.0 through 4.15, if an application uses HttpException::setTitle() and/or setDescription() to include untrusted/request-derived data in the error title or description (e.g. "No products found matching '{$query}'."), an attacker could inject arbitrary HTML/JavaScript that executes in the victim's browser when they encounter an HTML error page generated by Slim. The vulnerability is present even with displayErrorDetails = false as the unescaped title and description are rendered on this error path. Built-in exceptions (HttpNotFoundException

    • Update to 4.15.2
    Published Updated
  8. CVE-2026-12202

    Medium · CVSS 4.8EPSS 0.21%No fix published

    Intelliants Subrion CMS Blocks Endpoint cross site scripting

    A vulnerability has been found in Intelliants Subrion CMS up to 4.0.3. Affected by this issue is some unknown functionality of the component Blocks Endpoint. Such manipulation of the argument CSS class name leads to cross site scripting. The attack may be launched remotely. The exploit has been disclosed to the public and may be used. The vendor was contacted early about this disclosure but did not respond in any way.

    Published Updated
  9. CVE-2026-12198

    Medium · CVSS 6.9EPSS 0.53%No fix published

    Microweber API Endpoint thumbnail_img userfiles_path path traversal

    A weakness has been identified in Microweber up to 2.0.20. This affects the function userfiles_path of the file /api_nosession/thumbnail_img of the component API Endpoint. Executing a manipulation of the argument cache_path_relative can lead to path traversal. It is possible to launch the attack remotely. The exploit has been made available to the public and could be used for attacks. The vendor was contacted early about this disclosure but did not respond in any way.

    Published Updated
  10. CVE-2026-50552

    Medium · CVSS 6.3EPSS 0.17%Fix available

    Koel: Server-Side Request Forgery (SSRF) in radio station creation due to missing validation bail

    Koel is a free, open-source music streaming solution. Prior to version 9.7.1, Koel contains a Server-Side Request Forgery (SSRF) vulnerability in the radio station creation endpoint (POST /api/radio/stations). The url field validation rules are declared without the bail keyword, so the HasAudioContentType rule — which issues HTTP requests to the supplied URL — still executes even after the SafeUrl rule has rejected the URL as pointing to a private/reserved address. Any authenticated, non-admin user can therefore coerce the server into making HEAD/GET requests to arbitrary internal hosts. This issue has been patched in version 9.7.1.

    • Update to 9.7.1
    Published Updated
  11. CVE-2026-47260

    High · CVSS 7.7EPSS 0.3%Fix available

    Koel Vulnerable to SSRF via Podcast Episode Enclosure URLs

    Koel is a free, open-source music streaming solution. Prior to version 9.3.5, Koel validates the podcast feed URL via the SafeUrl rule (DNS resolution + public IP check), but the individual episode <enclosure url="..."> values extracted from the RSS XML are stored directly into the database without any SSRF validation. When a user plays an episode, the server downloads the full HTTP response from the unvalidated enclosure URL via Http::sink()->get() and streams it back to the user, enabling full-read SSRF against internal services. This issue has been patched in version 9.3.5.

    • Update to 9.3.5
    Published Updated
  12. GHSA-6jq6-x4cx-qvcm

    Medium · CVSS 5.1Fix available

    Firefly II has Stored XSS in Audit Log Entry view via piggy bank name (ale.twig)

    ## Summary The Twig template `resources/views/list/ale.twig` renders the piggy bank name from `AuditLogEntry.after.piggy` using the `|raw` filter, bypassing Twig's auto-escaping. A piggy bank created with an HTML payload in its name executes arbitrary JavaScript in any browser viewing that transaction's audit log. ## Root Cause The `|raw` filter is required on the outer `trans()` call to preserve `<span>` tags in the `amount` parameter (currency styling). However, this also disables escaping for the user-controlled `name` parameter. **Vulnerable code (`resources/views/list/ale.twig` lines 107, 110):** ```twig {{ trans('firefly.ale_action_

    • Update to 6.6.3
    Published Updated
  13. CVE-2026-54133

    Critical · CVSS 9.8EPSS 0.44%Fix available

    jmespath.php has CompilerRuntime code injection via unescaped function names

    jmespath.php allows users to use JMESPath, software for declaratively specifying how to extract elements from a JSON document, in PHP applications with PHP data structures. Versions prior to 2.9.1 can generate and execute attacker-controlled PHP code when `JmesPath\CompilerRuntime` is used with an attacker-controlled JMESPath expression. The compiler emits parsed JMESPath function names into generated PHP source without sufficient escaping. A crafted expression can cause the generated cache file to contain executable attacker-controlled PHP, which is then loaded by the compiler runtime. The issue is patched in `2.9.1` and later. As a workarou

    • Update to 2.9.1
    Published Updated
  14. CVE-2026-45802

    Medium · CVSS 6EPSS 0.26%Fix available

    FPDI: Memory Exhaustion and Endless Loop in FPDI leads to Denial of Service

    FPDI is a collection of PHP classes that facilitate reading pages from existing PDF documents and using them as templates in FPDF. Prior to version 2.6.7, an attacker can upload a small, malicious PDF file that will cause the server-side script to crash due to memory exhaustion or a script time-out. Repeated attacks can lead to sustained service unavailability. This issue has been patched in version 2.6.7.

    • Update to 2.6.7
    Published Updated
  15. CVE-2026-53723

    Medium · CVSS 5.8EPSS 0.22%Fix available

    guzzlehttp/guzzle-services' XML Request Serialization Vulnerable to XML Injection via CDATA Terminator

    Guzzle Services provides an implementation of the Guzzle Command library that uses Guzzle service descriptions to describe web services, serialize requests, and parse responses into easy to use model structures. Versions prior ro 1.5.4 do not safely serialize scalar XML element values containing the CDATA terminator `]]>`. The XML request serializer writes values containing `<`, `>`, or `&` with `XMLWriter::writeCData($value)`. If attacker-controlled input contains `]]>`, the CDATA section closes early and the remainder is interpreted as XML markup. This is an outgoing request-body integrity issue, not a response parsing issue. The attacker d

    • Update to 1.5.4
    Published Updated
  16. CVE-2026-49214

    Medium · CVSS 5.3EPSS 0.19%Fix available

    guzzlehttp/psr7 has CRLF Injection via URI Host Component

    guzzlehttp/psr7 is a PSR-7 HTTP message library implementation in PHP. Versions prior to 2.10.2 did not reject ASCII control characters, whitespace, or DEL in first-party URI host components. A vulnerable flow is: First, an application accepts a user-controlled URL. Second, the URL is used to construct a PSR-7 `Uri` or `Request`. Third, the host component contains CRLF or another header-unsafe character. Fourth, the host is copied into the PSR-7 `Host` header when no explicit `Host` header is provided. Finally, the request is serialized or sent by an HTTP client that does not independently reject the malformed host. In that flow, an attacker

    • Update to 2.10.2
    • Update to 2.10.3-1
    • Update to 2.4.5-1+deb12u1
    • Update to 2.7.1-1+deb13u1
    Published Updated
  17. CVE-2026-48998

    Medium · CVSS 5.3EPSS 0.2%Fix available

    guzzlehttp/psr7 has Host Confusion via Authority Reinterpretation

    guzzlehttp/psr7 is a PSR-7 HTTP message library implementation in PHP. Versions prior to 2.10.2 contain improper Host header validation when parsing raw HTTP request messages and when deriving a server request URI from server variables. An attacker can provide a malformed Host header containing URI authority delimiters, such as `[email protected]`. When the Host value is used to construct a URI, the malformed value can be reinterpreted as URI userinfo and host. This can cause the PSR-7 request URI host to differ from the original Host header value. Applications are affected if they parse attacker-controlled raw HTTP requests with `

    • Update to 2.10.2
    • Update to 2.10.3-1
    • Update to 2.4.5-1+deb12u1
    • Update to 2.7.1-1+deb13u1
    Published Updated

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →