p PatchFirst

CVE-2026-101895

CVE-2026-101895 · Angular SSR: Denial of Service (DoS) via Infinite Loop on Malformed DOCTYPE

This page contains facts from public vulnerability sources. Check the original advisory before updating.

Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Prior to 20.3.31, 21.2.23, and 22.1.6, the @angular/platform-server DOM emulation parser can enter an infinite synchronous loop when Angular server-side rendering processes attacker-controlled HTML containing an incomplete DOCTYPE that ends with whitespace at end of input. In Domino lib/HTMLParser.js, after_doctype_name_state emits doctype and EOF tokens without advancing nextchar or leaving the fixed-lookahead state, so the scanner repeatedly handles the same EOF marker. A remote unauthenticated attacker can use this condition through server-side HTML parsing paths such as innerHTML binding to consume a Node.js SSR worker at full CPU, starve the event loop, and stop concurrent and subsequent requests. This issue is fixed in versions 20.3.31, 21.2.23, and 22.1.6.

CVSS 8.7 · High · EPSS 0.7% · Fix available

Published
Updated

Stack: system · node

Affected products and versions

  • angular

    Versions
    • <= 19.2.25: Affected
    • >= 20.0.0, < 20.3.31: Affected
    • >= 21.0.0, < 21.2.23: Affected
    • >= 22.0.0, < 22.1.6: Affected

    No fix published

  • platform-server

    Versions
    • <= 19.2.25: Affected
    • >= 20.0.0, < 20.3.31: Affected
    • >= 21.0.0, < 21.2.23: Affected
    • >= 22.0.0, < 22.1.6: Affected

    No fix published

  • angular.js Debian:12

    Versions
    • 1.8.3-1
    • 1.8.3-1+deb12u1
    • 1.8.3-1+deb12u1~deb11u1
    • 1.8.3-2
    • 1.8.3-3
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • angular.js Debian:13

    Versions
    • 1.8.3-3
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • @angular/platform-server npm

    Affected ranges
    • SEMVER: ≥ 22.0.0, < 22.1.6

    Update to 22.1.6

  • @angular/platform-server npm

    Affected ranges
    • SEMVER: ≥ 21.0.0, < 21.2.23

    Update to 21.2.23

  • @angular/platform-server npm

    Affected ranges
    • SEMVER: ≥ 20.0.0, < 20.3.31

    Update to 20.3.31

  • @angular/platform-server npm

    Affected ranges
    • SEMVER: ≤ 19.2.25

    No fix published

Original sources

Check your server →