Skip to content
Heist/ feed
Back to feed
High

node-ajv — security advisory

Type: advisorySources: OSVAdvisory ID: UBUNTU-CVE-2026-13676

fast-uri versions 2.3.1 through 3.1.2 and 4.0.0 fail to canonicalize Unicode (IDN) hostnames for HTTP-family URLs. The IDN conversion path calls a helper that does not exist on the global URL constructor, silently leaving the host in its original Unicode form while normalize() and equal() still return values that differ from a WHATWG-compatible URL parser. Applications that use fast-uri to enforce host-based policy (denylists, loopback filtering, redirect validation, outbound proxy routing) before passing the same URL to Node's URL or fetch can be bypassed when the two implementations resolve the same input to different hosts. Patches: upgrade to fast-uri 3.1.3 for the 3.x line or 4.0.1 for the 4.x line. Workarounds: enforce host policy using the same URL parser used for the actual request, or reject non-ASCII hosts before policy checks.

Products
node-ajv
Affected versions
5.0.0-1, 6.10.2-1, 6.12.6-2, 6.12.6-3, 8.12.0~ds+~2.1.1-4, 8.12.0~ds+~2.1.1-5, 8.17.1~ds+~3.0.1+~3.1.0-2, 8.17.1~ds+~3.0.1+~3.1.0-4build1, 8.20.0~ds+~cs6.1.3-1, 8.20.0~ds+~cs7.1.2-1, 8.20.0~ds+~cs7.1.3-1, 8.20.0~ds+~cs7.1.3-3
Fixed versions
Not specified
CVEs
CVE-2026-13676
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 02:40 UTC · Revision 1

Source evidence

UBUNTU-CVE-2026-13676

core-osv · Original source

Published 29 Jun 2026, 14:16 UTC

fast-uri versions 2.3.1 through 3.1.2 and 4.0.0 fail to canonicalize Unicode (IDN) hostnames for HTTP-family URLs. The IDN conversion path calls a helper that does not exist on the global URL constructor, silently leaving the host in its original Unicode form while normalize() and equal() still return values that differ from a WHATWG-compatible URL parser. Applications that use fast-uri to enforce host-based policy (denylists, loopback filtering, redirect validation, outbound proxy routing) before passing the same URL to Node's URL or fetch can be bypassed when the two implementations resolve the same input to different hosts. Patches: upgrade to fast-uri 3.1.3 for the 3.x line or 4.0.1 for the 4.x line. Workarounds: enforce host policy using the same URL parser used for the actual request, or reject non-ASCII hosts before policy checks.

osv:UBUNTU-CVE-2026-13676

node-ajv

Fixed versions: Not specified

node-ajv

Fixed versions: Not specified

node-ajv

Fixed versions: Not specified

node-ajv

Fixed versions: Not specified

node-ajv

Fixed versions: Not specified

node-ajv

Fixed versions: Not specified

node-ajv

Fixed versions: Not specified

