Skip to main content

jshERP EUVDEUVD-2026-101243

| CVE-2026-110615 HIGH
Missing Authorization (CWE-862)
2026-10-14 VulnCheck GHSA-8426-mpq6-mjwc
7.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privilege tenant user
  2. Exploit
    Craft POST /user/batchSetStatus with target ids and status
  3. Execution
    Submit request bypassing absent authorization check
  4. Impact
    Disable all non-owner accounts, lock out administrators

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

Exploitation requires an authenticated low-privilege account within the same jshERP tenant (CVSS PR:L) and the ability to reach the POST /user/batchSetStatus endpoint over the network; no user interaction, admin rights, or non-default configuration is needed because the endpoint is missing its authorization check by design. The primary limiting factor is the authentication requirement - the attacker must already be a valid user - which confines impact to insiders or anyone who can obtain low-privilege credentials, and scope is bounded to accounts within the attacker's own tenant.

Impact

The CVSS 4.0 base score of 7.1 (HIGH) is driven almost entirely by the availability impact (VA:H) - an attacker can mass-disable accounts and lock out administrators within their tenant - while confidentiality is untouched (VC:N) and integrity is limited (VI:L). The vector is network-reachable with low complexity and no user interaction (AV:N/AC:L/AT:N/UI:N), but critically requires existing low-privilege authentication (PR:L), so this is a privileged-insider / post-authentication escalation issue rather than a pre-auth internet-wide threat. No EPSS score was provided in the input, and there is no CISA KEV listing and no explicit POC flag, so there is no public-exploitation signal to elevate priority beyond the CVSS figure; however, the referenced HackMD write-up and VulnCheck advisory describe the flaw and the vulnerable source lines in enough detail that weaponization is trivial. SSVC-style reading: exploitation status is 'none' (no confirmed active use), the attack is automatable (a single crafted POST with id/status arrays), and technical impact is partial (account lockout/DoS within a tenant, not full system takeover). Net: a genuine but context-bounded priority - treat as HIGH in multi-tenant jshERP deployments where untrusted low-privilege users exist, and lower where all authenticated users are trusted. Note the input 'Authentication Bypass' tag is slightly misleading: CWE-862 and the description confirm this is a missing-authorization flaw exploited by an already-authenticated user, not an authentication bypass - verify tag semantics before triaging.

Exploit ScenarioDerived

A low-privilege user who already holds valid credentials in a jshERP tenant sends a crafted POST to /user/batchSetStatus containing other users' ids and a disabled status value. Because the endpoint performs no ownership or role check, the request succeeds and disables every non-owner account - including administrators - producing a tenant-wide lockout, or alternatively re-enables previously disabled accounts. No public exploit code is identified, but the VulnCheck advisory and HackMD analysis document the exact vulnerable controller/service code.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 14, 2026

Missing authorization in jshERP through 3.6 lets any authenticated low-privilege user hit POST /user/batchSetStatus and mass-change account status for other users in the same tenant, disabling every non-owner account - including administrator accounts - or re-enabling previously disabled ones. Exploitation requires only a valid low-privilege account and network reachability to the endpoint (CVSS PR:L, no user interaction), which confines realistic risk to insiders or anyone who can obtain low-privilege credentials. No public exploit code or confirmed active exploitation was identified at time of analysis; the CVSS 4.0 score of 7.1 (HIGH) and the independent 3.1 assessment (7.1, AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:H) are driven almost entirely by availability impact, with confidentiality untouched and integrity only partially affected.

RemediationAI

No vendor-released patch or fixed version was identified at time of analysis, so remediation must be compensating-control driven. The most direct mitigation is to deny unprivileged principals access to POST /user/batchSetStatus: add a role check (admin-only) in a servlet filter or Spring Security interceptor in front of UserController#batchSetStatus, or, if the batch function is unused by business processes, remove/disable the batchSetStatus method entirely - the trade-off being loss of legitimate bulk account management. If code changes are not feasible, block or restrict the /user/batchSetStatus path at a reverse proxy or WAF to non-administrative source ranges or authenticated admin sessions; this trades operational convenience and may break legitimate bulk status workflows. Additionally, tightly control who receives any jshERP account (since only authentication, not a role, is needed), enforce a dedicated non-shared admin account that is excluded from the affected tenant scope where possible, and add alerting on audit logs for bulk user-status changes or unexpected disabling of administrative accounts so a lockdown can be reversed quickly. Monitor https://github.com/jishenghua/jshERP and the VulnCheck advisory for an upstream fix and apply it as soon as it is released.

Affected VersionsENISA

jshERP 0 ≤3.6

