CVE-2026-61847
Received Received - Intake

Crass CSS Parser Stack Overflow via Comment Parsing

Vulnerability report for CVE-2026-61847, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-10-30

Last updated on: 2026-10-30

Assigner: GitHub, Inc.

Description

Crass is a Ruby CSS parser that's fully compliant with the CSS Syntax Level 3 specification. Prior to 1.0.7, when the `:preserve_comments` option is not enabled, which is the default, Crass discards CSS comments by recursively consuming the next token. An attacker-provided stylesheet containing a very large number of adjacent comments can cause excessive recursion and trigger a `SystemStackError`, denying service to the parsing application. Preserving comments avoids this recursive path. This issue is fixed in version 1.0.7.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-10-30
Last Modified
2026-10-30
Generated
2026-10-30
AI Q&A
2026-10-30
EPSS Evaluated
N/A
NVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
rgrove crass < 1.0.7

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-674 The product does not properly control the amount of recursion that takes place, consuming excessive resources, such as allocated memory or the program stack.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

Crass is a Ruby CSS parser that follows CSS Syntax Level 3. Before version 1.0.7, when the default setting to discard CSS comments is active, the parser could be overwhelmed by a stylesheet with many adjacent comments. This causes excessive recursion, leading to a SystemStackError and crashing the application.

Detection Guidance

Detecting this vulnerability requires checking the version of the Crass Ruby CSS parser in use. If you are using a Ruby application that depends on Crass, verify the installed version with the command 'gem list crass'. If the version is below 1.0.7, the system is vulnerable.

Impact Analysis

An attacker could exploit this by providing a malicious stylesheet with numerous comments, causing the application to crash. This results in denial of service, disrupting normal operations for users relying on the parser.

Mitigation Strategies

Upgrade the Crass gem to version 1.0.7 or later using the command 'gem install crass -v 1.0.7'. If you are using a Ruby application with a Gemfile, update the dependency to 'gem crass', '~> 1.0.7' and run 'bundle update crass'.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-61847. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart