Register for the AI for Security Summit: Join Figma, Perplexity & Wiz

CVE-2026-23835
JavaScript vulnerability analysis and mitigation

Overview

CVE-2026-23835 is an improper authorization vulnerability in LobeHub's file upload feature (Knowledge Base > File Upload) that allows authenticated users to manipulate upload request parameters to create arbitrary files in unintended paths and bypass monthly storage quotas. It affects all versions of the @lobehub/chat npm package prior to 1.143.3. The vulnerability was published on January 30, 2026, with a patch released the same day. It carries a CVSS v4.0 base score of 5.7 (Medium) (GitHub Advisory, GitHub Security Advisory).

Technical details

The root cause is classified as CWE-73 (External Control of File Name or Path): the server's POST /trpc/lambda/file.createFile?batch=1 endpoint trusted client-supplied name and size parameters without server-side validation against the actual file stored in S3. An authenticated attacker could intercept this request using a proxy tool (e.g., Burp Suite), modify the size field to misrepresent the actual file size (e.g., reporting a 1 GB file as 10 MB), and modify the name/path field to write files to unintended storage locations. The fix introduced server-side verification by querying S3 directly via HeadObjectCommand to retrieve the actual ContentLength, replacing the client-provided value before recording file metadata (GitHub Security Advisory, Patch Commit).

Impact

Exploitation allows an authenticated attacker to bypass monthly upload quotas by underreporting file sizes, causing a discrepancy between actual resource consumption and billing calculations that results in direct financial harm to service operators. Excessive unaccounted uploads can exhaust storage resources, leading to failed uploads, delayed content delivery, or temporary suspension of upload functionality for legitimate users — effectively an indirect denial of service across shared subscription plans. Additionally, manipulated file paths can place files in abnormal locations, and the resulting distortion of monitoring metrics can overload downstream systems such as backup processes, malware scanning, and media processing pipelines (GitHub Advisory).

Exploitability

No public proof-of-concept exploit code has been confirmed, and there is no evidence of in-the-wild exploitation at this time (Feedly). The vulnerability requires low privileges (an authenticated account) and no user interaction, making it relatively easy to abuse by any registered user. The EPSS score is approximately 0.042% (13th percentile), indicating a low near-term exploitation probability. The CVE is not listed in the CISA Known Exploited Vulnerabilities catalog. Qualys has added detection for this vulnerability (detection ID 5007294) (GitHub Advisory).

Exploitation steps

  1. Authenticate: Log in to a LobeHub/LobeChat instance running a version prior to 1.143.3 with any valid user account.
  2. Navigate to Knowledge Base: Access the Knowledge Base section and initiate a file upload via the File Upload feature.
  3. Intercept the request: Use a proxy tool such as Burp Suite to intercept the outbound HTTP POST request to /trpc/lambda/file.createFile?batch=1 generated after the file is uploaded to S3.
  4. Manipulate parameters: In the intercepted request body, modify the size field to a value significantly lower than the actual file size (e.g., change 1073741824 [1 GB] to 10485760 [10 MB]) to bypass quota enforcement. Optionally, modify the name field to specify an unintended file path for arbitrary file placement.
  5. Forward the request: Send the modified request to the server. The server records the attacker-supplied size value without verifying it against the actual S3 object, crediting only the falsified size against the user's quota.
  6. Repeat: Repeat the process to continuously upload files beyond the intended storage and traffic limits, exhausting resources for other users on the same subscription plan (GitHub Security Advisory, GitHub Advisory).

Indicators of compromise

  • Network: Repeated POST requests to /trpc/lambda/file.createFile?batch=1 from a single user account with anomalous or inconsistent size values relative to actual S3 object sizes; high-frequency upload requests from a single authenticated session.
  • Logs: Application logs showing file creation records where the recorded size field is significantly smaller than the actual S3 object ContentLength; discrepancies between billing/quota logs and actual S3 storage consumption metrics.
  • File System / Storage: Files appearing in unexpected or non-standard S3 key paths inconsistent with normal upload naming conventions; sudden unexplained growth in S3 bucket storage usage not reflected in quota dashboards.
  • Monitoring: Anomalous spikes in backup, malware scanning, or media processing pipeline workloads without a corresponding increase in reported upload quota usage (GitHub Security Advisory).

Mitigation and workarounds

Upgrade LobeHub (@lobehub/chat npm package) to version 1.143.3 or later, which validates actual file size by querying S3 via HeadObjectCommand instead of trusting the client-supplied size parameter. Additionally, the patch adds a userId authorization check in removeFilesFromKnowledgeBase to prevent cross-user file removal. Until patching is complete, operators should monitor upload activity and storage usage for anomalies, and consider implementing WAF rules or rate limiting on the /trpc/lambda/file.createFile endpoint (Patch Commit, GitHub Advisory).

Community reactions

The vulnerability was reported by security researcher uko3211 and published by LobeHub maintainer arvinxx via GitHub's security advisory process on January 30, 2026. Red Hat has tracked the CVE in their security database. No significant broader media coverage or notable community commentary beyond the advisory itself has been identified (GitHub Security Advisory, Red Hat CVE).

Additional resources


SourceThis report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-54504HIGH8.8
  • JavaScript logoJavaScript
  • @andrea9293/mcp-documentation-server
NoYesSep 17, 2026
CVE-2026-77615HIGH8.7
  • JavaScript logoJavaScript
  • paella-core
NoYesSep 17, 2026
CVE-2026-91127HIGH8.2
  • JavaScript logoJavaScript
  • @file-viewer/doc
NoYesSep 18, 2026
CVE-2026-77301HIGH7.5
  • JavaScript logoJavaScript
  • adm-zip
NoYesSep 18, 2026
CVE-2026-84992MEDIUM6.1
  • JavaScript logoJavaScript
  • md-editor-v3
NoYesSep 18, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management