CVE Vulnerabilities

CVE-2024-7143

Insecure Inherited Permissions

Published: Aug 07, 2024 | Modified: Nov 21, 2024
CVSS 3.x
8.3
HIGH
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
CVSS 2.x
RedHat/V2
RedHat/V3
6.7 MODERATE
CVSS:3.0/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:L
Ubuntu
root.io logo minimus.io logo echo.ai logo

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.

Weakness

A product defines a set of insecure permissions that are inherited by objects that are created by the program.

Affected Software

NameVendorStart VersionEnd Version
PulpPulpproject- (including)- (including)
Red Hat Ansible Automation Platform 2.4 for RHEL 8RedHatautomation-controller-0:4.5.11-1.el8ap*
Red Hat Ansible Automation Platform 2.4 for RHEL 8RedHatpython3x-django-0:4.2.16-1.el8ap*
Red Hat Ansible Automation Platform 2.4 for RHEL 8RedHatpython3x-pulpcore-0:3.28.32-1.el8ap*
Red Hat Ansible Automation Platform 2.4 for RHEL 8RedHatpython3x-urllib3-0:1.26.20-1.el8ap*
Red Hat Ansible Automation Platform 2.4 for RHEL 8RedHatreceptor-0:1.4.8-1.1.el8ap*
Red Hat Ansible Automation Platform 2.4 for RHEL 9RedHatautomation-controller-0:4.5.11-1.el9ap*
Red Hat Ansible Automation Platform 2.4 for RHEL 9RedHatpython-django-0:4.2.16-1.el9ap*
Red Hat Ansible Automation Platform 2.4 for RHEL 9RedHatpython-pulpcore-0:3.28.32-1.el9ap*
Red Hat Ansible Automation Platform 2.4 for RHEL 9RedHatpython-urllib3-0:1.26.20-1.el9ap*
Red Hat Ansible Automation Platform 2.4 for RHEL 9RedHatreceptor-0:1.4.8-1.1.el9ap*

Potential Mitigations

  • Compartmentalize the system to have “safe” areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area.
  • Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.

References