Skip to content

Harbor fails to validate the user permissions when updating a robot account

Moderate severity GitHub Reviewed Published Aug 29, 2022 in goharbor/harbor • Updated Apr 3, 2023

Package

gomod github.com/goharbor/harbor (Go)

Affected versions

>= 1.0.0, <= 1.10.12
>= 2.0.0, <= 2.4.2
>= 2.5.0, <= 2.5.1

Patched versions

1.10.13
2.4.3
2.5.2

Description

Impact

Harbor fails to validate the user permissions when updating a robot account that
belongs to a project that the authenticated user doesn’t have access to. API call:

PUT /robots/{robot_id}

By sending a request that attempts to update a robot account, and specifying a robot
account id and robot account name that belongs to a different project that the user
doesn’t have access to, it was possible to revoke the robot account permissions.

Patches

This and similar issues are fixed in Harbor v2.5.2 and later. Please upgrade as soon as possible.

Workarounds

There are no workarounds available.

For more information

If you have any questions or comments about this advisory:

Credits

Thanks to Gal Goldstein and Daniel Abeles from Oxeye Security for reporting this issue.

References

@qnetter qnetter published to goharbor/harbor Aug 29, 2022
Published to the GitHub Advisory Database Sep 16, 2022
Reviewed Sep 16, 2022
Last updated Apr 3, 2023

Severity

Moderate
6.4
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
Low
User interaction
None
Scope
Changed
Confidentiality
None
Integrity
Low
Availability
Low
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:L

Weaknesses

No CWEs

CVE ID

CVE-2022-31667

GHSA ID

GHSA-xx9w-464f-7h6f

Source code

Credits

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