CVE-2025-0716
AngularJS improper sanitization in SVG '<image>' element
Improper sanitization of the value of the 'href' and 'xlink:href' attributes in '<image>' SVG elements in AngularJS allows attackers to bypass common image source restrictions. This can lead to a form of Content Spoofing https://owasp.org/www-community/attacks/Content_Spoofing and also negatively affect the application's performance and behavior by using too large or slow-to-load images.
This issue affects all versions of AngularJS.
Note: The AngularJS project is End-of-Life and will not receive any updates to address this issue. For more information see here https://docs.angularjs.org/misc/version-support-status .
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- Low
- Availability
- Low
Exploit likelihood
What each source reports
CVE List Score used
4.8
AngularJS improper sanitization in SVG '<image>' element
Improper sanitization of the value of the 'href' and 'xlink:href' attributes in '<image>' SVG elements in AngularJS allows attackers to bypass common image source restrictions. This can lead to a form of Content Spoofing https://owasp.org/www-community/attacks/Content_Spoofing and also negatively affect the application's performance and behavior by using too large or slow-to-load images.
This issue affects all versions of AngularJS.
Note: The AngularJS project is End-of-Life and will not receive any updates to address this issue. For more information see here https://docs.angularjs.org/misc/version-support-status .
- Record
CVE-2025-0716- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L - Weakness
- CWE-791
- Updated
- 2026-11-02
EUVDEUVD-2025-12635
4.8
Improper sanitization of the value of the 'href' and 'xlink:href' attributes in '<image>' SVG elements in AngularJS allows attackers to bypass common image source restrictions. This can lead to a form of Content Spoofing https://owasp.org/www-community/attacks/Content_Spoofing and also negatively affect the application's performance and behavior by using too large or slow-to-load images.
This issue affects all versions of AngularJS.
Note: The AngularJS project is End-of-Life and will not receive any updates to address this issue. For more information see here https://docs.angularjs.org/misc/version-support-status .
- Record
EUVD-2025-12635- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-5cp4-xmrw-59wf
5.0
XSS via JQLite DOM manipulation functions in AngularJS
Summary
XSS may be triggered in AngularJS applications that sanitize user-controlled HTML snippets before passing them to JQLite methods like JQLite.prepend, JQLite.after, JQLite.append, JQLite.replaceWith, JQLite.append, new JQLite and angular.element.
Description
JQLite (DOM manipulation library that's part of AngularJS) manipulates input HTML before inserting it to the DOM in jqLiteBuildFragment.
One of the modifications performed expands an XHTML self-closing tag.
If jqLiteBuildFragment is called (e.g. via new JQLite(aString)) with user-controlled HTML string that was sanitized (e.g. with DOMPurify), the transformation done by JQLite may modify some forms of an inert, sanitized payload into a payload containing JavaScript - and trigger an XSS when the payload is inserted into DOM.
This is similar to a bug in jQuery htmlPrefilter function that was fixed in 3.5.0.
Proof of concept
const inertPayload = `<div><style><style/><img src=x onerror="alert(1337)"/>`
Note that the style element is not closed and <img would be a text node inside the style if inserted into the DOM as-is.
As such, some HTML sanitizers would leave the <img as is without processing it and stripping the onerror attribute.
angular.element(document).append(inertPayload);
This will alert, as <style/> will be replaced with <style></style> before adding it to the DOM, closing the style element early and reactivating img.
Patches
The issue is patched in JQLite bundled with angular 1.8.0. AngularJS users using JQuery should upgrade JQuery to 3.5.0, as a similar vulnerability affects jQuery <3.5.0.
Workarounds
Changing sanitizer configuration not to allow certain tag grouping (e.g. <option><style></option>) or inline style elements may stop certain exploitation vectors, but it's uncertain if all possible exploitation vectors would be covered. Upgrade of AngularJS to 1.8.0 is recommended.
References
https://github.com/advisories/GHSA-mhp6-pxh8-r675 https://github.com/jquery/jquery/security/advisories/GHSA-gxr4-xjj5-5px2 https://github.com/jquery/jquery/security/advisories/GHSA-jpcq-cgw6-v4j6 https://blog.jquery.com/2020/04/10/jquery-3-5-0-released/ https://snyk.io/vuln/SNYK-JS-ANGULAR-570058
- Record
GHSA-5cp4-xmrw-59wf- CVSS 3.1
- 5.0 Medium
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-79
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-j58c-ww9w-pwp5
2.9
AngularJS improperly sanitizes SVG elements
Improper sanitization of the value of the 'href' and 'xlink:href' attributes in '<image>' SVG elements in AngularJS allows attackers to bypass common image source restrictions. This can lead to a form of Content Spoofing https://owasp.org/www-community/attacks/Content_Spoofing and also negatively affect the application's performance and behavior by using too large or slow-to-load images.
This issue affects all versions of AngularJS.
Note: The AngularJS project is End-of-Life and will not receive any updates to address this issue. For more information see here https://docs.angularjs.org/misc/version-support-status .
- Record
GHSA-j58c-ww9w-pwp5- CVSS 4.0
- 2.9 Low
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N/E:P - CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L - Weakness
- CWE-791
- Updated
- 2026-11-02
GitHub AdvisoriesGHSA-28hp-fgcr-2r4h No score
Cross-Site Scripting via JSONP
JSONP allows untrusted resource URLs, which provides a vector for attack by malicious actors.
- Record
GHSA-28hp-fgcr-2r4h- Weakness
- CWE-79
- Updated
- 2026-11-02
NVD
4.8
Improper sanitization of the value of the 'href' and 'xlink:href' attributes in '<image>' SVG elements in AngularJS allows attackers to bypass common image source restrictions. This can lead to a form of Content Spoofing https://owasp.org/www-community/attacks/Content_Spoofing and also negatively affect the application's performance and behavior by using too large or slow-to-load images.
This issue affects all versions of AngularJS.
Note: The AngularJS project is End-of-Life and will not receive any updates to address this issue. For more information see here https://docs.angularjs.org/misc/version-support-status .
- Record
CVE-2025-0716- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L - Weakness
- CWE-791
- Updated
- 2026-11-02
Show 19 moreShow less
OSVDEBIAN-CVE-2025-0716
4.8
Improper sanitization of the value of the 'href' and 'xlink:href' attributes in '<image>' SVG elements in AngularJS allows attackers to bypass common image source restrictions. This can lead to a form of Content Spoofing https://owasp.org/www-community/attacks/Content_Spoofing and also negatively affect the application's performance and behavior by using too large or slow-to-load images. This issue affects all versions of AngularJS. Note: The AngularJS project is End-of-Life and will not receive any updates to address this issue. For more information see here https://docs.angularjs.org/misc/version-support-status .
- Record
DEBIAN-CVE-2025-0716- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L - Updated
- 2026-11-02
OSVGHSA-5cp4-xmrw-59wf
5.0
XSS via JQLite DOM manipulation functions in AngularJS
Summary
XSS may be triggered in AngularJS applications that sanitize user-controlled HTML snippets before passing them to JQLite methods like JQLite.prepend, JQLite.after, JQLite.append, JQLite.replaceWith, JQLite.append, new JQLite and angular.element.
Description
JQLite (DOM manipulation library that's part of AngularJS) manipulates input HTML before inserting it to the DOM in jqLiteBuildFragment.
One of the modifications performed expands an XHTML self-closing tag.
If jqLiteBuildFragment is called (e.g. via new JQLite(aString)) with user-controlled HTML string that was sanitized (e.g. with DOMPurify), the transformation done by JQLite may modify some forms of an inert, sanitized payload into a payload containing JavaScript - and trigger an XSS when the payload is inserted into DOM.
This is similar to a bug in jQuery htmlPrefilter function that was fixed in 3.5.0.
Proof of concept
const inertPayload = `<div><style><style/><img src=x onerror="alert(1337)"/>`
Note that the style element is not closed and <img would be a text node inside the style if inserted into the DOM as-is.
As such, some HTML sanitizers would leave the <img as is without processing it and stripping the onerror attribute.
angular.element(document).append(inertPayload);
This will alert, as <style/> will be replaced with <style></style> before adding it to the DOM, closing the style element early and reactivating img.
Patches
The issue is patched in JQLite bundled with angular 1.8.0. AngularJS users using JQuery should upgrade JQuery to 3.5.0, as a similar vulnerability affects jQuery <3.5.0.
Workarounds
Changing sanitizer configuration not to allow certain tag grouping (e.g. <option><style></option>) or inline style elements may stop certain exploitation vectors, but it's uncertain if all possible exploitation vectors would be covered. Upgrade of AngularJS to 1.8.0 is recommended.
References
https://github.com/advisories/GHSA-mhp6-pxh8-r675 https://github.com/jquery/jquery/security/advisories/GHSA-gxr4-xjj5-5px2 https://github.com/jquery/jquery/security/advisories/GHSA-jpcq-cgw6-v4j6 https://blog.jquery.com/2020/04/10/jquery-3-5-0-released/ https://snyk.io/vuln/SNYK-JS-ANGULAR-570058
- Record
GHSA-5cp4-xmrw-59wf- CVSS 3.1
- 5.0 Medium
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L - Weakness
- CWE-79
- Updated
- 2026-11-02
OSVGHSA-j58c-ww9w-pwp5
2.9
AngularJS improperly sanitizes SVG elements
Improper sanitization of the value of the 'href' and 'xlink:href' attributes in '<image>' SVG elements in AngularJS allows attackers to bypass common image source restrictions. This can lead to a form of Content Spoofing https://owasp.org/www-community/attacks/Content_Spoofing and also negatively affect the application's performance and behavior by using too large or slow-to-load images.
This issue affects all versions of AngularJS.
Note: The AngularJS project is End-of-Life and will not receive any updates to address this issue. For more information see here https://docs.angularjs.org/misc/version-support-status .
- Record
GHSA-j58c-ww9w-pwp5- CVSS 4.0
- 2.9 Low
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:L/SC:N/SI:N/SA:N/E:P - CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L - Weakness
- CWE-791
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2025-0716
4.8
Improper sanitization of the value of the 'href' and 'xlink:href' attributes in '<image>' SVG elements in AngularJS allows attackers to bypass common image source restrictions. This can lead to a form of Content Spoofing https://owasp.org/www-community/attacks/Content_Spoofing and also negatively affect the application's performance and behavior by using too large or slow-to-load images. This issue affects all versions of AngularJS. Note: The AngularJS project is End-of-Life and will not receive any updates to address this issue. For more information see here https://docs.angularjs.org/misc/version-support-status .
- Record
UBUNTU-CVE-2025-0716- CVSS 3.1
- 4.8 Medium
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L - Updated
- 2026-11-02
OSVCLSA-2026-1773706637 No score
TuxCare security update for angular (11 CVEs)
TuxCare rebuilt angular to address 11 CVEs. Fixed in 1.8.2-tuxcare.1.
- Record
CLSA-2026-1773706637- Updated
- 2026-11-02
OSVCLSA-2026-1773879502 No score
TuxCare security update for angular (13 CVEs)
TuxCare rebuilt angular to address 13 CVEs. Fixed in 1.4.4-tuxcare.1.
- Record
CLSA-2026-1773879502- Updated
- 2026-11-02
OSVCLSA-2026-1773965928 No score
TuxCare security update for angular (3 CVEs)
TuxCare rebuilt angular to address 3 CVEs. Fixed in 1.8.3-tuxcare.2.
- Record
CLSA-2026-1773965928- Updated
- 2026-11-02
OSVCLSA-2026-1774052344 No score
TuxCare security update for angular (3 CVEs)
TuxCare rebuilt angular to address 3 CVEs. Fixed in 1.7.9-tuxcare.2.
- Record
CLSA-2026-1774052344- Updated
- 2026-11-02
OSVCLSA-2026-1774052347 No score
TuxCare security update for angular (3 CVEs)
TuxCare rebuilt angular to address 3 CVEs. Fixed in 1.6.10-tuxcare.2.
- Record
CLSA-2026-1774052347- Updated
- 2026-11-02
OSVCLSA-2026-1774052358 No score
TuxCare security update for angular (3 CVEs)
TuxCare rebuilt angular to address 3 CVEs. Fixed in 1.5.11-tuxcare.2.
- Record
CLSA-2026-1774052358- Updated
- 2026-11-02
OSVCLSA-2026-1781657707 No score
TuxCare security update for angular (1 CVE)
TuxCare rebuilt angular to address 1 CVE. Fixed in 1.7.9-tuxcare.8.
- Record
CLSA-2026-1781657707- Updated
- 2026-11-02
OSVCLSA-2026-1781657708 No score
TuxCare security update for angular (1 CVE)
TuxCare rebuilt angular to address 1 CVE. Fixed in 1.6.10-tuxcare.8.
- Record
CLSA-2026-1781657708- Updated
- 2026-11-02
OSVCLSA-2026-1781657709 No score
TuxCare security update for angular (2 CVEs)
TuxCare rebuilt angular to address 2 CVEs. Fixed in 1.5.11-tuxcare.8.
- Record
CLSA-2026-1781657709- Updated
- 2026-11-02
OSVCLSA-2026-1787822123 No score
TuxCare security update for angular (14 CVEs)
TuxCare rebuilt angular to address 14 CVEs. Fixed in 1.4.7-tuxcare.1.
- Record
CLSA-2026-1787822123- Updated
- 2026-11-02
OSV No score
Improper sanitization of the value of the 'href' and 'xlink:href' attributes in '<image>' SVG elements in AngularJS allows attackers to bypass common image source restrictions. This can lead to a form of Content Spoofing https://owasp.org/www-community/attacks/Content_Spoofing and also negatively affect the application's performance and behavior by using too large or slow-to-load images.
This issue affects all versions of AngularJS.
Note: The AngularJS project is End-of-Life and will not receive any updates to address this issue. For more information see here https://docs.angularjs.org/misc/version-support-status .
- Record
CVE-2025-0716- Updated
- 2026-11-02
OSVGHSA-28hp-fgcr-2r4h No score
Cross-Site Scripting via JSONP
JSONP allows untrusted resource URLs, which provides a vector for attack by malicious actors.
- Record
GHSA-28hp-fgcr-2r4h- Weakness
- CWE-79
- Updated
- 2026-11-02
OSVROOT-APP-NPM-CVE-2025-0716 No score
CVE-2025-0716 in angular - Patched by Root
Root has patched CVE-2025-0716 in the angular package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-CVE-2025-0716- Updated
- 2026-11-02
OSVROOT-APP-NPM-GHSA-28hp-fgcr-2r4h No score
GHSA-28hp-fgcr-2r4h in angular - Patched by Root
Root has patched GHSA-28hp-fgcr-2r4h in the angular package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-GHSA-28hp-fgcr-2r4h- Updated
- 2026-11-02
OSVROOT-APP-NPM-GHSA-5cp4-xmrw-59wf No score
GHSA-5cp4-xmrw-59wf in angular - Patched by Root
Root has patched GHSA-5cp4-xmrw-59wf in the angular package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-GHSA-5cp4-xmrw-59wf- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
angularnpm |
before 1.6.0 | 1.6.0 |
angularnpm |
before 1.8.0 | 1.8.0 |
angularnpm |
through 1.8.3 | None known |
angularTuxCare:npm From an advisory covering 11 CVEs |
1.8.2-tuxcare.0 up to 1.8.2-tuxcare.1, plus listed versions 1.8.2 |
1.8.2-tuxcare.1 |
angularTuxCare:npm From an advisory covering 11 CVEs |
1.4.4-tuxcare.0 up to 1.4.4-tuxcare.1, plus listed versions 1.4.4 |
1.4.4-tuxcare.1 |
angularTuxCare:npm From an advisory covering 3 CVEs |
1.8.3-tuxcare.0 up to 1.8.3-tuxcare.2, plus listed versions 1.8.31.8.3-tuxcare.1 |
1.8.3-tuxcare.2 |
angularTuxCare:npm From an advisory covering 3 CVEs |
1.7.9-tuxcare.0 up to 1.7.9-tuxcare.2, plus listed versions 1.7.91.7.9-tuxcare.1 |
1.7.9-tuxcare.2 |
angularTuxCare:npm From an advisory covering 3 CVEs |
1.6.10-tuxcare.0 up to 1.6.10-tuxcare.2, plus listed versions 1.6.101.6.10-tuxcare.1 |
1.6.10-tuxcare.2 |
angularTuxCare:npm From an advisory covering 3 CVEs |
1.5.11-tuxcare.0 up to 1.5.11-tuxcare.2, plus listed versions 1.5.111.5.11-tuxcare.1 |
1.5.11-tuxcare.2 |
angularTuxCare:npm |
1.7.9-tuxcare.0 up to 1.7.9-tuxcare.8, plus listed versions 1.7.91.7.9-tuxcare.11.7.9-tuxcare.21.7.9-tuxcare.31.7.9-tuxcare.41.7.9-tuxcare.51.7.9-tuxcare.61.7.9-tuxcare.7 |
1.7.9-tuxcare.8 |
Show 15 moreShow less
| Package | Affected | Fixed |
|---|---|---|
angularTuxCare:npm |
1.6.10-tuxcare.0 up to 1.6.10-tuxcare.8, plus listed versions 1.6.101.6.10-tuxcare.11.6.10-tuxcare.21.6.10-tuxcare.31.6.10-tuxcare.41.6.10-tuxcare.51.6.10-tuxcare.61.6.10-tuxcare.7 |
1.6.10-tuxcare.8 |
angularTuxCare:npm |
1.5.11-tuxcare.0 up to 1.5.11-tuxcare.8, plus listed versions 1.5.111.5.11-tuxcare.11.5.11-tuxcare.21.5.11-tuxcare.31.5.11-tuxcare.41.5.11-tuxcare.51.5.11-tuxcare.61.5.11-tuxcare.7 |
1.5.11-tuxcare.8 |
angularTuxCare:npm From an advisory covering 12 CVEs |
1.4.7-tuxcare.0 up to 1.4.7-tuxcare.1, plus listed versions 1.4.7 |
1.4.7-tuxcare.1 |
angular.jsDebian:12 |
before 1.8.3-1+deb12u1, plus listed versions 1.8.3-11.8.3-1+deb12u1~deb11u1 |
1.8.3-1+deb12u1 |
angular.jsDebian:13 |
before 1.8.3-2 | 1.8.3-2 |
angular.jsDebian:11 From an advisory covering 9 CVEs |
before 1.8.3-1+deb12u1~deb11u1, plus listed versions 1.8.2-21.8.3-1 |
1.8.3-1+deb12u1~deb11u1 |
angularRoot:npm |
before 1.8.3-aikido.3 | 1.8.3-aikido.31.4.14-aikido.21.8.3-aikido.41.8.3-aikido.51.4.14-aikido.3 |
@rootio/angularRoot:npm |
before 1.8.3-root.io.3 | 1.8.3-root.io.31.4.14-root.io.21.8.3-root.io.41.8.3-root.io.51.4.14-root.io.3 |
angularRoot:npm |
before 1.4.14-aikido.2 | 1.4.14-aikido.21.3.0-aikido.21.3.0-aikido.31.4.14-aikido.3 |
@rootio/angularRoot:npm |
before 1.4.14-root.io.2 | 1.4.14-root.io.21.3.0-root.io.21.3.0-root.io.31.4.14-root.io.3 |
angular.jsUbuntu:Pro:16.04:LTS |
before 1.2.28-1ubuntu2+esm1, plus listed versions 1.2.28-1ubuntu2 |
1.2.28-1ubuntu2+esm1 |
angular.jsUbuntu:Pro:18.04:LTS |
before 1.5.10-1ubuntu0.1~esm1, plus listed versions 1.5.10-1 |
1.5.10-1ubuntu0.1~esm1 |
angular.jsUbuntu:Pro:20.04:LTS |
before 1.7.9-1ubuntu0.1~esm1, plus listed versions 1.5.10-11.7.9-1 |
1.7.9-1ubuntu0.1~esm1 |
angular.jsUbuntu:22.04:LTS |
before 1.8.2-2ubuntu0.1, plus listed versions 1.8.2-2 |
1.8.2-2ubuntu0.1 |
angular.jsUbuntu:24.04:LTS |
before 1.8.3-1ubuntu0.24.04.1, plus listed versions 1.8.3-1 |
1.8.3-1ubuntu0.24.04.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2025-0716 is a medium vulnerability (CVSS 4.8) in Google Angularjs, published June 27, 2019. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.41%, the 35th percentile. Fixed in angular 1.6.0.
References
herodevs.com/vulnerability-directory/cve-2025-0716
codepen.io/herodevs/pen/qEWQmpd/a86a0d29310e12c7a3756768e6c7b915
lists.debian.org/debian-lts-announce/2025/07/msg00005.html
github.com/angular/angular.js/commit/6476af83cd0418c84e034a955b12a842794385c4
npmjs.com/advisories/1630
github.com/advisories/GHSA-28hp-fgcr-2r4h
Show 14 moreShow less
github.com/google/security-research/security/advisories/GHSA-5cp4-xmrw-59wf
github.com/jquery/jquery/security/advisories/GHSA-gxr4-xjj5-5px2
github.com/jquery/jquery/security/advisories/GHSA-jpcq-cgw6-v4j6
blog.jquery.com/2020/04/10/jquery-3-5-0-released
github.com/advisories/GHSA-mhp6-pxh8-r675
snyk.io/vuln/SNYK-JS-ANGULAR-570058
github.com/advisories/GHSA-5cp4-xmrw-59wf
nvd.nist.gov/vuln/detail/CVE-2025-0716
github.com/advisories/GHSA-j58c-ww9w-pwp5
security-tracker.debian.org/tracker/CVE-2025-0716
github.com/angular/angular.js
ubuntu.com/security/CVE-2025-0716
cve.org/CVERecord?id=CVE-2025-0716
ubuntu.com/security/notices/USN-7958-1