CVE-2026-81031: IDURAR ERP CRM through 4.1.1 Account Takeover via Unverified Identifier on Password Update
IDURAR ERP CRM changes the password of whichever account a request names rather than the account making the request. The update handler in backend/src/controllers/middlewaresControllers/createUserController/updatePassword.js resolves the authenticated user from the request that the token middleware populated, then issues its update against a filter built from the identifier in the URL path, and never compares the two. The route is mounted behind the administrator token check only, so any valid administrator session is sufficient, and the sole ownership-like guard in the handler rejects a single hardcoded demo address. A caller can therefore set an arbitrary password on any other administrator account and sign in as it. The read handler in the same controller directory accepts an identifier the same way, which supplies the identifiers needed to pick a target.
Affected Software
Event History
Frequently Asked Questions
Who can exploit this issue?
An attacker needs a valid administrator session. The vulnerable route is protected by an administrator token check, but it does not verify that the account named in the URL belongs to the authenticated administrator.
What access can an attacker gain?
A valid administrator can set the password for another administrator account, except for the single hardcoded demo address rejected by the handler. They can then authenticate as the targeted administrator.
How can an attacker identify a target account?
The read handler in the same controller directory accepts an identifier in the same manner. This can provide the identifiers needed to select an administrator account for the password update.
Which versions are affected?
IDURAR ERP CRM through version 4.1.1 is affected.