Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privileged user
-
ExploitSend PUT to /airag/ocr/edit
-
ExecutionOverwrite shared airag:ocr Redis prompts
-
ImpactCorrupt OCR results for all users
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires a valid authenticated JeecgBoot account with only low privileges (PR:L); no administrative role or user interaction is needed. The target must have the AiRAG OCR module deployed and reachable, exposing the PUT /airag/ocr/edit endpoint backed by a shared airag:ocr Redis key. Exploitation is limited to tampering with shared OCR/LLM prompt templates (integrity impact only) - it does not disclose data or crash the service - and is gated by the attacker first obtaining any authenticated session, which on default deployments may be as easy as self-registration. |
| Impact | This is a genuine but low-to-moderate priority issue, not a critical one, and the signals are internally consistent. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) and the base score of 5.3 (MEDIUM) agree with the description: remotely reachable, low attack complexity, but requires an authenticated low-privileged account (PR:L) and no user interaction. Impact is integrity-only and limited - VI:L with VC:N/VA:N (no confidentiality or availability impact) - reflecting that the flaw corrupts shared OCR/LLM prompt data rather than enabling code execution or data theft. Publicly available exploit code exists (a VulnCheck-referenced POC script), which raises practical exploitability, but this is NOT the same as active exploitation: there is no CISA KEV listing and no EPSS score was provided, so widespread or confirmed in-the-wild abuse cannot be asserted. No SSVC decision data was supplied. Net: the authentication requirement and the integrity-only, data-corruption nature of the impact cap real-world risk well below what the 'authentication bypass' tag might imply - the true weakness is missing authorization (CWE-862) available to any already-authenticated user. |
| Exploit ScenarioDerived | An attacker who holds any low-privileged JeecgBoot account (self-registered or compromised) sends a PUT request to /airag/ocr/edit, which the AiOcrController updateById handler processes without verifying authorization. This overwrites the LLM prompts stored in the shared airag:ocr Redis key, corrupting OCR output for every user of the platform. A public POC script demonstrates the request, lowering the skill needed to reproduce it. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 10, 2026
Missing authorization in JeecgBoot through 3.9.5 allows any authenticated low-privileged user to overwrite the global OCR/LLM prompt templates used by the AiRAG module by sending a PUT request to /airag/ocr/edit, writing attacker-controlled content into the shared airag:ocr Redis key and corrupting OCR output for every user of the instance. Exploitation requires only a valid low-privilege account (PR:L in the CVSS vector) and no user interaction, and publicly available exploit code exists; the issue is not listed as confirmed actively exploited (CISA KEV). The impact is confined to integrity tampering with shared prompt configuration - no data disclosure and no denial of service - which is consistent with the assessed CVSS:3.1 vector AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N and makes this a genuine but low-to-moderate priority issue.
RemediationAI
No vendor-released patch version has been identified at the time of analysis, so mitigation must be applied at the deployment layer. Until a fixed JeecgBoot release is published (monitor the upstream repository and project advisories), add an explicit authorization check such as @PreAuthorize or an equivalent admin-role guard to AiOcrController.updateById so that PUT /airag/ocr/edit is restricted to trusted administrative roles, or block that route at the reverse proxy/gateway for all other users; the trade-off is that legitimate template management must be moved to an admin-only channel or performed directly against Redis. If the AiRAG OCR feature is not required, remove or disable the jeecg-boot-module-airag deployment, which eliminates the attack surface at the cost of losing OCR functionality. Compensating measures include network restriction of who can reach the edit endpoint and monitoring or write-protecting the shared airag:ocr Redis key so unauthorized writes are detected and can be rolled back, though this adds operational overhead and possible false positives. Finally, harden account provisioning - for example disable open self-registration where it is not needed - because any authenticated low-privilege session, which on default setups may be as easy as self-registration, is sufficient to trigger the flaw.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
JeecgBoot is a low-code Java/Spring Boot development platform, and its optional AiRAG module provides retrieval-augmented generation and OCR services. The affected component is AiOcrController in jeecg-boot-module-airag (package org.jeecg.modules.airag.ocr.controller), whose updateById handler at lines 56-71 of the referenced upstream source processes PUT /airag/ocr/edit without any authorization or role check, matching CWE-862 (Missing Authorization). Instead of persisting settings per user or per tenant, the handler writes the OCR/LLM prompt configuration into a single shared Redis key, airag:ocr, that all users of the instance read, so a low-privileged authenticated account can steer prompts used for OCR parsing and LLM extraction platform-wide. The assessed vector AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N confirms the flaw is network-reachable, needs only low privileges, requires no victim interaction, and yields only a low integrity impact with no confidentiality or availability effect on the vulnerable system.
Know when Jeecgboot gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Network-reachable endpoint with low complexity but requiring a low-privileged authenticated account (PR:L); integrity-only impact on shared OCR data, so C:N/A:N and I:L, scope unchanged.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
JeecgBoot through 3.9.5 contains a missing authorization vulnerability in the AiOcrController updateById handler that allows any authenticated user to modify global OCR templates. Low-privileged attackers can send PUT requests to /airag/ocr/edit to overwrite LLM prompts in the shared airag:ocr Redis key, corrupting OCR results for all users.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Unauthenticated report data exfiltration in JimuReport (JeecgBoot) through version 2.5.0 lets remote attackers export th
Broken access control in JeecgBoot through 3.9.2 lets authenticated low-privilege users reach the OpenApiAuthController
Privilege escalation in JeecgBoot through 3.9.5 lets any authenticated user approve their own pending tenant administrat
Missing authorization in the saveDeptRolePermission endpoint of JeecgBoot's SysDepartPermissionController lets any authe
SQL injection vulnerability in Beijing Guoju Information Technology Co., Ltd JeecgBoot v.3.7.2 allows a remote attacker
JeecgBoot up to v 3.5.1 was discovered to contain a SQL injection vulnerability via the component queryFilterTableDictIn
JeecgBoot up to v 3.5.1 was discovered to contain a SQL injection vulnerability via the component queryTableDictItemsByC
JeecgBoot through 3.9.5 ships a system log controller whose batch-delete handler performs no authorization check, so any
Database credential disclosure in JeecgBoot through 3.9.5 allows any authenticated low-privileged user to retrieve JDBC
Missing authorization in JeecgBoot through 3.9.5 lets any authenticated user enumerate record IDs through the unguarded
Authenticated low-privileged users of JeecgBoot through 3.9.5 can retrieve any other user's stored password ciphertext t
Authenticated users of any privilege level on JeecgBoot through 3.9.5 can rewrite DingTalk, WeCom, or Feishu third-party
EUVD-2026-96544
GHSA-392w-2vxx-87fq
NVD
CVE.org
EPSS
Exploit-DB