RHSA-2026:84587

Vulnerability from csaf_redhat - Published: 2026-10-19 02:45 - Updated: 2026-11-02 18:49
Summary
Red Hat Security Advisory: perl-URI security update
Severity
Moderate
Notes
Topic: An update for perl-URI is now available for Red Hat Enterprise Linux 10. Red Hat Product Security has rated this update as having a security impact of Moderate. A Common Vulnerability Scoring System (CVSS) base score, which gives a detailed severity rating, is available for each vulnerability from the CVE link(s) in the References section.
Details: This module implements the URI class. Objects of this class represent "Uniform Resource Identifier references" as specified in RFC 2396 (and updated by RFC 2732). Security Fix(es): * URI: URI (for Perl): Security bypass due to incorrect hostname encoding via missing Unicode normalization (CVE-2026-19953) For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
Terms of Use: This content is licensed under the Creative Commons Attribution 4.0 International License (https://creativecommons.org/licenses/by/4.0/). If you distribute this content, or a modified version of it, you must provide attribution to Red Hat Inc. and provide a link to the original.

A flaw was found in the URI component for Perl. This vulnerability occurs because the `nameprep` function, responsible for encoding hostnames, does not properly normalize Unicode characters. As a result, a hostname that is not in a standard Unicode form (non-NFC) can be encoded into a non-standard label. This discrepancy can lead to a situation where security checks, such as allow lists or Server-Side Request Forgery (SSRF) filters, may incorrectly process hostnames, potentially allowing an attacker to bypass security restrictions.

CWE-838 - Inappropriate Encoding for Output Context
Affected products
Product Identifier Version Remediation
Unresolved product id: AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.noarch —
Vendor Fix fix
Workaround
Unresolved product id: AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.src —
Vendor Fix fix
Workaround
Threats
Impact Moderate

{
  "document": {
    "aggregate_severity": {
      "namespace": "https://access.redhat.com/security/updates/classification/",
      "text": "Moderate"
    },
    "category": "csaf_security_advisory",
    "csaf_version": "2.0",
    "distribution": {
      "text": "Copyright \u00a9 Red Hat, Inc. All rights reserved.",
      "tlp": {
        "label": "WHITE",
        "url": "https://www.first.org/tlp/"
      }
    },
    "lang": "en",
    "notes": [
      {
        "category": "summary",
        "text": "An update for perl-URI is now available for Red Hat Enterprise Linux 10.\n\nRed Hat Product Security has rated this update as having a security impact of Moderate. A Common Vulnerability Scoring System (CVSS) base score, which gives a detailed severity rating, is available for each vulnerability from the CVE link(s) in the References section.",
        "title": "Topic"
      },
      {
        "category": "general",
        "text": "This module implements the URI class. Objects of this class represent \"Uniform Resource Identifier references\" as specified in RFC 2396 (and updated by RFC 2732).\n\nSecurity Fix(es):\n\n* URI: URI (for Perl): Security bypass due to incorrect hostname encoding via missing Unicode normalization (CVE-2026-19953)\n\nFor more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.",
        "title": "Details"
      },
      {
        "category": "legal_disclaimer",
        "text": "This content is licensed under the Creative Commons Attribution 4.0 International License (https://creativecommons.org/licenses/by/4.0/). If you distribute this content, or a modified version of it, you must provide attribution to Red Hat Inc. and provide a link to the original.",
        "title": "Terms of Use"
      }
    ],
    "publisher": {
      "category": "vendor",
      "contact_details": "https://access.redhat.com/security/team/contact/",
      "issuing_authority": "Red Hat Product Security is responsible for vulnerability handling across all Red Hat products and services.",
      "name": "Red Hat Product Security",
      "namespace": "https://www.redhat.com"
    },
    "references": [
      {
        "category": "self",
        "summary": "https://access.redhat.com/errata/RHSA-2026:84587",
        "url": "https://access.redhat.com/errata/RHSA-2026:84587"
      },
      {
        "category": "external",
        "summary": "https://access.redhat.com/security/updates/classification/#moderate",
        "url": "https://access.redhat.com/security/updates/classification/#moderate"
      },
      {
        "category": "external",
        "summary": "2526492",
        "url": "https://bugzilla.redhat.com/show_bug.cgi?id=2526492"
      },
      {
        "category": "self",
        "summary": "Canonical URL",
        "url": "https://security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_84587.json"
      }
    ],
    "title": "Red Hat Security Advisory: perl-URI security update",
    "tracking": {
      "current_release_date": "2026-11-02T18:49:11+00:00",
      "generator": {
        "date": "2026-11-02T18:49:11+00:00",
        "engine": {
          "name": "Red Hat SDEngine",
          "version": "5.4.4"
        }
      },
      "id": "RHSA-2026:84587",
      "initial_release_date": "2026-10-19T02:45:24+00:00",
      "revision_history": [
        {
          "date": "2026-10-19T02:45:24+00:00",
          "number": "1",
          "summary": "Initial version"
        },
        {
          "date": "2026-10-19T02:45:24+00:00",
          "number": "2",
          "summary": "Last updated version"
        },
        {
          "date": "2026-11-02T18:49:11+00:00",
          "number": "3",
          "summary": "Last generated version"
        }
      ],
      "status": "final",
      "version": "3"
    }
  },
  "product_tree": {
    "branches": [
      {
        "branches": [
          {
            "branches": [
              {
                "category": "product_name",
                "name": "Red Hat Enterprise Linux AppStream (v. 10)",
                "product": {
                  "name": "Red Hat Enterprise Linux AppStream (v. 10)",
                  "product_id": "AppStream-10.2.Z",
                  "product_identification_helper": {
                    "cpe": "cpe:/o:redhat:enterprise_linux:10.2"
                  }
                }
              }
            ],
            "category": "product_family",
            "name": "Red Hat Enterprise Linux"
          },
          {
            "branches": [
              {
                "category": "product_version",
                "name": "perl-URI-0:5.27-3.el10_2.1.noarch",
                "product": {
                  "name": "perl-URI-0:5.27-3.el10_2.1.noarch",
                  "product_id": "perl-URI-0:5.27-3.el10_2.1.noarch",
                  "product_identification_helper": {
                    "purl": "pkg:rpm/redhat/perl-URI@5.27-3.el10_2.1?arch=noarch"
                  }
                }
              }
            ],
            "category": "architecture",
            "name": "noarch"
          },
          {
            "branches": [
              {
                "category": "product_version",
                "name": "perl-URI-0:5.27-3.el10_2.1.src",
                "product": {
                  "name": "perl-URI-0:5.27-3.el10_2.1.src",
                  "product_id": "perl-URI-0:5.27-3.el10_2.1.src",
                  "product_identification_helper": {
                    "purl": "pkg:rpm/redhat/perl-URI@5.27-3.el10_2.1?arch=src"
                  }
                }
              }
            ],
            "category": "architecture",
            "name": "src"
          }
        ],
        "category": "vendor",
        "name": "Red Hat"
      }
    ],
    "relationships": [
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "perl-URI-0:5.27-3.el10_2.1.noarch as a component of Red Hat Enterprise Linux AppStream (v. 10)",
          "product_id": "AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.noarch"
        },
        "product_reference": "perl-URI-0:5.27-3.el10_2.1.noarch",
        "relates_to_product_reference": "AppStream-10.2.Z"
      },
      {
        "category": "default_component_of",
        "full_product_name": {
          "name": "perl-URI-0:5.27-3.el10_2.1.src as a component of Red Hat Enterprise Linux AppStream (v. 10)",
          "product_id": "AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.src"
        },
        "product_reference": "perl-URI-0:5.27-3.el10_2.1.src",
        "relates_to_product_reference": "AppStream-10.2.Z"
      }
    ]
  },
  "vulnerabilities": [
    {
      "cve": "CVE-2026-19953",
      "cwe": {
        "id": "CWE-838",
        "name": "Inappropriate Encoding for Output Context"
      },
      "discovery_date": "2026-08-31T20:21:16.490285+00:00",
      "ids": [
        {
          "system_name": "Red Hat Bugzilla ID",
          "text": "2526492"
        }
      ],
      "notes": [
        {
          "category": "description",
          "text": "A flaw was found in the URI component for Perl. This vulnerability occurs because the `nameprep` function, responsible for encoding hostnames, does not properly normalize Unicode characters. As a result, a hostname that is not in a standard Unicode form (non-NFC) can be encoded into a non-standard label. This discrepancy can lead to a situation where security checks, such as allow lists or Server-Side Request Forgery (SSRF) filters, may incorrectly process hostnames, potentially allowing an attacker to bypass security restrictions.",
          "title": "Vulnerability description"
        },
        {
          "category": "summary",
          "text": "URI: URI (for Perl): Security bypass due to incorrect hostname encoding via missing Unicode normalization",
          "title": "Vulnerability summary"
        },
        {
          "category": "other",
          "text": "This is a pure logic bypass (CWE-1289), not a memory safety vulnerability. Successful exploitation requires a very specific, multi-condition application pattern: (1) the application accepts a URL from untrusted network input; (2) it parses the URL with `URI-\u003enew()`; (3) it extracts the hostname via `-\u003ehost()` and uses it for a security decision (e.g., SSRF filtering); and (4) it separately fetches the URL with a client that performs correct IDNA normalization. Only when all four conditions are simultaneously true can an attacker bypass the security control.",
          "title": "Statement"
        },
        {
          "category": "general",
          "text": "The CVSS score(s) listed for this vulnerability do not reflect the associated product\u0027s status, and are included for informational purposes to better understand the severity of this vulnerability.",
          "title": "CVSS score applicability"
        }
      ],
      "product_status": {
        "fixed": [
          "AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.noarch",
          "AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.src"
        ]
      },
      "references": [
        {
          "category": "self",
          "summary": "Canonical URL",
          "url": "https://access.redhat.com/security/cve/CVE-2026-19953"
        },
        {
          "category": "external",
          "summary": "RHBZ#2526492",
          "url": "https://bugzilla.redhat.com/show_bug.cgi?id=2526492"
        },
        {
          "category": "external",
          "summary": "https://www.cve.org/CVERecord?id=CVE-2026-19953",
          "url": "https://www.cve.org/CVERecord?id=CVE-2026-19953"
        },
        {
          "category": "external",
          "summary": "https://nvd.nist.gov/vuln/detail/CVE-2026-19953",
          "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-19953"
        },
        {
          "category": "external",
          "summary": "http://www.openwall.com/lists/oss-security/2026/08/31/14",
          "url": "http://www.openwall.com/lists/oss-security/2026/08/31/14"
        },
        {
          "category": "external",
          "summary": "https://github.com/libwww-perl/URI/commit/956619a9e94f86d8d2c529b4e06a3674c54a73e7.patch",
          "url": "https://github.com/libwww-perl/URI/commit/956619a9e94f86d8d2c529b4e06a3674c54a73e7.patch"
        },
        {
          "category": "external",
          "summary": "https://github.com/libwww-perl/URI/pull/191",
          "url": "https://github.com/libwww-perl/URI/pull/191"
        },
        {
          "category": "external",
          "summary": "https://metacpan.org/release/OALDERS/URI-5.36/changes",
          "url": "https://metacpan.org/release/OALDERS/URI-5.36/changes"
        },
        {
          "category": "external",
          "summary": "https://www.rfc-editor.org/rfc/rfc5891#section-5.2",
          "url": "https://www.rfc-editor.org/rfc/rfc5891#section-5.2"
        }
      ],
      "release_date": "2026-08-31T17:29:42.929000+00:00",
      "remediations": [
        {
          "category": "vendor_fix",
          "date": "2026-10-19T02:45:24+00:00",
          "details": "For details on how to apply this update, which includes the changes described in this advisory, refer to:\n\nhttps://access.redhat.com/articles/11258",
          "product_ids": [
            "AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.noarch",
            "AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.src"
          ],
          "restart_required": {
            "category": "none"
          },
          "url": "https://access.redhat.com/errata/RHSA-2026:84587"
        },
        {
          "category": "workaround",
          "details": "Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base, or stability.",
          "product_ids": [
            "AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.noarch",
            "AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.src"
          ]
        }
      ],
      "scores": [
        {
          "cvss_v3": {
            "attackComplexity": "LOW",
            "attackVector": "NETWORK",
            "availabilityImpact": "NONE",
            "baseScore": 7.2,
            "baseSeverity": "HIGH",
            "confidentialityImpact": "LOW",
            "integrityImpact": "LOW",
            "privilegesRequired": "NONE",
            "scope": "CHANGED",
            "userInteraction": "NONE",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N",
            "version": "3.1"
          },
          "products": [
            "AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.noarch",
            "AppStream-10.2.Z:perl-URI-0:5.27-3.el10_2.1.src"
          ]
        }
      ],
      "threats": [
        {
          "category": "impact",
          "details": "Moderate"
        }
      ],
      "title": "URI: URI (for Perl): Security bypass due to incorrect hostname encoding via missing Unicode normalization"
    }
  ]
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Drag nodes to arrange them. Double-click a related vulnerability to open it, or a source to visit its link. The Physics button on the left tunes the layout and the simulation; the legend at the bottom left hides or shows nodes by kind and by sighting type.

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.
Vulnerability timeline

Sightings and recorded dates, grouped by day · UTC

JSON
How durations are calculated

Following the VTEM framework (Black Hat USA 2015), time to patch starts when the vendor or a coordinator was informed, total time to patch at discovery, and disclosure to patch at public disclosure; vendor response time runs from the report to its acknowledgement. Time to exploit and time unpatched start at the earliest discovery or report, falling back to public disclosure. Unpatched time ends at the first recorded patch, or the calculation time when no patch is recorded. Exploitation to patch shows the interval between those two events; a published proof of concept is a public exploit, not exploitation.

Each result shows its source dates. A negative interval means the end event came first; when date-only inputs leave the order open, the result says so. Date-only inputs are approximate. The earliest evidence wins: KEV report dates and sightings are labelled as such. Records describing another vulnerability are listed but never calculated from, and a PoC alone does not establish exploitation. Missing patch evidence does not prove that no patch exists. Filters below change the event list only.

Events included in the timeline

Loading timeline…


    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.