CVE-2026-16772
Published:August 14, 2026
Updated:September 01, 2026
In Akaunting versions <= 3.1.21, low‑privileged authenticated users can modify their own account to assign themselves the admin role ID, granting full administrator privileges. This vulnerability is caused by a flaw in the "UpdateUser" job, which processes user-supplied role assignments via an unconditional "roles()->sync()" call without verifying whether the caller is authorized to manage roles. Users only require the default "update-auth-profile" permission to access the self-update path and assign themselves as admins. The API endpoints are properly permission‑gated and are not affected by this issue.
Affected Packages
https://github.com/akaunting/akaunting.git (GITHUB):
Affected version(s) >=1.0.0 <3.2.0Fix Suggestion:
Update to version 3.2.0Related Resources (1)
Do you need more information?
Contact UsCVSS v4
Base Score:
8.6
Attack Vector
NETWORK
Attack Complexity
LOW
Attack Requirements
NONE
Privileges Required
LOW
User Interaction
NONE
Vulnerable System Confidentiality
HIGH
Vulnerable System Integrity
HIGH
Vulnerable System Availability
NONE
Subsequent System Confidentiality
NONE
Subsequent System Integrity
NONE
Subsequent System Availability
NONE
CVSS v3
Base Score:
8.1
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
NONE
EPSS
Base Score:
0.20