/

CVE-2026-108623

Severity:

HIGH RISK

(7.1)

Missing Authorization (CWE-862) in JeecgBoot Audit Logs

CVE-2026-108623

Deferred

Vulnerability type

Category:

Missing Authorization

CWE:

CWE-862

Impact:

Audit Log Deletion and Loss of Accountability

Severity:

HIGH RISK

(7.1)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

JeecgBoot through version 3.9.5 contains a missing authorization check in the system audit-log deletion handler. An authenticated, low-privileged user may delete audit entries, potentially including the entire system log table when the deletion function accepts a global-clear operation.

JeecgBoot through version 3.9.5 contains a missing authorization check in the system audit-log deletion handler. An authenticated, low-privileged user may delete audit entries, potentially including the entire system log table when the deletion function accepts a global-clear operation.

Affected context

The vulnerability occurs in deployments that expose JeecgBoot's SysLogController batch-deletion functionality to authenticated users without enforcing a role or permission check for destructive audit-log operations. Risk is increased when ordinary users can reach the handler and audit records are stored in the affected sys_log table.

The vulnerability occurs in deployments that expose JeecgBoot's SysLogController batch-deletion functionality to authenticated users without enforcing a role or permission check for destructive audit-log operations. Risk is increased when ordinary users can reach the handler and audit records are stored in the affected sys_log table.

Exploit preconditions

  • Attack surface: Authenticated application HTTP endpoint
  • Required access: Any valid user account, if no additional privilege check is enforced
  • Trigger point: The SysLogController deleteBatch handler
  • Affected operation: Batch deletion of system audit-log records
  • Why exploitation is possible: Authorization is not adequately verified before a destructive operation is performed
  • Attack surface: Authenticated application HTTP endpoint
  • Required access: Any valid user account, if no additional privilege check is enforced
  • Trigger point: The SysLogController deleteBatch handler
  • Affected operation: Batch deletion of system audit-log records
  • Why exploitation is possible: Authorization is not adequately verified before a destructive operation is performed

Why this happens

The underlying flaw is a missing authorization control on a sensitive administrative operation. The handler relies on authentication or request reachability without confirming that the caller has permission to delete audit records, which maps to CWE-862: Missing Authorization. This insecure pattern allows a lower-privileged principal to invoke functionality intended for trusted administrators.

The underlying flaw is a missing authorization control on a sensitive administrative operation. The handler relies on authentication or request reachability without confirming that the caller has permission to delete audit records, which maps to CWE-862: Missing Authorization. This insecure pattern allows a lower-privileged principal to invoke functionality intended for trusted administrators.

Potential impact

  • Attackers may delete selected audit-log entries
  • Attackers could erase broad or complete audit history
  • Security investigations may lose important evidence
  • Organizations may experience reduced compliance and accountability
  • Tampering could delay detection of other malicious activity
  • Attackers may delete selected audit-log entries
  • Attackers could erase broad or complete audit history
  • Security investigations may lose important evidence
  • Organizations may experience reduced compliance and accountability
  • Tampering could delay detection of other malicious activity

General mitigation guidance

Mitigation generally focuses on enforcing authorization at the server-side

operation boundary rather than relying on client-side controls or endpoint

visibility.

Common defensive patterns include:

  • Require an explicit, narrowly scoped permission for audit-log deletion
  • Apply role and ownership checks before processing any destructive request
  • Treat global-clear operations as separate, highly privileged capabilities
  • Use deny-by-default authorization for administrative handlers
  • Preserve audit records through append-only or independently protected storage
  • Run application and database identities with only the privileges required
  • Require additional approval or separation of duties for bulk deletion

Mitigation generally focuses on enforcing authorization at the server-side

operation boundary rather than relying on client-side controls or endpoint

visibility.

Common defensive patterns include:

  • Require an explicit, narrowly scoped permission for audit-log deletion
  • Apply role and ownership checks before processing any destructive request
  • Treat global-clear operations as separate, highly privileged capabilities
  • Use deny-by-default authorization for administrative handlers
  • Preserve audit records through append-only or independently protected storage
  • Run application and database identities with only the privileges required
  • Require additional approval or separation of duties for bulk deletion

How teams detect issues like this

Organizations can identify similar issues through:

  • Static analysis for controller methods that perform deletes without authorization annotations or checks
  • Code review of batch, bulk, purge, and clear operations
  • Tests verifying that ordinary authenticated roles receive authorization failures
  • API policy enforcement requiring explicit permissions for destructive endpoints
  • Monitoring for unusual volumes of audit-log deletion requests
  • Database and application alerts for unexpected truncation or mass-delete activity

Automated security review tools may help identify handlers whose authorization

requirements do not match the sensitivity of their operations.

Organizations can identify similar issues through:

  • Static analysis for controller methods that perform deletes without authorization annotations or checks
  • Code review of batch, bulk, purge, and clear operations
  • Tests verifying that ordinary authenticated roles receive authorization failures
  • API policy enforcement requiring explicit permissions for destructive endpoints
  • Monitoring for unusual volumes of audit-log deletion requests
  • Database and application alerts for unexpected truncation or mass-delete activity

Automated security review tools may help identify handlers whose authorization

requirements do not match the sensitivity of their operations.

Sources

SourceLink
github.comgithub.com/AnkesKasty/cve-request-poc/blob/a7b6d1423555812d8efa26c91c5d0683164b31e5/JeecgBoot/poc_log_delete_batch.py
github.comgithub.com/jeecgboot/JeecgBoot/blob/e3b9dc0aefe1943d9772b026f64ed671a7c82802/jeecg-boot/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/system/controller/SysLogController.java#L125-L140
vulncheck.comvulncheck.com/advisories/jeecgboot-through-3.9.5-missing-authorization-via-sys-log-deletebatch

Frequently asked

questions

It may be exploitable through the application interface by an authenticated

user when the affected handler is accessible and does not enforce a suitable

authorization check.

Not necessarily. The described issue concerns low-privileged authenticated

users, although deployment-specific roles and endpoint restrictions can affect

exploitability.

Enforce server-side, deny-by-default authorization immediately before every

audit-log deletion operation, with separate controls for bulk or global

deletion.

Combine centralized authorization policies, negative tests for each user role,

least-privilege database access, protected audit storage, and monitoring for

unusual destructive activity.

It may be exploitable through the application interface by an authenticated

user when the affected handler is accessible and does not enforce a suitable

authorization check.

Not necessarily. The described issue concerns low-privileged authenticated

users, although deployment-specific roles and endpoint restrictions can affect

exploitability.

Enforce server-side, deny-by-default authorization immediately before every

audit-log deletion operation, with separate controls for bulk or global

deletion.

Combine centralized authorization policies, negative tests for each user role,

least-privilege database access, protected audit storage, and monitoring for

unusual destructive activity.

Find out what's already
exploitable in your codebase.