{"id":"CVE-2026-82411","revision":"9675b4ade6664023b92f15ad9e21388e","records":[{"revision":"9675b4ade6664023b92f15ad9e21388e","observedAt":"2026-10-29T19:28:49.708+00:00","statement":{"source":"cve-program","id":"CVE-2026-82411","aliases":[],"title":"Objects API: Cross-object-type authorization bypass on the object history-detail endpoint","description":"Open Object provides an API and admin interface to manage objects and object types. From 2.4.3 until 2.5.1, 3.6.2, 4.0.2, and 4.1.1, a token scoped to read one ObjectType can read the full versioned record of an object of any other ObjectType via the history-detail endpoint `GET /api/v2/objects/{uuid}/{index}`. The `history_detail` action in `src/objects/api/v2/views.py` calls `self.get_queryset()` and `get_object_or_404` directly instead of `self.get_object()`, so `check_object_permissions` and the per-object check in `ObjectTypeBasedPermission.has_object_permission` are not invoked. The queryset's `filter_for_token` applies only to the list and search actions, while `ObjectTypeBasedPermission.has_permission` allows non-create actions, leaving neither check to constrain history-detail records to the token's permitted ObjectType. The normal retrieve endpoint returns 403 for the same unauthorized object, and the sibling history action enforces the grant. Any valid non-superuser API token with a read grant on at least one ObjectType can therefore disclose another ObjectType's complete versioned object `data`, which can include citizen or case records and sensitive identifiers in government deployments. This issue is fixed in versions 2.5.1, 3.6.2, 4.0.2, and 4.1.1.","state":0,"publishedAt":"2026-10-28T22:40:13.728+00:00","modifiedAt":"2026-10-29T17:20:57.039+00:00","affected":[{"ecosystem":"Vendor product","name":"open-object","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"maykinmedia\",\n                    \"product\": \"open-object\",\n                    \"versions\": [\n                        {\n                            \"version\": \">= 2.4.3, < 2.5.1\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \">= 3.0.0, < 3.6.2\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \">= 4.0.0-rc.1, < 4.0.2\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \">= 4.1.0, < 4.1.1\",\n                            \"status\": \"affected\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","score":6.5,"severity":"MEDIUM"}],"references":["https://github.com/maykinmedia/open-object/security/advisories/GHSA-55w6-rqp5-j5wx","https://github.com/maykinmedia/open-object/commit/11c5b85ea5d1d80f940883f01b8b8ea80ccdd47c","https://github.com/maykinmedia/open-object/commit/27e806eff04c52ebe1e78126c288b63fc0308b52","https://github.com/maykinmedia/open-object/commit/6154d9c2ed8c162b61f2d42db2de4eda5081347f","https://github.com/maykinmedia/open-object/commit/ce6b1820619c843748bc5231597aa7fc060d95fe","https://github.com/maykinmedia/open-object/tree/2.5.1","https://github.com/maykinmedia/open-object/tree/3.6.2","https://github.com/maykinmedia/open-object/tree/4.0.2","https://github.com/maykinmedia/open-object/tree/4.1.1"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-82411","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-82411","identifiers":["CVE-2026-82411"]},"retained":false,"historicalAffected":[]}],"coverage":[]}