CVE-2026-58578: LobeHub LobeChat ReDoS in GitHub skill import

CVE-2026-58578 · Severity: medium · CVSS 6.5 · Published 2026-07-02

LobeChat, an open-source AI chat framework, is vulnerable to a denial-of-service attack during the "skill import" process. An authenticated user can provide a specially crafted GitHub URL that causes the server to become unresponsive for nearly a minute per request. This can be used to block all other users from accessing the service, leading to significant operational downtime.

Technologies: LobeHub LobeChat. Vendors: LobeHub.

Quick answers

Is CVE-2026-58578 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-58578 being exploited in the wild.
How severe is CVE-2026-58578?
Medium severity, with a CVSS score of 6.5, published 2 July 2026.
Which products and versions are affected?
LobeHub LobeChat before 2.2.10-canary.15.
Is there a fix for CVE-2026-58578?
A patch was published on 2026-07-01: Fix merged into canary branch Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-58578 attacked?
It is attacked over the network, in a hosted service.
Am I affected by CVE-2026-58578?
Check whether you run LobeHub LobeChat at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

A Regular Expression Denial of Service (ReDoS) vulnerability exists in the `agentSkills.importFromGitHub` tRPC endpoint. The root cause is the `findSkillMd` function in `src/server/services/skill/parser.ts`, which interpolates a user-controlled GitHub URL path segment (`basePath`) directly into a `new RegExp()` constructor without escaping. An authenticated attacker can provide a path containing catastrophic backtracking patterns (e.g., `(a+)+`). When the server processes the repository ZIP, the synchronous `.test()` call against archive entries blocks the Node.js event loop, denying service to all concurrent users. The vulnerability was fixed in version 2.2.10-canary.15 by replacing dynamic regex construction with plain string matching.

Affected products

  • LobeHub LobeChat before 2.2.10-canary.15

Timeline

  • 2026-05-18: disclosed: Initial private disclosure via GitHub Security Advisory
  • 2026-06-30: disclosed: Public issue opened on GitHub repository
  • 2026-07-01: patched: Fix merged into canary branch
  • 2026-07-02: advisory: CVE published to NVD

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.