Complete source record
{
  "id": "734a6828e7cea1a54839362d4262e752af301da828f6d181ace7775bda1c8b5e",
  "url": "https://osv.dev/vulnerability/UBUNTU-CVE-2026-13676",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "UBUNTU-CVE-2026-13676",
    "summary": "fast-uri versions 2.3.1 through 3.1.2 and 4.0.0 fail to canonicalize Unicode (IDN) hostnames for HTTP-family URLs. The IDN conversion path calls a helper that does not exist on the global URL constructor, silently leaving the host in its original Unicode form while normalize() and equal() still return values that differ from a WHATWG-compatible URL parser. Applications that use fast-uri to enforce host-based policy (denylists, loopback filtering, redirect validation, outbound proxy routing) before passing the same URL to Node's URL or fetch can be bypassed when the two implementations resolve the same input to different hosts. Patches: upgrade to fast-uri 3.1.3 for the 3.x line or 4.0.1 for the 4.x line. Workarounds: enforce host policy using the same URL parser used for the actual request, or reject non-ASCII hosts before policy checks.",
    "evidence": "osv:UBUNTU-CVE-2026-13676",
    "products": [
      {
        "name": {
          "value": "node-ajv",
          "evidence": "/affected/0/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "5.0.0-1",
            "evidence": "/affected/0/versions"
          }
        ]
      },
      {
        "name": {
          "value": "node-ajv",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "6.10.2-1",
            "evidence": "/affected/1/versions"
          }
        ]
      },
      {
        "name": {
          "value": "node-ajv",
          "evidence": "/affected/2/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "6.12.6-2",
            "evidence": "/affected/2/versions"
          },
          {
            "value": "6.12.6-3",
            "evidence": "/affected/2/versions"
          }
        ]
      },
      {
        "name": {
          "value": "node-ajv",
          "evidence": "/affected/3/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "6.12.6-3",
            "evidence": "/affected/3/versions"
          },
          {
            "value": "8.12.0~ds+~2.1.1-4",
            "evidence": "/affected/3/versions"
          }
        ]
      },
      {
        "name": {
          "value": "node-ajv",
          "evidence": "/affected/4/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "8.12.0~ds+~2.1.1-5",
            "evidence": "/affected/4/versions"
          }
        ]
      },
      {
        "name": {
          "value": "node-ajv",
          "evidence": "/affected/5/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "8.17.1~ds+~3.0.1+~3.1.0-4build1",
            "evidence": "/affected/5/versions"
          },
          {
            "value": "8.20.0~ds+~cs6.1.3-1",
            "evidence": "/affected/5/versions"
          },
          {
            "value": "8.20.0~ds+~cs7.1.2-1",
            "evidence": "/affected/5/versions"
          },
          {
            "value": "8.20.0~ds+~cs7.1.3-1",
            "evidence": "/affected/5/versions"
          },
          {
            "value": "8.20.0~ds+~cs7.1.3-3",
            "evidence": "/affected/5/versions"
          }
        ]
      },
      {
        "name": {
          "value": "node-ajv",
          "evidence": "/affected/6/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "8.12.0~ds+~2.1.1-5",
            "evidence": "/affected/6/versions"
          },
          {
            "value": "8.17.1~ds+~3.0.1+~3.1.0-2",
            "evidence": "/affected/6/versions"
          },
          {
            "value": "8.17.1~ds+~3.0.1+~3.1.0-4build1",
            "evidence": "/affected/6/versions"
          }
        ]
      }
    ],
    "severity": "high",
    "structured": {
      "id": "UBUNTU-CVE-2026-13676",
      "aliases": [
        "UBUNTU-CVE-2026-13676"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
        },
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
        },
        {
          "type": "Ubuntu",
          "score": "medium"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "node-ajv",
            "purl": "pkg:deb/ubuntu/node-ajv?arch=source&distro=bionic",
            "ecosystem": "Ubuntu:18.04:LTS"
          },
          "versions": [
            "5.0.0-1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-13676.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "node-ajv",
                "binary_version": "5.0.0-1"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "node-ajv",
            "purl": "pkg:deb/ubuntu/node-ajv?arch=source&distro=focal",
            "ecosystem": "Ubuntu:20.04:LTS"
          },
          "versions": [
            "6.10.2-1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-13676.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "node-ajv",
                "binary_version": "6.10.2-1"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "node-ajv",
            "purl": "pkg:deb/ubuntu/node-ajv?arch=source&distro=jammy",
            "ecosystem": "Ubuntu:22.04:LTS"
          },
          "versions": [
            "6.12.6-2",
            "6.12.6-3"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-13676.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "node-ajv",
                "binary_version": "6.12.6-3"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "node-ajv",
            "purl": "pkg:deb/ubuntu/node-ajv?arch=source&distro=noble",
            "ecosystem": "Ubuntu:24.04:LTS"
          },
          "versions": [
            "6.12.6-3",
            "8.12.0~ds+~2.1.1-4"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-13676.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "node-ajv",
                "binary_version": "8.12.0~ds+~2.1.1-4"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "node-ajv",
            "purl": "pkg:deb/ubuntu/node-ajv?arch=source&distro=questing",
            "ecosystem": "Ubuntu:25.10"
          },
          "versions": [
            "8.12.0~ds+~2.1.1-5"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-13676.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "node-ajv",
                "binary_version": "8.12.0~ds+~2.1.1-5"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "node-ajv",
            "purl": "pkg:deb/ubuntu/node-ajv?arch=source&distro=stonking",
            "ecosystem": "Ubuntu:26.10"
          },
          "versions": [
            "8.17.1~ds+~3.0.1+~3.1.0-4build1",
            "8.20.0~ds+~cs6.1.3-1",
            "8.20.0~ds+~cs7.1.2-1",
            "8.20.0~ds+~cs7.1.3-1",
            "8.20.0~ds+~cs7.1.3-3"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-13676.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "node-ajv",
                "binary_version": "8.20.0~ds+~cs7.1.3-3"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "node-ajv",
            "purl": "pkg:deb/ubuntu/node-ajv?arch=source&distro=resolute",
            "ecosystem": "Ubuntu:26.04:LTS"
          },
          "versions": [
            "8.12.0~ds+~2.1.1-5",
            "8.17.1~ds+~3.0.1+~3.1.0-2",
            "8.17.1~ds+~3.0.1+~3.1.0-4build1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-13676.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "node-ajv",
                "binary_version": "8.17.1~ds+~3.0.1+~3.1.0-4build1"
              }
            ]
          }
        }
      ],
      "modified": "2026-10-17T12:58:45.033223494Z",
      "provider": "osv",
      "upstream": [
        "CVE-2026-13676"
      ],
      "references": [
        "https://ubuntu.com/security/CVE-2026-13676",
        "https://www.cve.org/CVERecord?id=CVE-2026-13676",
        "https://github.com/fastify/fast-uri/security/advisories/GHSA-4c8g-83qw-93j6",
        "https://cna.openjsf.org/security-advisories.html",
        "https://access.redhat.com/security/cve/CVE-2026-13676",
        "https://bugzilla.redhat.com/show_bug.cgi?id=2494197",
        "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-13676.json"
      ]
    },
    "related_cves": [
      {
        "value": "CVE-2026-13676",
        "evidence": "/upstream"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 359004,
  "published_at": "2026-06-29T14:16:00+00:00"
}