CVE-2026-114127: CSS injection in Astro View Transitions

astro Updated 22 Oct 2026

Summary

22/10/2026
Yes i
Low
2.3

CVE-2026-114127: Attacker-controlled animation values can inject CSS into a rendered page, allowing UI content to be restyled, concealed, or misrepresented. Affects astro versions >= 7.1.0, < 7.3.3. Fixed in 7.3.3. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored MarkAI Find prospects already talking about the problem you solve AI watches the communities your customers use to find qualified prospects, then alerts you when a conversation is worth joining. See MarkAI

Background

Astro is a JavaScript web framework in the npm ecosystem. It provides tools for building websites and supports View Transitions, including server-rendered pages. Astro’s server-side View Transition CSS generator serializes animation properties into stylesheets. Applications can supply animation values when configuring transitions, including values derived from request data.

Vulnerability Detail

This CSS injection vulnerability can let an attacker alter the appearance of an affected application’s rendered page. Astro’s server-side View Transition CSS generator serialized string animation properties without encoding CSS declaration delimiters. When an application passes attacker-controlled data into properties such as duration, the value can escape its intended declaration and add CSS rules. The injected content remains inside the generated style element; the issue does not enable HTML or JavaScript injection. Exploitation requires untrusted data to reach a transition animation value.

How To Fix

Latest published version: 7.4.2 as of 23 Oct 2026

npm install astro@7.4.2

Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.

If you need the minimum change

7.3.3

This is the first release that contains the fix.

npm install astro@7.3.3

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

Documented workaround: Astro applications should avoid passing untrusted or request-derived values into View Transition animation properties. Validate dynamic values against the expected CSS grammar; for duration and delay, use finite numbers or strictly validated CSS time values.

Documented mitigation:

ts
out +=

Conclusion

Bottom line: upgrade Astro to the minimum fixed version, 7.3.3. Applications that cannot upgrade should keep untrusted and request-derived data out of View Transition animation properties and validate any dynamic values against the expected CSS grammar. Vulert monitors the dependencies in package-lock.json and alerts when a new vulnerability affects them; check an application at https://vulert.com/scanner.

See every vulnerability recorded for astro →

Share this vulnerability

FAQ

Astro versions 7.1.0 through 7.3.2 are affected by CVE-2026-114127.

CVE-2026-114127 lets attackers inject CSS into Astro-rendered pages when untrusted data reaches a transition animation value, potentially misrepresenting the UI.

Upgrade Astro to the minimum fixed version, 7.3.3, to address CVE-2026-114127.

Avoid passing untrusted or request-derived values into Astro View Transition animation properties; validate dynamic values against the expected CSS grammar.

Check package-lock.json for Astro and compare its installed version with the affected range. Vulert can scan a manifest or SBOM and monitor the dependency at Vulert Scanner.

Related vulnerabilities

Recent vulnerabilities recorded for astro.

How To Fix

Latest published version: 7.4.2 as of 23 Oct 2026

npm install astro@7.4.2

Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.

If you need the minimum change

7.3.3

This is the first release that contains the fix.

npm install astro@7.3.3

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback