Skip to content
Heist/ feed
Back to feed
Medium

symfony/polyfill-intl-idn accepts xn-- labels whose Punycode payload decodes to ASCII-only: insecure equivalence

Type: advisorySources: OSV

Symfony Polyfill backports PHP features and provides compatibility layers for extensions and functions. From 1.17.1 until 1.38.1, symfony/polyfill-intl-idn accepts xn-- labels whose Punycode payload is empty or decodes to ASCII-only code points because Idn::process() does not enforce the UTS #46 revision 33 requirement that decoded ACE labels contain at least one non-ASCII code point. Originally unequal domain names can be regarded as equal, which can lead to blacklist bypassing, inconsistent URL parsing, and server-side request forgery in applications using the polyfill to canonicalise or compare hostnames. This issue is fixed in version 1.38.1.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-46644
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 03:26 UTC · Revision 1

Source evidence

symfony/polyfill-intl-idn accepts xn-- labels whose Punycode payload decodes to ASCII-only: insecure equivalence

core-osv · Original source

Published 14 Jul 2026, 20:48 UTC

Symfony Polyfill backports PHP features and provides compatibility layers for extensions and functions. From 1.17.1 until 1.38.1, symfony/polyfill-intl-idn accepts xn-- labels whose Punycode payload is empty or decodes to ASCII-only code points because Idn::process() does not enforce the UTS #46 revision 33 requirement that decoded ACE labels contain at least one non-ASCII code point. Originally unequal domain names can be regarded as equal, which can lead to blacklist bypassing, inconsistent URL parsing, and server-side request forgery in applications using the polyfill to canonicalise or compare hostnames. This issue is fixed in version 1.38.1.

osv:CVE-2026-46644
Complete source record
{
  "id": "fed91ad0f7d2909cc2a7a6abed0bee093025dcab30889bc702f564aede543e7a",
  "url": "https://osv.dev/vulnerability/CVE-2026-46644",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "symfony/polyfill-intl-idn accepts xn-- labels whose Punycode payload decodes to ASCII-only: insecure equivalence",
    "summary": "Symfony Polyfill backports PHP features and provides compatibility layers for extensions and functions. From 1.17.1 until 1.38.1, symfony/polyfill-intl-idn accepts xn-- labels whose Punycode payload is empty or decodes to ASCII-only code points because Idn::process() does not enforce the UTS #46 revision 33 requirement that decoded ACE labels contain at least one non-ASCII code point. Originally unequal domain names can be regarded as equal, which can lead to blacklist bypassing, inconsistent URL parsing, and server-side request forgery in applications using the polyfill to canonicalise or compare hostnames. This issue is fixed in version 1.38.1.",
    "evidence": "osv:CVE-2026-46644",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-46644",
      "aliases": [
        "CVE-2026-46644",
        "GHSA-2xf4-cg6j-vhgq"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:L/SI:L/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/symfony/polyfill",
              "type": "GIT",
              "events": [
                {
                  "introduced": "c36c1b42c49a5519b5424733de58412d6f387209"
                },
                {
                  "fixed": "09e53d15109121636a416310ea0d510bd292c463"
                },
                {
                  "fixed": "1be936e2491ccebe152bd736dfc91eb1422c8bec"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "1.17.1"
                      },
                      {
                        "fixed": "1.38.1"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  },
                  {
                    "range": [
                      {
                        "fixed": "1be936e2491ccebe152bd736dfc91eb1422c8bec"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "09e53d15109121636a416310ea0d510bd292c463"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "v1.38.1"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v1.38.0",
            "v1.37.0",
            "v1.36.0",
            "v1.35.0",
            "v1.34.0",
            "v1.33.0",
            "v1.32.0",
            "v1.31.0",
            "v1.30.0",
            "v1.29.0",
            "v1.28.0",
            "v1.27.0",
            "v1.26.0",
            "v1.25.0",
            "v1.24.0",
            "v1.23.1",
            "v1.23.0",
            "v1.22.1",
            "v1.22.0",
            "v1.20.0",
            "v1.19.0",
            "v1.18.1",
            "v1.18.0",
            "v1.17.1"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-46644.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:32.832843667Z",
      "provider": "osv",
      "references": [
        "https://github.com/symfony/polyfill/releases/tag/v1.38.1",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/46xxx/CVE-2026-46644.json",
        "https://github.com/symfony/polyfill/security/advisories/GHSA-2xf4-cg6j-vhgq",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-46644",
        "https://github.com/symfony/polyfill/commit/1be936e2491ccebe152bd736dfc91eb1422c8bec"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-1289"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/46xxx/CVE-2026-46644.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-46644",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 500022,
  "published_at": "2026-07-14T20:48:31.771+00:00"
}