Description
crmne/ruby_llm at commit fa6f279847d6d7027814539d9c0dfc3bbdfd2a83 contains a polynomial-time regular expression denial-of-service condition in RubyLLM::Utils.underscore on Ruby 3.1.x. A very long crafted class, agent, or tool name can cause excessive CPU consumption and a denial of service.
Published: 2026-08-13
Score: 7.5 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

RubyLLM::Utils.underscore contains a polynomial-time regular expression that can be triggered by an excessively long class, agent, or tool name, leading to extreme CPU usage and a denial of service. The issue is an instance of ReDoS (CWE-1333), which compromises availability only.

Affected Systems

The vulnerability affects the open-source project crmne/ruby_llm for Ruby 3.1.x; the offending code is present in commit fa6f279847d6d7027814539d9c0dfc3bbdfd2a83. No vendor or product name is listed beyond the GitHub repository.

Risk and Exploitability

The CVSS score of 7.5 is now available; the EPSS score remains unavailable, and the vulnerability is not listed in the CISA KEV catalog, so the precise exploitation score is unknown. Nevertheless, the attack can be carried out by supplying a specially crafted name string to the RubyLLM::Utils.underscore function, which is likely to occur in any component that accepts user-supplied tool, agent, or class names. The concern is purely to disrupt service availability rather than steal data or gain privileged access. Given the lack of exploitation evidence, the realistic threat level appears moderate, but the potential impact of a full denial of service warrants immediate attention.

Generated by OpenCVE AI on August 13, 2026 at 20:09 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply a patched version of ruby_llm or the underlying library if one is released.
  • Sanitize or truncate any user‑supplied class, agent, or tool names to a reasonable maximum length before they reach RubyLLM::Utils.underscore.
  • Deploy application resource limits (CPU caps or cgroups) on Ruby processes running the LLM to contain runaway CPU usage.

Generated by OpenCVE AI on August 13, 2026 at 20:09 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 13 Aug 2026 20:30:00 +0000

Type Values Removed Values Added
Title Regular Expression Denial of Service in RubyLLM::Utils.underscore for Ruby 3.1.x

Thu, 13 Aug 2026 18:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-918

Thu, 13 Aug 2026 17:00:00 +0000

Type Values Removed Values Added
Title Regular Expression Denial of Service in RubyLLM::Utils.underscore for Ruby 3.1.x
Weaknesses CWE-918

Thu, 13 Aug 2026 16:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-1333
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 13 Aug 2026 14:00:00 +0000

Type Values Removed Values Added
Description crmne/ruby_llm at commit fa6f279847d6d7027814539d9c0dfc3bbdfd2a83 contains a polynomial-time regular expression denial-of-service condition in RubyLLM::Utils.underscore on Ruby 3.1.x. A very long crafted class, agent, or tool name can cause excessive CPU consumption and a denial of service.
References

Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: mitre

Published:

Updated: 2026-08-13T15:41:43.294Z

Reserved: 2026-07-30T00:00:00.000Z

Link: CVE-2026-67991

cve-icon Vulnrichment

Updated: 2026-08-13T15:41:32.989Z

cve-icon NVD

Status : Received

Published: 2026-08-13T14:17:11.717

Modified: 2026-08-13T16:18:48.893

Link: CVE-2026-67991

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-13T20:15:03Z

Weaknesses
  • CWE-1333

    Inefficient Regular Expression Complexity