Envira Gallery WordPress plugin versions before 1.16.2 fail to verify the capability WordPress reserves for plugin installation when handling the setup-wizard plugin-installation request, letting an authenticated Multisite subsite Administrator install any WordPress.org-published plugin into the network-shared plugins directory - an action Multisite reserves for the network Super Admin. The issue is gated: it only crosses a privilege boundary on WordPress Multisite networks and requires the attacker to already hold subsite-Administrator credentials (CVSS 3.1 AV:N/AC:L/PR:H/UI:N, assessed with S:C/C:H/I:H/A:H, scored 7.2), and it is not exploitable on standard single-site WordPress where Administrators legitimately install plugins. Publicly available exploit code exists (WPScan-published), and the vendor has released a fixed version 1.16.2.
Missing authorization in 1Panel-dev CordysCRM before 1.9.2 lets any authenticated low-privileged user read organization invoicing entities by sending POST /field/source/business-title, an endpoint that performs no permission check and therefore ignores the CONTRACT_BUSINESS_TITLE_READ privilege. Successful exploitation exposes tax identification numbers, bank account numbers, opening banks, registration addresses, and phone numbers of customer organizations, giving an attacker a ready-made dataset for invoice fraud, business email compromise, and social engineering. Publicly available exploit code exists (a Python PoC published on GitHub), and the issue is confirmed fixed in 1.9.2; per the CVSS:4.0 vector (PR:L, no UI, network-reachable), the practical barrier is simply holding valid low-privilege credentials, so an insider or a compromised standard account is enough to pull the data.
Missing authorization in 1Panel-dev CordysCRM 1.9.0 up to (but not including) 1.9.2 lets an authenticated user who has been explicitly denied module permission page through organization-wide CRM records - leads, contacts, quotations, contracts, payment plans, payment records, orders and invoices - that belong to other users. The flaw lies in eight ModuleFieldController /field/source data-source endpoints that omit the data-permission scope check, so a low-privilege account (CVSS PR:L, unauthenticated attackers cannot exploit it directly) can enumerate and read data it should never see; impact is confidentiality-only with no integrity or availability effect. Publicly available exploit code exists (a proof-of-concept script targeting the field/source endpoint family), and the vendor has released a fix in 1.9.2 via commit a31fa16f, which injects a dataPermission.invisible guard into the affected MyBatis mappers and the controller.
Authenticated users of any privilege level on JeecgBoot through 3.9.5 can rewrite DingTalk, WeCom, or Feishu third-party integration settings - client id, client secret, agent id and corp id - through the unprotected editThirdAppConfig handler, redirecting directory synchronisation and messaging to attacker-controlled applications or breaking the integrations outright. The defect is a missing authorization check (CWE-862) in ThirdAppController.java with an assessed integrity impact (CVSS 3.1 base 7.1, PR:L, I:H), and publicly available exploit code exists, though no confirmed active exploitation (CISA KEV) is reported. Real-world impact is context-dependent: instances with no configured third-party IM/directory integration expose little to steal or disrupt through this endpoint.
Reflected cross-site scripting in the Subscribe to Comments WordPress plugin (all versions before 2.3.3) allows remote attackers to inject script through a crafted URL whose parameter is reflected unvalidated into a link target, executing in the browser of anyone who clicks it, including logged-in administrators. Per the assessed CVSS vector (AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N) the attacker needs no authentication (PR:N), but exploitation is gated by mandatory user interaction (UI:R) and is confined to a single victim's browser session per click - it is reflected, not stored, and does not compromise the server. Publicly available exploit code exists, the vendor has released a patched version (2.3.3), and the issue is not listed in CISA KEV, so confirmed active exploitation is not established; risk is moderate and user-interaction-gated rather than an emergency.
Unauthenticated information disclosure affects Neterbit NW-431F devices (firmware build 20250715 and, per the wildcard CPE, presumably other unspecified versions) because the Embedded Web Server exposes the /sms.json resource without adequate access control. A remote attacker who can reach the device's web interface can retrieve information from that endpoint with no credentials and no user interaction, yielding a low-confidentiality impact only - no integrity or availability effect - consistent with an overall CVSS 4.0 base score of 6.9 (CVSS 3.1 equivalent AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N). The vendor was notified early but did not respond, so no vendor-released patch has been identified, and no public exploit code or confirmed active exploitation was observed at time of analysis; the practical risk is driven by exposure rather than by exploitation tooling. This is a moderate, not urgent, issue.
Stored cross-site scripting in the Robo Gallery WordPress plugin before 5.2.6 lets authenticated users with the Contributor role or higher save unsanitized gallery settings that are later rendered on the gallery edit screen, so the injected JavaScript executes in the browser session of any administrator who opens that gallery for editing. This is a moderate, authenticated-only stored XSS (CWE-79): the attacker must already hold Contributor-level access, and the payload stays inert until a higher-privileged user interacts with the poisoned gallery (UI:R is a hard prerequisite). Publicly available exploit code exists, but there is no indication of confirmed active exploitation (CISA KEV), and a vendor patch is available in 5.2.6; sites that do not grant Contributor+ accounts to untrusted parties face little practical exposure.
Stored cross-site scripting in the Robo Gallery WordPress plugin before version 5.2.6 allows an authenticated user holding the Author role or higher to save a crafted gallery setting that is later rendered without escaping on the frontend, so the script executes in the browser of any visitor who views the poisoned gallery - including administrators. The injection point is a gallery setting editable only by Author-and-above accounts, and the payload only fires when a victim subsequently loads the affected page, so exploitation requires an authenticated foothold plus victim page views rather than being a one-step anonymous attack. Publicly available exploit code exists (WPScan published the vulnerability entry), but there is no indication of confirmed active exploitation in CISA KEV; the vendor has released a fix in 5.2.6, and this is assessed as a moderate, not top-priority, issue.
Stored cross-site scripting in the Robo Gallery WordPress plugin (versions before 5.2.6) lets an authenticated user holding the Author role or higher plant JavaScript inside image alt text, which one gallery layout renders without sanitization or escaping, so the script executes in the browser of any visitor who views that gallery - including administrators. Exploitation requires a valid Author-level account on a site running a vulnerable version, the ability to set gallery image alt text, and use of the specific affected layout, with a separate victim having to open the gallery for the payload to fire; publicly available exploit code exists, but there is no indication of confirmed active exploitation. Severity is assessed as moderate and privilege-gated rather than remote unauthenticated code execution, and the vendor has released a fixed version.
Stored cross-site scripting in the Robo Gallery WordPress plugin before 5.2.6 lets an authenticated attacker holding the Author role or higher save a malicious payload inside one of the plugin's image settings, which the gallery page then outputs without sanitisation or escaping so the script executes in the browser of any visitor viewing that gallery - including administrators - and notably even on multisite installs where the unfiltered_html capability has been removed. Publicly available exploit code exists and the vendor has released a fix in 5.2.6. Exploitation is gated on possessing at least Author-level access and on a victim actually rendering the poisoned gallery page, so this is a moderate-risk, elevated-priority patch rather than an emergency, and sites with no untrusted Author-or-above accounts carry substantially lower practical risk.
Stored cross-site scripting in the Post Snippets WordPress plugin through 4.2.4 lets an authenticated user with Contributor-level access or above inject arbitrary JavaScript through snippet variable values, which then executes in the browser of any higher-privileged user (such as an editor or administrator) who views the rendered content. The plugin substitutes variable values into snippet output without escaping them, so injected script runs in the context of the viewing user's session and can be leveraged for session or credential theft and privileged actions performed on the victim's behalf. Publicly available exploit code exists and WPScan published the vulnerability, but there is no evidence of confirmed active exploitation (the issue is not in CISA KEV); real-world exposure is limited to sites that grant Contributor or snippet-authoring access to untrusted or lower-trust users.
Blind SQL injection in the paymendo WordPress plugin through version 1.1 allows unauthenticated remote attackers to extract sensitive data from the underlying database via an unsanitized parameter. Publicly available exploit code exists, though no CISA KEV listing indicates active exploitation at time of analysis; no EPSS score was provided. The vulnerability is rated medium severity (CVSS 6.5) and affects any WordPress site with the vulnerable plugin active.
SQL injection in the paymendo WordPress plugin (all versions through 1.1) lets an authenticated user with only low privileges inject arbitrary SQL through a request parameter that is not sanitized or escaped before being placed into a query, exposing database contents to read-out. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N, base 6.5) confirms network reachability, no user interaction, and a high confidentiality impact with no integrity or availability effect, and publicly available exploit code exists. The authentication requirement is the key limiting factor: on sites that allow self-service registration, a subscriber account is all that is needed, while closed-registration sites require the attacker to already hold valid credentials.
Unauthenticated OS command injection in TOZED X300 devices up to firmware version 6.01.3 allows remote attackers to execute arbitrary operating system commands by supplying shell metacharacters in the Host argument of the IP Ping Diagnostics feature, which is typically exposed through the device's web management interface. All severity signals converge on maximum risk: the vulnerability scores 10.0 under CVSS 4.0 with high impact to confidentiality, integrity, and availability, and the vendor did not respond to disclosure and has not released a patch. Exploitation is limited primarily by whether the diagnostics interface is reachable from the attacker's network, as it is often bound to a LAN or administrative VLAN rather than the WAN; no public exploit identified at time of analysis.
Path traversal in the worker Cache Endpoint of bleenco Abstruse (an open-source CI/CD platform) lets remote, unauthenticated attackers read files outside the intended cache directory by manipulating the 'File' argument. All versions up to and including 2.1.0 are affected, and publicly available exploit code exists (no confirmed active exploitation per CISA KEV). Impact is bounded to information disclosure: the AV:N/PR:N/UI:N vector enables unauthenticated access, while VC:L indicates read-only exposure of files readable by the worker process, with no write or code-execution primitive.
Hard-coded git credentials embedded in the distributed Docker image of FunnyWolf Viper up to and including version 3.1.11 are recoverable from the file /root/viper/.git/config, granting whoever obtains the image - or reaches a deployment that exposes the .git directory - access to the secrets stored there. Publicly available exploit code exists, published alongside a GitHub advisory and a VulDB submission, so the technique is trivially reproducible; there is no CISA KEV entry, so confirmed active exploitation in the wild is not established. With CVSS 4.0 scoring 5.5 (AV:N/PR:N/UI:N) but only LOW confidentiality impact and no integrity or availability effect, this is best treated as a low-to-moderate credential-disclosure issue rather than a pre-authentication remote compromise.
Hard-coded JWT signing key in BotSharp through 5.2.0 allows unauthenticated remote attackers to forge bearer tokens and impersonate any user, including administrators, on Authorize-protected API routes. Exploitation requires the deployment to retain the default key and default 'botsharp' issuer/audience; rotating these values mitigates the issue. No public exploit code has been identified at the time of analysis, but the high impact and low complexity make this a genuine high-priority risk as confirmed by independent assessment.
Unauthenticated remote attackers can achieve full administrative control of self-hosted Agnai instances (versions through 1.0.555) deployed with the default self-host.docker-compose.yml, which contains a hard-coded admin password and a public JWT secret. Attackers can log in as admin or forge a JWT with admin privileges to impersonate users, reset passwords, and modify server configuration. This critical vulnerability (CVSS 9.3) requires no user interaction and no prior authentication, but exploitation is limited to instances that have not overridden the default credentials and are network-reachable. No public exploit code has been identified at the time of analysis, though the hard-coded secrets are publicly visible in the repository.
Mall4j through version 4.0 allows any authenticated storefront customer to delete other shoppers' cart entries for off-shelf products by sending a single DELETE request to the /p/shopCart/cleanExpiryProdList endpoint, exploiting an operator precedence error in the cleanExpiryProdList SQL statement that fails to scope the deletion to the caller. This improper authorization flaw (CWE-783) has a CVSS 4.0 score of 5.3 with low integrity and availability impact and no confidentiality impact (PR:L), and publicly available exploit code exists. It is not listed in CISA KEV, and no active exploitation has been confirmed.
Blind SSRF in CordysCRM through 1.9.3 allows any authenticated user to call POST /approval-flow/webhook/test without the required PROCESS_SETTING permission, causing the server to issue outbound requests to an attacker-supplied URL. An attacker-controlled host can redirect the request to bypass SSRFValidator and use the endpoint's success or failure results to probe internal addresses. Publicly available exploit code exists, and the assessed impact is a low-privilege broken-access-control flaw with only low confidentiality exposure and no confirmed active exploitation.
Authorization bypass in CordysCRM through 1.9.3 allows low-privileged authenticated users to add follow-up records and overwrite follow_time and follower on any known customer, clue, or opportunity by setting the owner field to their own user id. Exploitation requires a valid low-privileged account and knowledge of a target record ID; the impact is limited to integrity of follow-up records with no confidentiality or availability effect. Publicly available exploit code exists, though CISA KEV does not list this as actively exploited. This is a moderate-priority authenticated-only vulnerability (CWE-639).
Authenticated shoppers on mall4j through version 4.0 can read other customers' off-shelf cart entries - product, SKU, quantity, shop and promoter card numbers - by calling GET /p/shopCart/expiryProdList on the storefront API. Exploitation is medium severity (CVSS 4.0 base 5.3, confidentiality-only): it requires only a self-registered low-privileged account, no administrative rights, no user interaction and no non-default configuration, because the flaw sits in the default getShopCartExpiryItems SQL logic. Publicly available exploit code exists; no confirmed active exploitation has been reported and no vendor-released patch has been identified at time of analysis.
JeecgBoot through 3.9.5 is vulnerable to a missing authorization flaw (CWE-862) in the SysMessageController delete handler, allowing any authenticated low-privileged user to delete arbitrary message records by sending a DELETE request with an attacker-chosen id. The vulnerability is present in default deployments and requires only a valid low-privilege account; publicly available exploit code exists, though no confirmed active exploitation (not in CISA KEV) has been observed. Impact is limited to integrity and availability of sys_sms rows-no data disclosure or code execution-yielding a medium-severity CVSS 4.0 base score of 5.3 (assessed CVSS 3.1: 5.3, PR:L).
Deletion of message templates in JeecgBoot through 3.9.5 is possible for any authenticated user, even the lowest-privileged account, because the SysMessageTemplateController delete handler omits an authorization check. Attackers can first enumerate template IDs from the unguarded list endpoint, then delete shipped notification templates, causing system notices and workflow reminders to fail. This integrity/availability issue has a CVSS score of 5.3 (medium) and publicly available exploit code exists, though active exploitation has not been confirmed.
Missing authorization in the JeecgBoot SysPositionController removeUserPosition handler (versions through 3.9.5) allows any authenticated low-privileged user to delete user-to-position mappings in the sys_user_position table by sending DELETE requests with arbitrary userId and positionId values. The attacker gains no confidentiality or code execution, but can silently unbind users from their positions, and the deletions are performed without logging, which hampers detection and attribution. Publicly available exploit code exists (a Python PoC referenced by VulnCheck) and the issue is tracked as CWE-862; no CISA KEV listing indicating confirmed active exploitation was provided. Independently assessed as CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L (assessed score consistent with the reported 5.3 base), this is a genuine-but-moderate priority issue requiring a valid authenticated account rather than a critical emergency.
Missing authorization checks in JeecgBoot's AiragPromptsController (all releases through 3.9.5) let any authenticated user, even one at the lowest privilege level, delete AI prompt templates belonging to other users by calling DELETE /airag/prompts/delete. Because the companion GET /airag/prompts/list endpoint performs no authorization at all, an attacker can first enumerate valid prompt template IDs and then trigger a logical (soft) deletion, making those templates unavailable to every user on the instance. Publicly available exploit code exists, but there is no indication of confirmed active exploitation; the assessed impact is confined to integrity and availability of prompt-template objects (CVSS 3.1 base 5.3, PR:L, AV:N), with no confidentiality exposure and no system-level compromise, making this a genuine but low-to-moderate priority issue.
Missing authorization in Eladmin through 2.7 allows a low-privileged authenticated user to bypass the storage:add permission and upload image-named files to /api/localStorage/pictures, resulting in unauthorized writes to server local storage and disclosure of absolute server paths. Publicly available exploit code exists, and the issue requires a valid low-privileged account with network access to the API; no user interaction or elevated privileges are needed. The CVSS 5.3 rating and independent assessment bound the impact to file write and path disclosure rather than remote code execution, and no CISA KEV data indicates active exploitation.
JeecgBoot versions through 3.9.5 expose the POST /sys/api/sendSysAnnouncement endpoint without any authorization check, allowing any authenticated low-privilege user to craft and broadcast system announcements with attacker-controlled title, content, fromUser and toUser values to arbitrary recipients over WebSocket, WeCom, DingTalk and Feishu. The flaw is a missing-authorization issue (CWE-862) rated 5.3 in CVSS 4.0 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N per the independent assessment), and its practical impact is limited to forged, potentially phishing-style or misinformation messages rather than data theft or code execution. A public proof-of-concept script targeting the endpoint exists, making exploitation straightforward for anyone holding a valid low-privilege account, though there is no indication of confirmed active exploitation (CISA KEV is not referenced) and no EPSS score was supplied.
Missing authorization in JeecgBoot through 3.9.5 lets any authenticated user publish templated system announcements to arbitrary recipients via POST /sys/api/sendBusTemplateAnnouncement. A low-privileged attacker can supply templateCode, toUser and a forged fromUser to push spoofed notifications through WebSocket, DingTalk, WeCom, Feishu and UniPush channels, an integrity-only impact (CVSS 5.3, CWE-862) that requires a valid session but no user interaction. Publicly available exploit code exists, though no active exploitation has been confirmed (the issue is not listed in CISA KEV).
Authenticated low-privileged users of CordysCRM through 1.9.3 can create or overwrite records inside custom forms they are not permitted to manage, because the POST /custom-form/data/import endpoint never verifies the caller's rights over the submitted customFormId (CWE-862). Exploitation needs only a valid low-privilege session plus an Excel file with importType set to ADD or UPDATE, and publicly available exploit code exists (a PoC script is published on GitHub); however, there is no confirmation of active exploitation (not in CISA KEV). With a CVSS 4.0 base score of 5.3 and impact confined to data integrity, this is a genuine but moderate-priority issue rather than a high-severity emergency.
Missing authorization in CordysCRM's ContractController sort handler (POST /contract/sort) lets any authenticated user - even one without contract update permission - modify contract records, including contracts belonging to other organizations, by supplying dragNodeId, stage, and field values. The flaw is CWE-862 and affects all versions before 1.9.2; publicly available exploit code exists, though there is no confirmation of active exploitation in CISA KEV. Impact is confined to contract-record integrity (no data disclosure or service disruption), making this a moderate-severity Broken Function Level Authorization issue rather than a critical breach.
Missing authorization in JeecgBoot through 3.9.5 lets any authenticated user retrieve other users' profile details - real names, usernames, emails, phone numbers, birthdays, employee numbers, department paths and posts - by supplying arbitrary userId values to the SysUserController getUserDetailByUserId handler. Exploitation requires only a low-privileged account (CVSS PR:L, no admin rights, no user interaction, no special configuration), and publicly available exploit code exists, so any deployment that permits self-registration or hosts many low-trust accounts is meaningfully exposed. This is a moderate-priority information-disclosure issue rather than a critical one; there is no confirmation of active exploitation and CVSS 4.0 scores it 5.3 (VC:L only, no integrity or availability impact), with the practical limiting factor being that the flaw is reachable only post-authentication.
Authenticated low-privileged users can export department role metadata from JeecgBoot through 3.9.5 because the SysDepartRoleController exportXls handler omits an authorization check. This low-severity information-disclosure issue is limited to read-only exposure of sys_depart_role records such as role names, codes, descriptions, and creating users; publicly available exploit code exists, but no CISA KEV entry is indicated in the provided data. Exploitation requires a valid session with only the default minimal role, and instances that do not allow self-registration or untrusted account creation materially reduce exposure.
JeecgBoot through 3.9.5 allows any authenticated low-privileged user to export the entire sys_comment table by calling the /sys/comment/exportXls endpoint because the SysCommentController handler lacks an authorization check. This exposes comment text and user IDs on records the attacker cannot normally access, but the impact is limited to information disclosure (no write or availability effect). Publicly available exploit code exists, and authentication as a low-privileged user is required (PR:L); the issue is a modest-priority one, not a top-tier emergency.
Any authenticated user of JeecgBoot through 3.9.5 can pull account records belonging to other users by supplying arbitrary userId values to the SysUserController queryChildrenByUsername handler, which performs no authorization check (CWE-862). Exposed data includes names, emails, phone numbers, employee numbers, department assignments, and staff lists for departments the targeted user heads, so the impact is confined to confidentiality of profile and organizational data with no write or availability effect. Publicly available exploit code exists, and the assessed risk is moderate rather than critical: the attacker must already hold a valid low-privileged session, and no public exploit activity has been confirmed.
Information disclosure in JeecgBoot through 3.9.5 allows any authenticated low-privileged user in a multi-tenant deployment to query the getTenantPackInfo handler with another tenant's tenantId and fixed packCode values such as superAdmin, accountAdmin, or appAdmin, exposing administrator usernames, real names, phone numbers, and departments. The flaw is a CWE-862 missing authorization check in SysTenantController; it is read-only PII exposure that requires a valid account and knowledge or enumeration of a target tenantId, with CVSS 5.3 and an independent assessment of CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N. Publicly available exploit code exists, but there is no confirmed active exploitation (not in CISA KEV), making this a genuine but modest-severity cross-tenant information-disclosure issue.
Authenticated users of JeecgBoot through 3.9.5 can read other users' stored AI chat variables through an insecure direct object reference in AiragBaseApiController's /airag/api/getChatVariable endpoint, which trusts a caller-supplied username parameter instead of the authenticated principal. Exploitation requires a valid JeecgBoot account (CVSS 4.0 PR:L) and a deployment that actively uses the AIRAG chat feature with chat variables persisted in Redis, and the attacker must know or enumerate the target appId, victim username, and variable name; impact is confined to confidentiality of chat memory values with no write, integrity, or code-execution effect, and installations not using AIRAG are not exposed. Publicly available exploit code exists (a PoC is published on GitHub), but there is no evidence of confirmed active exploitation, and the moderate CVSS score of 5.3 reflects the authentication prerequisite and limited read-only impact.
Missing authorization in JeecgBoot through 3.9.5 allows any authenticated, low-privileged user to read the AI application configurations of other users by invoking the AiragAppController queryById handler with arbitrary application ids. The companion /airag/app/listDict endpoint lacks its own access control and can be walked to enumerate valid application ids, each of which then discloses system prompts, memory prompts, model ids, knowledge base ids, and plugin bindings belonging to other users. Publicly available exploit code exists (a Python proof-of-concept), and the issue is not listed in CISA KEV as actively exploited; with the assessed vector CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N (5.3), this is a genuine but moderate-severity, read-only information-disclosure problem rather than a critical priority.
JeecgBoot through 3.9.5 contains a missing-authorization flaw in SystemApiController's getUserRoleSetById handler that lets any authenticated low-privileged user read other users' assigned role codes by supplying an arbitrary userId. The endpoint skips the system:user:queryUserRole permission check, so an attacker can enumerate role assignments and identify administrator accounts without that permission; publicly available exploit code exists. Impact is limited to information disclosure (no modification or direct account takeover), and the issue is rated moderate with a CVSS 5.3 input vector requiring a valid session.
JeecgBoot through 3.9.5 contains a missing authorization flaw in the sys/api queryUserAuths handler that lets any authenticated user retrieve the complete permission set of an arbitrary account by supplying an attacker-chosen userId parameter. This allows low-privileged attackers to map out administrator accounts and their permissions, though it does not permit modification or service disruption (CVSS 4.0 score 5.3; independent assessment CVSS 3.1 score 5.3). Publicly available exploit code exists (no CISA KEV confirmation), and exploitation requires a valid authenticated session at any privilege level.
Missing authorization in the eladmin downloadS3Storage handler (GET /api/s3Storage/download/{id}) lets any authenticated user - regardless of storage privileges - retrieve stored object URLs, and publicly available exploit code enables sequential-ID enumeration to harvest URLs for uploaded objects. The assessed vector requires a valid eladmin session of any privilege level (PR:L), but no storage-specific permission; actual file-content exposure occurs only when the referenced S3 buckets are publicly readable, otherwise impact is limited to URL and metadata disclosure. Rated CVSS 5.3 with no confirmed active exploitation (no CISA KEV), the low-complexity enumeration path and the public PoC still make it a genuine information-disclosure risk for internet-facing deployments.
Authenticated users can rename and replace dictionaries in low-code applications on JeecgBoot through 3.9.5 because the PUT /sys/dict/editDictByLowAppId endpoint lacks an authorization check. Any registered low-privilege user can obtain a target dictionary's low_app_id from GET /sys/dict/list and then pass it via the lowAppId parameter or X-Low-App-ID header to modify that dictionary's name and items. Publicly available exploit code exists, but no active exploitation has been confirmed (not in CISA KEV). The impact is limited to integrity manipulation as assessed at CVSS 5.3 (CWE-862).
Missing authorization in the putCancelQuit handler of SysUserController in JeecgBoot through version 3.9.5 lets any authenticated low-privileged user supply arbitrary user ids together with a tenantId parameter or X-Tenant-Id header and reverse user resignations, restoring ended, pending, or refused tenant memberships to normal. Publicly available exploit code exists (a Python PoC is published on GitHub), and the flaw is confirmed reachable by any logged-in account rather than anonymously. Impact is limited to tenant-membership integrity with no confidentiality or availability effect, making this a genuine-but-moderate access-control issue rather than a top-tier priority; no public exploit identified at time of analysis as actively exploited, and KEV status is not indicated.
Missing authorization in JeecgBoot through 3.9.5 allows any authenticated user - including a low-privileged one - to add arbitrary accounts to administrator-maintained user groups by sending a POST request containing target user ids and a groupId to the SysUserController addSysUserGroup handler, which performs no permission check. Impact is integrity-only at moderate severity: attacker-controlled group membership changes, with no confidentiality or availability effect on the platform itself. Publicly available exploit code exists, and there is no CISA KEV listing, so confirmed active exploitation in the wild has not been observed at time of analysis.
Missing authorization in JeecgBoot through 3.9.5 allows any authenticated user - regardless of privilege level - to reassign or remove department heads by sending a PUT request to /sys/user/changeDepartChargePerson with arbitrary user, department, and status values. Attackers must already hold a valid low-privilege account (CVSS PR:L) and network reachability to the endpoint, so this is an authenticated authorization flaw (CWE-862) rather than a pre-auth or remote-code issue; the impact is limited to integrity of department-head assignments (CVSS 4.0 base 5.3, assessed CVSS 3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N) and the department-scoped data visibility that follows. Publicly available exploit code exists (a Python PoC published on GitHub and referenced by VulnCheck), but there is no CISA KEV entry indicating confirmed active exploitation; no vendor-released patch version is identified in the available data.
Missing authorization in JeecgBoot through 3.9.5 allows any authenticated user, including one holding only a basic low-privileged role, to rename, re-parent, or strip the department heads from any department via a PUT request to /sys/user/doUpdateDepartInfo. The endpoint applies no ownership or tenant checks, so an attacker with a valid session - obtainable through self-registration or any default user role - can tamper with organizational structure across tenants without any elevated privilege. Publicly available exploit code exists (a Python PoC published on GitHub), and the vendor has not released a confirmed fixed version at time of analysis; the flaw is rated moderate (CVSS 3.1 base 5.3, integrity-only impact) and there is no public evidence of active exploitation.
Missing authorization in JeecgBoot through 3.9.5 allows any authenticated account - including the lowest-privileged user - to reassign users between departments and overwrite their positions by sending PUT requests to /sys/user/batchEditUsers with arbitrary user and department IDs. Because the SysUserController batchEditUsers handler performs no permission check, an attacker can move administrators into attacker-chosen departments and tamper with organizational metadata, but the assessed impact is integrity-only (CVSS:3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N; vendor-scored CVSS 4.0 5.3) with no data disclosure or service disruption. Publicly available exploit code exists in a public GitHub repository, though the issue is not confirmed actively exploited (CISA KEV), and the authentication prerequisite keeps overall risk moderate rather than emergency-grade.
Missing authorization in the saveDatarule handler of JeecgBoot's SysDepartRoleController (all versions through 3.9.5) allows any authenticated low-privileged user to overwrite department-role data-rule mappings, widening row-level data access or altering query filtering for roles they do not legitimately administer. The flaw is reachable over the network with only ordinary authenticated access (PR:L, no user interaction) by posting crafted permissionId, roleId and dataRuleIds values to the save-datarule endpoint; impact is limited to confidentiality and integrity of data-rule scope, not code execution or account takeover, which is consistent with the moderate 5.3 score. Publicly available exploit code exists (a Python PoC is published alongside the CVE), though no CISA KEV entry or active-exploitation confirmation was provided, and the realistic risk is highest in deployments where low-privileged or self-registered accounts are widely available.
An authorization weakness in JeecgBoot through 3.9.5 lets any authenticated low-privileged user overwrite role-level data rules through the SysRoleController saveDatarule handler, clearing row-level filters so records normally hidden from that role become readable, or changing the filtering applied to other roles. Exploitation requires network reachability to the saveDatarule endpoint and a valid low-privileged session (PR:L) with no user interaction, and publicly available exploit code exists in the form of a Python PoC (poc_role_datarule_write.py) that posts permissionId, roleId and dataRuleIds values. Impact is bounded to data-rule and row-level filter manipulation with low confidentiality and integrity loss rather than code execution or administrative takeover, giving a moderate assessed severity (CVSS 3.1 5.3); risk concentrates on deployments that issue low-trust accounts or expose the application to many users.
Broken access control in CordysCRM through 1.9.3 allows any authenticated low-privileged user to submit arbitrary business resources for approval by calling POST /approval-resource/push without any ownership check, altering approval status and exposing approval details for contracts, invoices, quotations, and orders. The flaw is remotely reachable with a valid session but requires authentication (PR:L), and impact is bounded to low confidentiality and integrity loss with no availability or system-level effect. Publicly available exploit code exists, including a proof-of-concept script, but there is no confirmation of active exploitation, and no vendor-released patch was identified in the available data at time of analysis.