Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-86228

CVE-2026-86228: JeecgBoot Authentication Bypass Vulnerability

CVE-2026-86228 is an authentication bypass flaw in JeecgBoot up to version 3.9.3 affecting the exportXls function. Attackers can exploit improper access controls remotely. This article covers technical details, affected versions, security impact, and mitigation strategies.

Published:

CVE-2026-86228 Overview

CVE-2026-86228 is an improper access control vulnerability [CWE-266] affecting JeecgBoot versions up to 3.9.3. The flaw resides in the exportXls function of jeecg-boot/jeecg-boot-module/jeecg-boot-module-airag/src/main/java/org/jeecg/modules/airag/llm/controller/AiragModelController.java. Manipulation of the credential argument allows an authenticated remote attacker to bypass access controls on the AI RAG model configuration export endpoint. The exploit has been publicly disclosed. JeecgBoot version 3.9.5 resolves the issue via commit a2be896f753936956ee6863b632b8e5a0231345c.

Critical Impact

Authenticated remote attackers can export sensitive AI RAG model credentials through an inadequately protected controller endpoint.

Affected Products

  • JeecgBoot versions up to and including 3.9.3
  • jeecg-boot-module-airag module (AiragModelController)
  • Fixed in JeecgBoot version 3.9.5

Discovery Timeline

  • 2026-09-06 - CVE-2026-86228 published to NVD
  • 2026-09-08 - Last updated in NVD database

Technical Details for CVE-2026-86228

Vulnerability Analysis

The vulnerability exists in the exportXls handler of AiragModelController, which serves the AI Retrieval-Augmented Generation (RAG) large language model (LLM) configuration module of JeecgBoot. The endpoint accepts a credential parameter that is not subject to adequate authorization enforcement. An authenticated user with low privileges can manipulate this parameter to retrieve model credentials that should be restricted to higher-privileged administrative roles.

Because JeecgBoot is a widely used low-code development platform frequently deployed in enterprise back-office environments, exposure of model credentials can lead to downstream compromise of connected LLM providers and cost abuse. The exploit is publicly disclosed via VulDB and the JeecgBoot GitHub issue tracker.

Root Cause

The root cause is classified as [CWE-266] Incorrect Privilege Assignment. The exportXls method fails to validate that the calling principal possesses the authorization required to export credential material tied to AI RAG model definitions. Access control is enforced inconsistently across the AiRAG controller surface, allowing lower-privileged accounts to reach a data export path intended for administrators.

Attack Vector

Exploitation requires network access to the JeecgBoot application and a valid low-privilege authenticated session. An attacker submits a crafted request to the exportXls endpoint of AiragModelController with a manipulated credential argument, receiving an XLS export containing credential data. No user interaction is required.

The vulnerability is documented in the JeecgBoot Issue #9600 and cataloged in VulDB CVE-2026-86228. See the JeecgBoot Commit a2be896 for the corrective patch scope.

Detection Methods for CVE-2026-86228

Indicators of Compromise

  • Unexpected HTTP requests to the AiragModelControllerexportXls endpoint originating from non-administrative user sessions.
  • Unusual XLS file downloads containing AI model credential fields from the /airag/llm/ API path.
  • Outbound calls to third-party LLM providers from unexpected source identities following credential export activity.

Detection Strategies

  • Review application access logs for calls to exportXls in the airag/llm controller correlated with low-privilege JWT or session tokens.
  • Instrument the JeecgBoot backend to log the credential request parameter and flag requests where the parameter is manipulated by non-admin users.
  • Compare JeecgBoot binaries and jars against version 3.9.5 to identify unpatched deployments still exposing the vulnerable controller.

Monitoring Recommendations

  • Enable web application firewall (WAF) rules that inspect requests to /jeecg-boot/airag/** endpoints and require administrator role claims.
  • Monitor for anomalous credential export volumes from JeecgBoot service accounts.
  • Alert on new outbound API keys appearing in use against connected OpenAI, Azure OpenAI, or comparable LLM endpoints.

How to Mitigate CVE-2026-86228

Immediate Actions Required

  • Upgrade JeecgBoot to version 3.9.5 or later, which includes patch commit a2be896f753936956ee6863b632b8e5a0231345c.
  • Rotate any AI RAG model credentials that were stored in the JeecgBoot airag/llm module prior to patching.
  • Audit application accounts and remove unused low-privilege users that could reach the AiRAG controller.

Patch Information

The fix is delivered in JeecgBoot Release v3.9.5 via commit a2be896f753936956ee6863b632b8e5a0231345c. Source is available at the JeecgBoot GitHub Repository. Additional metadata is published in VulDB Vulnerability #399381.

Workarounds

  • Restrict network access to the JeecgBoot administrative interface to trusted management networks only.
  • Apply a reverse proxy authorization rule that denies non-administrator roles access to airag/llm/*/exportXls.
  • Disable the jeecg-boot-module-airag module if the AI RAG functionality is not required by the deployment.
bash
# Nginx reverse-proxy rule blocking non-admin access to the vulnerable endpoint
location ~* /jeecg-boot/airag/llm/.*/exportXls {
    if ($http_x_user_role !~* "admin") {
        return 403;
    }
    proxy_pass http://jeecg_backend;
}

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.