Pulp incorrectly assigns RBAC permissions in tasks that create objects
Moderate severity
GitHub Reviewed
Published
Aug 7, 2024
to the GitHub Advisory Database
•
Updated Sep 18, 2024
Description
Published by the National Vulnerability Database
Aug 7, 2024
Published to the GitHub Advisory Database
Aug 7, 2024
Reviewed
Aug 7, 2024
Last updated
Sep 18, 2024
A flaw was found in the Pulp package. When a role-based access control (RBAC) object in Pulp is set to assign permissions on its creation, it uses the
AutoAddObjPermsMixin
(typically the add_roles_for_object_creator method). This method finds the object creator by checking the current authenticated user. For objects that are created within a task, this current user is set by the first user with any permissions on the task object. This means the oldest user with model/domain-level task permissions will always be set as the current user of a task, even if they didn't dispatch the task. Therefore, all objects created in tasks will have their permissions assigned to this oldest user, and the creating user will receive nothing.References