Semaphore UI is a web interface for managing DevOps tools. Prior to 2.18.19 and from 2.19.0-alpha3 until 2.19.5-beta5, ProjectMiddleware and GetProjectOrGlobalRoleBySlug allow a project manager to use POST /api/project/{id}/roles to create a custom manager role with permission bitmask 15, overriding the built-in manager permissions and granting CanUpdateProject and CanManageProjectUsers owner capabilities. This issue is fixed in versions 2.18.19 and 2.19.5-beta5.
https://github.com/semaphoreui/semaphore/security/advisories/GHSA-cxvf-gvfq-36w2
https://github.com/semaphoreui/semaphore/releases/tag/v2.19.5-beta5
https://github.com/semaphoreui/semaphore/releases/tag/v2.18.19
https://github.com/semaphoreui/semaphore/commit/bb2a4e1f08c8023e618f8dd6eaca73554f2c33bb
https://github.com/semaphoreui/semaphore/commit/1c4bb65df114962134f8829d4a03667106a01a68