Skip to content

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

Package

pip pulpcore (pip)

Affected versions

<= 3.56.0

Patched versions

None

Description

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

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

Severity

Moderate

EPSS score

0.070%
(32nd percentile)

Weaknesses

CVE ID

CVE-2024-7143

GHSA ID

GHSA-9m5j-4xx9-44j9

Source code

Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.