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 didnt 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.
A product defines a set of insecure permissions that are inherited by objects that are created by the program.
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Pulp | Pulpproject | - (including) | - (including) |
| Red Hat Ansible Automation Platform 2.4 for RHEL 8 | RedHat | automation-controller-0:4.5.11-1.el8ap | * |
| Red Hat Ansible Automation Platform 2.4 for RHEL 8 | RedHat | python3x-django-0:4.2.16-1.el8ap | * |
| Red Hat Ansible Automation Platform 2.4 for RHEL 8 | RedHat | python3x-pulpcore-0:3.28.32-1.el8ap | * |
| Red Hat Ansible Automation Platform 2.4 for RHEL 8 | RedHat | python3x-urllib3-0:1.26.20-1.el8ap | * |
| Red Hat Ansible Automation Platform 2.4 for RHEL 8 | RedHat | receptor-0:1.4.8-1.1.el8ap | * |
| Red Hat Ansible Automation Platform 2.4 for RHEL 9 | RedHat | automation-controller-0:4.5.11-1.el9ap | * |
| Red Hat Ansible Automation Platform 2.4 for RHEL 9 | RedHat | python-django-0:4.2.16-1.el9ap | * |
| Red Hat Ansible Automation Platform 2.4 for RHEL 9 | RedHat | python-pulpcore-0:3.28.32-1.el9ap | * |
| Red Hat Ansible Automation Platform 2.4 for RHEL 9 | RedHat | python-urllib3-0:1.26.20-1.el9ap | * |
| Red Hat Ansible Automation Platform 2.4 for RHEL 9 | RedHat | receptor-0:1.4.8-1.1.el9ap | * |