CVE-2026-41160: EspoCRM: Broken Access Control / IDOR in Note Pinning API allows unauthorized modification of notes
EspoCRM is an open source customer relationship management application. Prior to 9.3.5, a business logic flaw (Broken Access Control) in EspoCRM 9.3.3 allows low-privileged users to pin arbitrary notes without having the required edit permissions for the parent object. Due to a "write first, authorize later" execution flaw in the backend API, even though the server correctly returns a 403 Forbidden error, the targeted note's pinned status is already persistently modified in the database. The root cause lies in the server-side processing of the POST /api/v1/Note/{id}/pin endpoint. In application/Espo/Tools/Stream/Api/PostNotePin.php, the process() method first calls getNote($id) before calling checkParent($note). This vulnerability is fixed in 9.3.5.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
EspoCRMto a version that resolves this vulnerability.Fixed in 9.3.5
Event History
Frequently Asked Questions
What is the severity of CVE-2026-41160?
CVE-2026-41160 has a medium severity rating of 4.3.
What kind of vulnerability is identified by CVE-2026-41160?
CVE-2026-41160 is categorized as a Broken Access Control vulnerability affecting the Note Pinning API.
How do I fix CVE-2026-41160?
To fix CVE-2026-41160, update EspoCRM to version 9.3.5 or later.
What impact does CVE-2026-41160 have on users?
CVE-2026-41160 allows low-privileged users to pin arbitrary notes without the necessary permissions, leading to unauthorized modifications.
Which versions of EspoCRM are affected by CVE-2026-41160?
CVE-2026-41160 affects EspoCRM versions prior to 9.3.5.