Affected Packages

euvd jsherp no fix

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

jshERP is an open-source Java/Spring Boot ERP application (the jshERP-boot module) that is multi-tenant by design, with user accounts scoped to a tenant and hierarchical roles. CVE-2026-110615 is a classic CWE-862 Missing Authorization defect: the batch status operation exposed by UserController.java (lines 541-555, as shipped in the v3.6 tag) delegates to UserService.java (lines 901-946) to update multiple user records from attacker-supplied 'ids' and 'status' values, but the endpoint performs no role, ownership, or tenant-boundary permission check on the caller. Because authorization is absent rather than merely weak, any principal that passes authentication - regardless of privilege level - can invoke the batch update and affect any account reachable in the tenant, including the accounts that administer it. The CPE entry cpe:2.3:a:jishenghua:jsherp:*:*:*:*:*:*:*:* indicates the affected product is jshERP as a whole, with all versions up to and including 3.6 in scope; the vendor's GitHub repository is the primary reference point for the vulnerable code paths. No CWE-639 (IDOR-style) or injection mechanism is involved - the sole root cause is the missing authorization gate on an otherwise functional administrative operation.

Know when Jsherp 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

Vendor (VulnCheck) PRIMARY 7.1 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.1 HIGH

Authenticated low-privilege user over the network (PR:L/AV:N/AC:L); no data disclosure (C:N), limited integrity via status change (I:L), high availability impact from mass account lockout (A:H).

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

jshERP through 3.6 contains a missing authorization vulnerability in the POST /user/batchSetStatus endpoint that allows authenticated low-privilege users to change other users' account status. Attackers can submit crafted ids and status values to disable every non-owner account in their tenant, locking out administrators, or re-enable disabled accounts.

Executive ViewAI

Why It Matters

Organizations using jshERP versions up to 3.6 face a high-severity authorization gap that lets any authenticated user with basic privileges disable or re-enable accounts across their tenant, including administrators, potentially locking out the entire workforce. This creates a significant insider threat and availability risk, as a single low-privilege account could disrupt critical ERP operations. No public exploit identified at time of analysis and No vendor-released patch identified at time of analysis, so leadership should prioritize interim mitigations to protect business continuity.

Business Impact: High
Compensating Controls

No vendor patch available; restrict access to POST /user/batchSetStatus to trusted administrators, monitor for unauthorized mass account status changes, and enforce least privilege. Consider disabling the endpoint if not required.

Threat Intelligence Overview

EPSS Score
0.4%
Top 64% exploitable
Prevalence
Low
niche open-source Chinese ERP, limited enterprise deployment footprint
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.4%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

36
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

More in Jsherp

View all
CVE-2024-24003 CRITICAL POC
9.8 Feb 08

jshERP v3.3 is vulnerable to SQL Injection. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitab

CVE-2024-24004 CRITICAL POC
9.8 Feb 07

jshERP v3.3 is vulnerable to SQL Injection. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitab

CVE-2024-24002 CRITICAL POC
9.8 Feb 07

jshERP v3.3 is vulnerable to SQL Injection. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitab

CVE-2024-24001 CRITICAL POC
9.8 Feb 07

jshERP v3.3 is vulnerable to SQL Injection. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitab

CVE-2025-55370 HIGH POC
8.8 Aug 21

Incorrect access control in the component \controller\ResourceController.java of jshERP v3.5 allows unauthorized attacke

CVE-2025-55368 HIGH POC
8.8 Aug 21

Incorrect access control in the component \controller\RoleController.java of jshERP v3.5 allows unauthorized attackers t

CVE-2026-94501 HIGH POC
8.7 Sep 21

Authenticated users can exploit a missing authorization check in jshERP 3.6 and earlier to manipulate userBusiness autho

CVE-2026-94412 HIGH POC
8.7 Sep 21

Authenticated account takeover in jshERP through 3.6 allows any logged-in user to reset the password of any other accoun

CVE-2026-94411 HIGH POC
8.7 Sep 21

Privilege escalation in jshERP 3.6 allows an authenticated low-privilege tenant user to grant themselves arbitrary roles

CVE-2026-94497 HIGH POC
8.7 Sep 21

Authenticated users of jshERP through 3.6 can read, modify, and delete other users' business objects - such as materials

CVE-2026-94496 HIGH POC
8.7 Sep 21

Privilege escalation in jshERP through 3.6 lets any authenticated user - including one holding only a low-privileged ten

CVE-2026-94413 HIGH POC
7.1 Sep 21

jshERP through 3.6 exposes unsalted MD5 password hashes via the /user/info endpoint, allowing any authenticated user to

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy