{"id":"CVE-2026-100629","title":"Capgo (capgo.app backend) before 12.127.5 contains an authorization flaw in the PATCH /private/role_bindings/:binding_id endpoint","summary":"Capgo (capgo.app backend) before 12.127.5 contains an authorization flaw in the PATCH /private/role_bindings/:binding_id endpoint. The handler verifies that the newly assigned role's priority rank does not exceed the caller's own rank, b…","severity":"medium","cvss":5.5,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:N/I:H/A:L","cwe":["CWE-863","CWE-267"],"vendor":"Cap-go","product":"capgo.app","affected":["capgo.app < 12.127.5"],"published":"2026-09-26","updated":"2026-10-05","sourceUpdated":"2026-10-05T16:17:03.420","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-100629","references":[{"url":"https://github.com/Cap-go/capgo.app/security/advisories/GHSA-54mj-q77q-xwx5","label":"disclosure@vulncheck.com"},{"url":"https://www.vulncheck.com/advisories/capgo-backend-before-12.127.5-privilege-escalation-via-role-bindings-patch","label":"disclosure@vulncheck.com"},{"url":"https://github.com/Cap-go/capgo.app/security/advisories/GHSA-54mj-q77q-xwx5","label":"134c704f-9b21-4f2e-91b3-4a467353bcc0"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-100629.json"},{"url":"https://access.redhat.com/security/cve/CVE-2026-100629"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2541809"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-100629"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-100629"}],"tags":["nvd","cve.org","exploit-available","csaf","vex","red-hat"],"exploitAvailable":true,"ssvc":{"exploitation":"poc","automatable":"no","technicalImpact":"partial","timestamp":"2026-10-05T16:07:56.183331Z"},"epss":0.00334,"epssPercentile":0.26546,"ingestedAt":"2026-09-26T13:33:20.928Z","slug":"CVE-2026-100629","body":"## Overview\n\nCapgo (capgo.app backend) before 12.127.5 contains an authorization flaw in the PATCH /private/role_bindings/:binding_id endpoint. The handler verifies that the newly assigned role's priority rank does not exceed the caller's own rank, but — unlike the DELETE handler — it never checks the rank of the role currently bound to the target binding. An authenticated user holding the org_admin role (rank 90) can therefore change an org_super_admin binding (rank 95) to a lower-privileged role such as org_member (rank 75). Because the prevent_last_super_admin_binding_delete database trigger fires only BEFORE DELETE and not on UPDATE, an org_admin can demote every org_super_admin, leaving the organization with no super administrator. The issue is fixed in 12.127.5.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.\n\n## Vendor advisories\n\n- **Red Hat VEX** · Moderate · affected: Multicluster Engine for Kubernetes, Red Hat Advanced Cluster Management for Kubernetes 2, Red Hat Developer Hub, Self-service automation portal 2 · no fix planned: Multicluster Engine for Kubernetes, Red Hat Advanced Cluster Management for Kubernetes 2, Red Hat Developer Hub, Self-service automation portal 2 · updated 2026-09-26 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-100629.json)","depth":"twilight","depthScore":42,"depthScoreParts":{"impact":30.3,"likelihood":0.1,"exploitation":12,"ransomware":0},"changes":[{"seq":215892,"id":"CVE-2026-100629","ts":1791217622558,"field":"exploit_available","old":"false","new":"true"}]}